0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

谷歌升级浏览器中的虹膜追踪模型

Tensorflowers 来源:TensorFlow 作者:Ann Yuan 和 Andrey V 2020-11-18 09:50 次阅读

虹膜追踪(Iris tracking) 可广泛应用于多个领域,如辅助技术中的免触摸界面,以及了解除点击和手势以外的用户行为。虹膜追踪同时也是一项具有挑战性的计算机视觉问题。眼睛在环境光照条件不同时会经常变化,且眼睛经常会被遮挡住,而当观察对象转动头部或做不同的表情时,其眼睛形状也可能随之变化。现有的解决方法非常依赖专用硬件,通常需要使用昂贵的头戴式设备或远程的眼动追踪器系统。这些方法并不适合计算资源有限的移动设备。

实现眼球重新着色的示例

今年 3 月,我们宣布推出了一个可在浏览器中检测面部特征点的新软件包。今天,我们很高兴可以通过 TensorFlow.js 面部特征点检测模型将虹膜追踪添加到此软件包中。而这要归功于 MediaPipe Iris 模型。我们已弃用原来的 Facemesh 模型,因此我们之后将为面部特征点检测模型提供更新。

TensorFlow.js 面部特征点检测模型
https://www.npmjs.com/package/@tensorflow-models/face-landmarks-detection

MediaPipe Iris 模型
https://google.github.io/mediapipe/solutions/iris

原来的 Facemesh 模型
https://www.npmjs.com/package/@tensorflow-models/facemesh

请注意,虹膜追踪不会推断人们正在注视的位置,也不会提供任何形式的身份识别。在我们模型的文档和随附的模型卡中,我们详述了模型的预期用途、限制和公平性属性(与 Google 的 AI 原则保持一致)。

Google 的 AI 原则
https://www.blog.google/technology/ai/ai-principles/

MediaPipe Iris 模型能够使用单个 RGB 摄像头实时追踪涉及虹膜和瞳孔的特征点,而无需借助专用硬件。模型还能返回眼睑和眉毛区域的特征点,实现对眨眼等轻微眼球运动的检测(立即在浏览器中尝鲜)。

尝鲜

https://storage.googleapis.com/tfjs-models/demos/face-landmarks-detection/index.html

faceLandmarksDetection简介

熟悉我们现有 Facemesh 模型的用户,只需更改少量的代码,就可以升级到新的 faceLandmarksDetection 模型,详细的操作说明将在下方列出。faceLandmarksDetection 对 Facemesh 进行了三项重大改进:

虹膜关键点检测

改进了对眼睑轮廓的检测

改进了对转动的面部的检测

我们在上方的 GIF 中突出显示了这些改进,该 GIF 展示了对于同一个图像序列,faceLandmarksDetection 和 Facemesh 所返回的特征点有何不同。

安装

faceLandmarksDetection 软件包有两种安装方法:

1. 通过脚本标记:

