首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在颤动中实现实时人脸解锁功能

如何在颤动中实现实时人脸解锁功能
EN

Stack Overflow用户
提问于 2019-07-13 19:16:30
回答 1查看 1.7K关注 0票数 2

我需要在我的flutter应用程序中实现实时人脸解锁功能,请建议最好的方法来做到这一点,我还了解了ML_kit(firebase)和openCV,但它们都支持人脸检测,我正在寻找人脸识别。

请推荐Flutter的库或SDK。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-14 01:00:08

如果您只想在iOS上使用此功能,并且您使用的是iPhone X,则可以使用local_auth包。

您可以这样使用它:

代码语言:javascript
复制
initializeFaceRecognition() async {
    if (Platform.isIOS) {
      bool canCheckBiometrics = await _localAuth.canCheckBiometrics;
      if (!canCheckBiometrics) {
        setState(() => _authenticationResult = 'This device does not support biometrics');
        return;
      }
      List<BiometricType> availableBiometrics = await _localAuth.getAvailableBiometrics();
      if (!availableBiometrics.contains(BiometricType.face)) {
        setState(() => _authenticationResult = 'This device does not support face recognition');
        return;
      }
      bool didAuthenticate = await _localAuth.authenticateWithBiometrics(localizedReason: 'Authenticate with face recognition', useErrorDialogs: true);
      if (didAuthenticate) {
        setState(() => _authenticationResult = 'Authenticated');
      } else {
        setState(() => _authenticationResult = 'Not authenticated');
      }
    } else {
      setState(() => _authenticationResult = 'Not compatible platform');
    }
  }

现在,如果你想在Android上使用它,这在当时是不可能的,因为人脸识别不像指纹那样在API上公开。

在这种情况下,你应该创建自己的ML模型和用于人脸识别的应用程序接口,或者使用像Face API from Azure这样的应用程序接口(这不是实时的,你必须上传图片)。但在这一点上,这应该是另一个问题,因为它超出了Flutter应用程序的范围。

我发现了Trueface应用程序接口,它显然可以让你从直播流中检测人脸。也许这项服务更接近你的需求(它不是免费的)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57018640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档