vue+face-api.js實現前端人臉識別功能

近期做了一個前端vue實現人臉識別的功能,主要功能邏輯包含:人臉識別,人臉驗證,喚起攝像頭視頻流之后從三個事件(用戶點頭、搖頭、眨眼睛)中隨機選中兩個事件,待兩個事件通過判斷后人臉靜止不動3秒鐘后截取視頻流生成圖片,上傳到阿里或者騰訊oss,通過oss返回的url或者自己拼接的url去跟調取后臺接口實現人臉識別/人臉識別二次校驗


基于face-api.js要實現人臉識別功能,首先要將自己需要的模型文件下載保存在靜態目錄下,

可以通過cdn的方式在index.html中引入face-api.js

上面頁面是自己或者UI給出的前置頁面,點擊開始驗證進入人臉識別頁面
?下面代碼為人臉識別頁面靜態內容

頁面顯示效果為下圖:


業務邏輯代碼
首先需要通過navigator.mediaDevices.getUserMedia獲取視頻流
navigator.mediaDevices.getUserMedia涉及到兼容性問題,可以自行參考資料去解決

下面為隨機三個事件中選中兩個事件的方法也可以忽略不計,可根據自身需求安排

人臉識別設置的是每一秒鐘執行一次檢測

下面是主要的實現人臉識別的初始化攝像頭和調用face-api.js代碼部分:

下面方法包含了點頭,搖頭,眨眼睛三個事件的判斷邏輯代碼可能存在精度上的問題可以根據自己的實際需求進行調整,api中都有詳細的計算公式

以下為截取到的視頻流的當前幀的圖片上傳到oss部分代碼

不管是上傳到騰訊云還是阿里云都是大同小異,一般都是通過調用后臺封裝的接口根據臨時的SecretId,SecretKey,SecurityToken去獲取oss上傳之后的圖片的url地址

再拿到imageUrl地址之后 就可以根據自身需求去做后續處理了,比如調后臺接口進行人臉識別或者人臉二次校驗等功能


還有就是在頁面銷毀的時候不要忘了清掉 設置的定時器,以及停止掉video的視頻流

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/166977.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/166977.shtml
英文地址,請注明出處:http://en.pswp.cn/news/166977.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于Java+Vue+uniapp微信小程序微信閱讀網站平臺設計和實現

博主介紹:?全網粉絲30W,csdn特邀作者、博客專家、CSDN新星計劃導師、Java領域優質創作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺優質作者、專注于Java技術領域和畢業項目實戰? 🍅文末獲取源碼聯系🍅 👇🏻 精彩專…

使用端口掃描工具解決開放端口威脅并增強安全性

從暴露網絡漏洞到成為入侵者的通道,開放端口可能會帶來多種風險向量,威脅到網絡的機密性、完整性和可用性。因此,最佳做法是關閉打開的端口,為了應對開放端口帶來的風險,網絡管理員依靠端口掃描工具來識別、檢查、分析…

ubuntu下配置qtcreator交叉編譯環境

文章目錄 安裝交叉編譯工具安裝qt creator開發環境配置交叉編譯示例demo參考 安裝交叉編譯工具 安裝qt creator開發環境 1 官網 2 填寫信息 3 下載 默認沒有出現Qt5.15版本 WISONIC\80081001ub16-1001:~$ /opt/Qt/Tools/QtCreator/bin/qtcreator /opt/Qt/Tools/QtCreat…

【PDF.js】2023 最新 PDF.js 在 Vue3 中的使用

因為自己寫業務要定制各種 pdf 預覽情況(可能),所以采用了 pdf.js 而不是各種第三方封裝庫,主要還是為了更好的自由度。 一、PDF.js 介紹 官方地址 中文文檔 PDF.js 是一個使用 HTML5 構建的便攜式文檔格式查看器。 pdf.js 是社區…

flutter與原生Android通信方式之MethodChannel

閑來無事,flutter好久沒看了,上次折騰flutter與Android通信沒折騰完,有些事情耽擱了,這次繼續 演示效果: flutter與Android原生通信 flutter端 import package:flutter/cupertino.dart; import package:flutter/mater…

ThreeJs實現簡單的動畫

上一節實現可用鼠標控制相機的方式實現動態效果,但很多時候是需要場景自己產恒動態效果,而不是通過鼠標拖動,此時引入一個requestAnimationFrame方法,它實際上是通過定時任務的方式,每隔一點時間改變場景中內容后重新渲…

筆記:如何搭建一套前端監控系統?(持續更新中)

數據敏感處理 數據加密,對涉及用戶隱私的數據做到加密防護 獨立部署,不和其它應用共享監控系統 不采集具體數據,只采集用戶操作數據 錯誤采集 Runtime Error: JS運行錯誤,可通過error監聽器捕獲 load Error: 資源加載錯誤&#x…

