物聯網瀏覽器(IoTBrowser)-js開發人臉識別
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
最近在研究將人臉識別應用到農產品實名收購系統,以防止他人仿冒申領合格證。經過選型找了2種方案,第一種基于.net原生開發,第二種基于js開發,目前兩種都可以集成到物聯網瀏覽器中。 第一種使用.net開發插件 .net下使用ViewFaceCore包,ViewFaceCore 是一個開源的、人臉識別 SDK,支持 .NET/.NET Core/.NET Framework 平臺。它提供了高效且準確的人臉檢測和特征提取功能,可以用于各種與人臉識別相關的應用場景中。 后端代碼: FaceDetector faceDetector = new FaceDetector();
var faceImage0 = new Bitmap(dirPath).ToFaceImage();
var infos0 = faceDetector.Detect(faceImage0);
FaceLandmarker faceMark = new FaceLandmarker();
var points0 = faceMark.Mark(faceImage0, infos0[0]);
FaceRecognizer faceRecognizer = new FaceRecognizer();
float[] fromData = faceRecognizer.Extract(faceImage0, points0);
float[] faceData = model.FaceVector;
return faceRecognizer.Compare(fromData, faceData);前端代碼: async getSingleFace(s) {
var data = this.faceImgPath;
ar = await dds.dynamic.api.exectuce({ method: "post", pluginName: "Face", actionName: "GetSingleFace", actionData: (data) })
console.log('人臉信息', ar)
this.faceKeys = ar.Data;
},
async compareFace(cb) {
var data = { fileName: this.faceImgPath, targetKeys: this.faceKeys };
ar = await dds.dynamic.api.exectuce({ method: "post", pluginName: "Face", actionName: "Compare", actionData: JSON.stringify(data) })
console.log('人臉比較', ar)
this.resultInfo = "相似度:" + ar.Data + ""
if (ar.Data < 0.8) {
cb && cb()
} else {
this.startVideo = false;
}
},
物聯網瀏覽器(IoTBrowser)-人臉快速搜索就是基于這個開發 第二種使用基于face-api.js face-api.js 是一個強大的 JavaScript 人臉識別庫,它基于 TensorFlow.js 核心(tensorflow/tfjs-core)實現,能夠在瀏覽器和 Node.js 環境中無縫運行。該 API 為開發者提供了豐富的人臉檢測與識別功能,使得在 Web 應用中集成高級計算機視覺能力變得前所未有的簡單。 主要功能與亮點face-api.js 不僅支持核心的人臉識別任務,還提供了一系列開箱即用的高級特性:
此外,官方還提供了詳細的視頻教程,幫助開發者從零開始輕松掌握人臉識別技術。 async function updateResults() {
if (!isFaceDetectionModelLoaded()) {
return
}
const inputImgEl = $('#inputImg').get(0)
const options = getFaceDetectorOptions()
const results = await faceapi.detectAllFaces(inputImgEl, options)
const canvas = $('#overlay').get(0)
faceapi.matchDimensions(canvas, inputImgEl)
faceapi.draw.drawDetections(canvas, faceapi.resizeResults(results, inputImgEl))
}
async function run() {
// 加載人臉檢測模型
await changeFaceDetector(SSD_MOBILENETV1)
// 開始處理圖片
updateResults()
}
face-api-static開源項目face-api.js需要運行在nodejs服務端,不方便移植,為了本地在物聯網瀏覽器中使用,改造了face-api-static開源項目。支持部署在物聯網瀏覽器環境,同時也支持部署在tomcat、nginx、iis、webapi等web容器。
gitee開源地址:人臉識別js庫 轉自https://www.cnblogs.com/yizhuqing/p/19769770 ? 該文章在 2026/4/3 11:44:22 編輯過 |
關鍵字查詢
相關文章
正在查詢... |