2. 通过 NPM(使用 yarn(https://yarnpkg.com/) 软件包管理工具):

$ yarn add @tensorflow-models/face-landmarks-detection@0.0.1 $ yarn add @tensorflow/tfjs@2.6.0

用法

安装软件包后,您只需加载模型权重,然后输入图像即可开始检测面部特征点:

// 如果您使用 NPM,需请求加载模型。如果您使用脚本标签,您可以跳过此步骤,因为 faceLandmarksDetection 在全局范围内已经可用 const faceLandmarksDetection = require('@tensorflow-models/face-landmarks-detection'); // 加载 faceLandmarksDetection 模型 const model = await faceLandmarksDetection.load( faceLandmarksDetection.SupportedPackages.mediapipeFacemesh); // 将视频流输入模型,并从 MediaPipe 计算图中获取真检测到的面部数组。 // 对于 Node 用户,estimateFaces API 还接受 tf.Tensor3D 或 ImageData 对象。 const video = document.querySelector("video"); const faces = await model.estimateFaces({ input: video });

对 estimateFaces 的输入可以是视频、静态图像、“tf.Tensor3D”函数,甚至是供 node.js 管道使用的 ImageData 对象。FaceLandmarksDetection 随后会为输入的面部返回一组预测对象,其中包括每个面部的相关信息(例如,置信度得分和面部 478 个特征点的位置)。

tf.Tensor3D
https://js.tensorflow.org/api/latest/#tensor3d

ImageData
https://developer.mozilla.org/en-US/docs/Web/API/ImageData

以下是预测对象示例:

{ faceInViewConfidence: 1, boundingBox: { topLeft: [232.28, 145.26], // [x, y] bottomRight: [449.75, 308.36], }, mesh: [ [92.07, 119.49, -17.54], // [x, y, z] [91.97, 102.52, -30.54], ... ], // 每个面部特征值在输入空间中的 x,y,z 位置 scaledMesh: [ [322.32, 297.58, -17.54], [322.18, 263.95, -30.54] ], // x,y,z 位置的语意分组 annotations: { silhouette: [ [326.19, 124.72, -3.82], [351.06, 126.30, -3.00], ... ], ... } }

请参阅我们的 README,了解更多有关此 API 的详情。

README
https://github.com/tensorflow/tfjs-models/tree/master/face-landmarks-detection

性能

FaceLandmarksDetection 是轻量级软件包,其占用空间仅有 3MB 左右,因此非常适合用于在各种移动设备上执行实时推理。在测试时,请注意 TensorFlow.js 还会提供几种不同的后端供您选择,包括 WebGL 和带 XNNPACK 的 WebAssembly (WASM),可在搭载低端 GPU 的设备上使用。下表显示的是该软件包在几种不同的设备和 TensorFlow.js 后端中的表现:

桌面设备:

移动设备:

XNNPACK
https://github.com/google/XNNPACK

所有基准测试结果均收集自 Chrome 浏览器。如需详细了解如何为 TF.js WebAssembly 后端激活 SIMD,请参阅这篇文章。

展望

TensorFlow.js 和 MediaPipe 团队都计划利用经过改进的虹膜坐标,为我们的面部特征点检测解决方案添加深度预测功能。我们坚信分享代码可以实现研究重现、快速实验,并期待看到 MediaPipe Iris 模型在社区中得到更广泛的使用。

快来尝鲜!

通过此链接在您的网络浏览器中试用我们的新软件包。我们期待看到您在自己的应用中使用此模型。

此链接
https://storage.googleapis.com/tfjs-models/demos/face-landmarks-detection/index.html

更多信息

点击此处以详细了解 MediaPipe Iris 模型:MediaPipe Iris

MediaPipe Iris
https://google.github.io/mediapipe/solutions/iris.html

了解模型的预期用途、限制和公平性属性:模型卡

模型卡
https://mediapipe.page.link/iris-mc

阅读我们宣布推出 MediaPipe Iris 的原始 Google AI 文章:推出 MediaPipe Iris: 不受限的虹膜跟踪和深度估

阅读我们在 arXiv 上发表的论文:《用于数字木偶的单目视频实时瞳孔追踪》Z(Real-time Pupil Tracking from Monocular Video for Digital Puppetry)

用于数字木偶的单目视频实时瞳孔追踪
https://arxiv.org/abs/2006.11341

责任编辑:xj

原文标题:推出 MediaPipe Iris,升级浏览器中的虹膜追踪模型!

文章出处:【微信公众号:TensorFlow】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 谷歌
    +关注

    关注

    27

    文章

    5839

    浏览量

    103232
  • 浏览器
    +关注

    关注

    1

    文章

    968

    浏览量

    34366
  • 虹膜识别
    +关注

    关注

    4

    文章

    422

    浏览量

    39382

原文标题:推出 MediaPipe Iris,升级浏览器中的虹膜追踪模型!

文章出处:【微信号:tensorflowers,微信公众号:Tensorflowers】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Mozilla Firefox浏览器推出Text Fragments功能,提升用户体验

    早在2020年,谷歌即在Chrome浏览器中推出了“Scroll to Text Fragments”功能,而Edge、Opera、Brave、Vivaldi以及苹果Safari等基于Chromium的浏览器也已支持这一便捷特性
    的头像 发表于 04-08 10:21 249次阅读

    高通与谷歌携手推出骁龙Windows PC优化版Chrome浏览器

    今日,科技巨头高通技术公司与谷歌联合宣布,面向搭载骁龙芯片的Windows PC推出优化版Chrome浏览器。此举旨在为用户带来更流畅、更高效的上网体验,并预示着双方合作的进一步深化。
    的头像 发表于 03-28 10:02 160次阅读

    谷歌模型怎么用手机打开网页

    请注意,谷歌模型本身是一个计算机程序,它并不能直接在手机浏览器上运行。但是,你可以使用手机上的谷歌浏览器来访问和
    的头像 发表于 03-01 16:19 188次阅读

    谷歌宣布放弃Fuchsia OS引入完整Chrome/Chromium浏览器

    此前的Chromium例行代码更新显示,谷歌决定终止将完整Chrome/Chromium浏览器引入至Fuchsia OS的计划。
    的头像 发表于 01-16 14:02 284次阅读

    js脚本怎么在浏览器中运行

    浏览器中运行JavaScript脚本是一种常见的方式,因为JavaScript是一种在Web浏览器中执行的脚本语言。下面是一个详细的,最少1500字的文章,介绍如何在浏览器中运行
    的头像 发表于 11-27 16:46 1383次阅读

    浏览器怎么打开javascript

    浏览器是一种用于浏览和访问互联网页面的应用程序,而JavaScript是一种常用的网页编程语言,用于给网页添加交互和动态效果。本文将详细探讨如何在浏览器中打开JavaScript,并解释
    的头像 发表于 11-26 11:25 939次阅读

    浏览器需要支持javascript怎么解决

    JavaScript是一种流行的脚本语言,用于对网页进行动态交互和功能增强。几乎所有现代浏览器都支持JavaScript,但在某些情况下,用户可能需要采取措施来确保浏览器支持JavaScript
    的头像 发表于 11-26 11:23 2046次阅读

    浏览器支持javascript怎么设置

    浏览器是我们上网冲浪的工具,而JavaScript是一种广泛使用的脚本语言,可以在网页中添加交互性和动态性。因此,确保浏览器正确支持JavaScript是非常重要的。 首先,我们需要理解什么是浏览器
    的头像 发表于 11-26 11:22 754次阅读

    浏览器javascript被禁用怎么解开

    。本文将详细介绍如何解开禁用浏览器JavaScript的方法,希望对您有所帮助。 一、检查浏览器设置 在解决问题之前,我们首先要确认JavaScript是否真的被禁用了。不同的浏览器有不同的禁用JavaScript的设置位置,以
    的头像 发表于 11-26 11:21 8101次阅读

    ie浏览器限制运行脚本

    IE浏览器限制运行脚本是指在Internet Explorer浏览器中,存在一些限制和安全策略,以保护用户的电脑免受恶意脚本的攻击。这些限制有助于防止在浏览器中执行恶意代码,保护用户的隐私和电脑
    的头像 发表于 11-26 11:19 710次阅读

    python控制已经打开的浏览器

    Python是一种广泛使用的编程语言,它具有强大的功能和丰富的库。其中一个功能就是控制已经打开的浏览器。这篇文章将详细介绍如何使用Python控制已经打开的浏览器,并提供一些实际的示例
    的头像 发表于 11-22 14:29 1406次阅读

    华为手机自带浏览器在web网页对长按保存的处理

    在最近的开发过程,遇到一个问题,在实现拖动图片(img标签)时,如果未拖动而长按图片,会触发保存功能。在对标签进行CSS设置以后,其他的浏览器都已禁止了长按保存功能,现在只留下华为自带的浏览器
    发表于 11-10 10:52

    基于WAP的嵌入式浏览器设计

    电子发烧友网站提供《基于WAP的嵌入式浏览器设计.pdf》资料免费下载
    发表于 10-24 11:33 0次下载
    基于WAP的嵌入式<b class='flag-5'>浏览器</b>设计

    暴力猴浏览器插件

    暴力猴浏览器插件
    发表于 05-29 11:20 4次下载

    imx8mp chromium浏览器显示异常怎么解决?

    我用imx8mp连接两个屏幕,显示不同。一个是lvds接口的屏,分辨率是1366*768,一个是HDMI显示。如果你在HDMI屏幕上打开chromium浏览器到最大,浏览器屏幕也会显示在另一个屏幕上。
    发表于 05-06 07:21