面部识别有无数的应用,并且每天都在越来越广泛的技术中得到应用,例如移动平台,安全系统和机器人技术等。 Google于2015年推出了“照片”应用,它是智能手机上最实用,实现最完善的应用之一,它可以按人脸搜索照片。 从现在起,您可以轻松找到家人和朋友的照片,并一直追溯到他们出生的那一刻,它的工作原理非常疯狂。 为什么要使用第三方解决方案? Apple的Vision Framework开箱即用,具有面部检测功能,但没有面部识别功能。 在Core ML的帮助下,使用Vision框架绝对可以实现面部识别,尽管这需要将先前训练有素的模型集成到您的应用中。 有很多提供面部识别的服务而没有太多麻烦,包括Amazon Rekognition,OpenCV和Microsoft Azure。 到目前为止,我最喜欢的是Microsoft的替代产品,它非常易于集成和使用,非常灵活,并且具有出色的性能。 尽管本教程仅专注于REST API,但Microsoft Face API在Github上具有iOS SDK。 为了使用Microsoft Azure Face API,我们需要获取Face API订阅密钥。 转到认知服务注册页面。 为Face服务选择“获取API密钥”。 注册一个“免费Azure帐户”(而不是“来宾”,因为该帐户的限制很低)。 完全免费,您将获得200美元的信用额(很多)。 请按照所有步骤创建一个新帐户(或使用您现有的Microsoft帐户登录)。 转到Azure门户。 在顶部的搜索栏中搜索“认知服务”。 选择“创建认知服务”。 在显示的过滤栏中搜索“面部”。 选择“面部”并点击“创建”。 设置名称,位置,定价层,然后选择“创建新”资源组。 11.转到所有资源> FaceService>密钥,然后复制并保存“ KEY 1”(我们将在以后使用)。 12.转到所有资源> FaceService>定价层,并确保已选择“标准”层。 您可以从此处下载入门项目。 运行之后,您应该会看到包含两个部分的集合视图,分别是化身和照片。 如您所见,选择头像目前不起作用。 为了解决这个问题,让我们从导入API消耗类开始。 (请务必仔细阅读代码和注释,以更好地了解Face API的工作原理) 这些警告是因为未使用avatarData和photoData ,让我们来照顾它。 我们将使用这些数据值来请求人脸ID,然后将其分别存储在person和photo对象中。 将这些行替换为: 再次运行该应用程序。 如果加载需要一段时间(约10秒),请不要惊慌,这是因为我们正在为每个图像进行Face-Detect API调用。 在生产应用程序上,您应该只执行一次,并将结果存储在本地或基于云的服务上,最重要的是,永远不要阻塞UI。 另外,请记住,我们正在使用的Face-Detect端点仅存储24小时的面部ID。 如果您需要更永久的解决方案,请参见FaceList。 […]
今年秋天,来自Apple的好东西! 在许多新的API中,有Vision框架可帮助检测人脸,人脸特征,对象跟踪等。 在这篇文章中,我们将探讨如何使人脸检测工作。 我们将制作一个简单的应用程序,它可以拍摄照片(使用图库中的相机),并在检测到的脸上绘制一些线条,以向您展示Vision的力量。 选择图像 我将快速进行介绍,因此,如果您是一个真正的初学者,而您觉得这样做太难了,请首先查看我以前的iOS相关文章“ 构建旅行照片共享iOS应用” ,因为它具有相同的照片选择功能,但是详细解释。 您将需要Xcode 9 beta和运行iOS 11 beta的设备进行测试。 让我们从创建一个新的名为FaceVision的 Single View App项目开始 : 打开Main.storyboard然后将Take Photo按钮拖到其中心。 使用约束使其停留在该位置🙂为其创建一个takePhoto动作: 现在,创建一个名为ImageViewControler.swift的新UIViewController类,并将其设置为您刚刚添加到Main.storyboard中的新View Controller的Main.storyboard : 还要为“ 图像视图”添加一个出口,并添加一个新属性来保存用户的图像: 检测面部特征 现在该到有趣的部分了,检测图像中的面部和面部特征。 为流程创建一个新的process动作! 具有以下内容的按钮: 希望您喜欢这个,请在评论中让我知道如何进行以及是否有可以改进的地方。 此外,使用该应用程序拍摄的某些照片完全不会受伤🙂 您可以从此处获取代码:https://github.com/intelligentbee/FaceVision 谢谢! 最初发布于 smartbee.com 。