Ant Design Vue 樹形表格計算盈收金額

樹形表格計算 一、盈收金額計算1、根據需要輸入的子級位置,修改數據2、獲取兄弟節點數據,并計算兄弟節點的金額合計3、金額合計,遍歷給所有的父級 一、盈收金額計算 1、根據需要輸入的子級位置,修改數據 2、獲取兄弟節點數據&am…

銷售管理系統的實用性怎么樣?

銷售管理系統好用嗎?好用,銷售管理系統可以管理銷售流程、自動化大量重復性工作,讓銷售人員從瑣碎的任務中掙脫出來,投入到客戶跟進和維護客戶關系之中。那么,CRM系統的好用體現在哪些方面? 1.加速銷售流程…

react中的state

沒想到hooks中也有state這一說法 看下面的兩個案例 1、無state變化不會執行父子函數 2、有state更改執行父子函數

CDN加速在網站搭建中的必要性與優勢分析

隨著互聯網的快速發展,網站已經成為企業展示和用戶交互的主要平臺。在構建一個高性能、用戶體驗良好的網站時,CDN(內容分發網絡)的應用變得愈發重要。本文將從網站搭建的角度出發,深入分析CDN加速的必要性以及在提升網…

深度學習之六(自編碼器--Autoencoder)

概念 自編碼器(Autoencoder)是一種神經網絡架構,用于無監督學習和數據的降維表示。它由兩部分組成:編碼器(Encoder)和解碼器(Decoder)。 結構: 編碼器(Encoder): 接收輸入數據并將其壓縮為潛在表示(latent representation),通常比輸入數據的維度要低。編碼器的…

最詳細的軟件測試面試題整理與分析

前言 時光荏苒,一轉眼到了2023年末尾,2024年也快要來了,人員就業市場以往的寒冬也貌似有了轉暖的跡象,身邊大批的就業人員也開始了緊張的備戰之中。 近幾周也和多家合作公司的HR進行了溝通,發現雖然崗位就業情況較去年…

vue3中引入svg矢量圖

vue3中引入svg矢量圖 1、前言2、安裝SVG依賴插件3、在vite.config.ts 中配置插件4、main.ts入口文件導入5、使用svg5.1 在src/assets/icons文件夾下引入svg矢量圖5.2 在src/components目錄下創建一個SvgIcon組件5.3 封裝成全局組件,在src文件夾下創建plugin/index.t…

SQLserver 數據庫導入MySQL的方法

原文: https://blog.csdn.net/lht631935612/article/details/132086172#httpspanbaiducoms1TlLiRI9stxqTcwBJ5p6UAE993BEE68EA5EFBC9Ahttpspanbaiducoms1TlLiRI9stxqTcwBJ5p6UA2020E68F90E58F96E7A081EFBC9Av6d5_font_colordd0000v6d5font_8 下載鏈接:…

使用openfeign調用下載流的文件不完整的替代方案

OpenFeign是一種聲明式的Web服務客戶端,它使得編寫HTTP客戶端變得更加簡單和直觀。它使用了注解方式來描述HTTP API,使得開發者可以使用Java接口來調用遠程HTTP服務。 OpenFeign的核心特點包括: 聲明式API: 您可以使用注解聲明要調用的遠程AP…

一鍵創新 | 拓世法寶AI智能直播一體機激發房產自媒體創造力

在數字化時代,房產銷售已然不再是傳統的模式。隨著社交媒體和自媒體的興起,短視頻直播成為房產自媒體營銷的新風口。然而,行業也面臨著諸多挑戰,如何更好地利用新媒體拓展市場,提升自媒體效果成為擺在業內人士面前的難…

JMeter測試報錯422 Unprocessable Entity

添加HTTP信息頭: ? HTTP請求-》添加-〉配置元件-》HTTP信息頭管理器 ? 如果需要送json,需要添加Content-Type:application/json,否則會報【422 Unprocessable Entity】

好用的CRM系統到底有多重要?怎么選?

我們都知道,CRM軟件可以讓企業效率加倍。但如果選錯了CRM,企業損失點錢是小,客戶轉化率下降才是大。下面我們就來說說,市面上有哪些好用的CRM?以及好用的CRM軟件的重要性。 好用的CRM軟件的重要性: 客戶管…

Qt 軟件調試(一) Log日志調試

終于這段時間閑下來了,可以系統的編寫Qt軟件調試的整個系列。前面零零星星的也有部分輸出,但終究沒有形成體系。借此機會,做一下系統的總結。慎獨、精進~ 日志是有效幫助我們快速定位,找到程序異常點的實用方法。但是好的日志才能…