惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
Hugging Face - Blog
Hugging Face - Blog
美团技术团队
博客园 - 三生石上(FineUI控件)
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
A
About on SuperTechFans
The GitHub Blog
The GitHub Blog
U
Unit 42
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
IT之家
IT之家
MyScale Blog
MyScale Blog
V
Visual Studio Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
I
InfoQ
博客园 - 司徒正美

博客园 - 木子清

物联网浏览器(IoTBrowser)-驿站多系统查询 农产品实名收购系统功能说明之电子秤已支持类型和厂家型号 农产品实名收购系统功能说明之供应商RFID卡设计及用途 【农业数字化升级】农产品实名收购系统,让安全与效率同行 经历2年调整,重新出发! 物联网浏览器(IoTBrowser)-人脸快速搜索 探讨使用智能AI在农业养殖中的风险预警与应用 让摄像头带上智慧“智驭视界·AIEye” 物联网浏览器(IoTBrowser)-基于计算机视觉开发的应用“智慧眼AIEye” 码农的转型之路-全力以赴升级物联网浏览器(IoTBrowser) IoTBrowser V2.0:引领物联网时代的全新浏览器 车牌识别控制台 可快速整合二次开发 物联网浏览器(IoTBrowser)-使用深度学习开发防浸水远程报警 物联网浏览器(IoTBrowser)-整合机器学习yolo框架实现车牌识别 物联网浏览器(IoTBrowser)-Java快速对接施耐德网络IO网关 物联网浏览器(IoTBrowser)-MQTT协议集成和测试 物联网浏览器(IoTBrowser)-Modbus协议集成和测试 物联网浏览器(IoTBrowser)-电子秤模块及二次驱动开发 物联网浏览器(IoTBrowser)-顶尖OS2电子秤协议实现 物联网浏览器(IoTBrowser)-Web串口自定义开发
物联网浏览器(IoTBrowser)-js开发人脸识别
木子清 · 2026-03-25 · via 博客园 - 木子清

最近在研究将人脸识别应用到农产品实名收购系统,以防止他人仿冒申领合格证。经过选型找了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 不仅支持核心的人脸识别任务,还提供了一系列开箱即用的高级特性:

  • 实时人脸追踪与识别:利用 MTCNN 面部检测器,实现高效的实时 JavaScript 人脸追踪。

  • 摄像头实时检测:支持从实时摄像头流中检测人脸并进行情绪识别,可应用于视频场景。

  • 流行框架集成:提供了与 Vue.js 和 Electron 等框架结合使用的示例,方便开发者快速上手。

  • 趣味应用案例:例如“给人戴口罩”——Gant Laborde 谈与 Jason 一起学习,展示了库的灵活性和趣味性。

此外,官方还提供了详细的视频教程,帮助开发者从零开始轻松掌握人脸识别技术。

    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容器。

image

gitee开源地址:人脸识别js库