2017-10-16 40 views
0

看屏幕在较新的Android设备中,可能会用您的脸部解锁手机。这也将是可能的Iphone X.检查用户是否正在从代码

有没有使用这些传感器/相机来检查用户是否正在看屏幕的方法?

编辑: 我发现也有一个视觉框架,从谷歌:Vision Framework

+0

该文档您链接,谷歌的愿景框架不提视线跟踪/注意检测作为技术的一个特点。 – rickster

回答

1

是和否。

iPhone X上的内置Face ID功能可以解锁设备并授权其他内置功能(Apple Pay,iTunes/App Store付款等)。您还可以将其用作应用程序中的授权方法 - 与您用于支持其他设备上的Touch ID的框架调用相同的LocalAuthentication自动使用Face ID代替iPhone X.

面部标识默认情况下需要用户正在看屏幕。因此,如果您的注意力检测用例与授权或解锁有关,您可以使用LocalAuthentication来执行此操作。 (不过,用户可以在辅助功能设置禁用注意检测,降低了安全性,而且增加面部识别的可用性。第三方应用程序无法控制,甚至读此设置。)


如果你谈论更直接做注意力检测或注视跟踪...苹果公司不提供任何暴露人脸ID的内部工作,或至少注视跟踪部分的API。下面是他们完成的事情:

  • ARKit提供ARFaceTrackingConfiguration(见sample code),(据说使用一些相同的神经引擎的东西,面部识别详细提供面部实时的详细3D模型和性能)。

    但是就ARKit而言,眼睛只是脸上的两个孔 - 没有注视跟踪。

  • Apple's Vision framework提供人脸检测和人脸识别(即定位眼睛,鼻子,嘴巴等)。视觉确实识别眼睛轮廓和瞳孔,您可以在理论上将其用作注视追踪的基础。

    然而,由于视觉只能在2D提供了这样的数据,并没有得到一个三维姿态的脸,你还是留下了一个沉重的计算机视觉问题,如果你想建立视线跟踪自己。视觉处理的2D图像,这意味着它不需要iPhone X(也意味着它不会从iPhone上X的TrueDepth相机受益要么)。

  • AVCapture提供TrueDepth相机的访问权限,因此您可以获得与Face ID和ARKit使用相同的颜色+深度图像来完成它们的魔法。 (你只是不明白说的魔法自己。)

无的,这是说,视线跟踪是不可能在iOS一般或iPhone X特别 - 所有的积木都在那里,所以给予足够的[R & d努力,你可以自己实现它。但是Apple不提供任何开发人员访问内置注视跟踪机制的权限。

0

是,在iOS的11开发人员可以通过iOS的最新Vision Framework

+0

很不错的,我肯定会看看这个框架。 –

0

在其第三方应用程序中使用这个功能太这个功能背后的整个想法是使用面部识别的前置摄像头。 但你必须优化它时捕捉图像处理

提示

  1. 应用变得活跃或成为前景。

  2. 此外,当用户与任何UI控件或小部件如(按钮, 表,触摸事件等)进行交互。

  3. 确保在 应用程序未处于活动状态时停止或暂停处理。
  4. 您也可以使用陀螺仪和其他传感器来查找设备的物理状态。
+0

是的,确实需要优化。你知道什么需要计算能力吗? –