亚马逊AWS官方博客

Amazon Rekognition – 深度学习支持下的图像检测与识别服务

看到这张图片时,你的大脑是如何理解它的呢?

你可能看到一只动物、一只宠物、一只狗或者更为具体——一只金毛犬。图像与这些标签之间的联系并非硬性嵌入您的大脑,而是在看过成百上千张这样的图片之后,你的大脑才能够直接给出正确的解读。通过多个不同层面的认知,我们学会了如何区分动物与植物,猫与狗,以及其它犬种与金毛犬间的差异。

深度学习之于图像检测

然而,事实证明:为计算机赋予和人类同等水平的理解能力是一项相当困难的任务。在数十年的研究过程中,计算机科学家们尝试利用各种方法来解决这一难题。时至今日,计算机科学领域已经达成广泛共识——即解决该问题的最佳途径为深度学习。深度学习利用特征抽象化与神经网络相结合的方法输出结果。这一方法甚至曾被伟大的科幻作家Arthur C. Clarke评论为“简直与魔法无异”。

然而,深度学习仍然需要投入相当高昂的成本。首先,大家需要耗费可观的精力与时间进行训练。从本质角度讲,这意味着我们需要为学习网络提供范围极广的已标记示例(“这是一只狗”、“这是一只宠物”等等),从而确保其能够将图像中的特征性内容与标签联系起来。这个阶段需要占用可观的计算资源,特别是考虑到神经网络自身的实际规模以及多层级属性。训练阶段完成之后,成熟的网络即可更为轻松地评估其它新型图像。其结果通过传统置信水平(0%至100%)表现,而非直接给出不容置疑的事实。如此一来,大家将能够决定自己的应用适合搭配怎样的精度。

Amazon Rekognition介绍

今天,我将向大家介绍Amazon Rekognition。我们的计算机视觉小组多年以来一直致力于开发深度学习方案,并以此为基础推出了这项完备的服务,其目前每天已经能够分析数十亿张图片。该服务利用成千上万对象及场景进行训练,因此现在可供大家的应用程序直接使用。如果大家对此抱有兴趣,那么不妨在着手深入研究并编写代码以利用Rekognition API之前,访问下面的网址:

https://console.aws.amazon.com/rekognition/home

查看我们提供的相关演示。

Rekognition在设计初期就充分考虑到了规模化使用需求,能够识别场景、物品以及面部图像。在获取图像之后,Rekognition能够返回一份标签列表。对于那些包含一张或者多张面孔的图像,它会为每张面孔返回范围框及其属性。下面让我们来看看其如何分析文章开头的这幅金毛犬图片(顺带一提,这只小美女名叫Luna):

如大家所见,Rekognition以高置信水平将Luna标记为一只动物、一只狗、一只宠物以及一只金毛犬。必须强调的是,这些标签相互独立,这意味着该深度学习模型并没有明确理解各标签之间的关系,例如狗与动物。其只是之前Rekognition训练时使用的素材恰好将这两个标签与以狗为中心的内容加以关联。

下面再来看Rekognition如何分析我和妻子两人的合照:

Amazon Rekognition找到了我们的面部位置,并用框体将其圈出,同时告知我妻子的表情非常幸福(这张照片拍摄于她生日当天,能让她感到幸福也是我发自内心的期许)。

大家也可以利用Rekognition比较不同面孔,并询问其是否在给定照片中找到了其它面孔。

这一切强大的处理能力皆可通过一组API函数进行访问,大家可以利用控制台(https://console.aws.amazon.com/rekognition/home)进行快速演示。举例来说,大家可以调用DetectLabels从而通过编程方式重现我给出的第一个示例,或者调用DetectFaces以重现我的第二个示例。大家可以对进行多次调用IndexFaces,从而帮助Rekognition作好识别面部信息的准备。每一次对IndexFaces进行调用,Rekognition都会从图片中提取出部分特性(被称为面部矢量),存储这些矢量并丢弃该图像。大家可以创建一套或者多套Rekognition收集库,并在每套库内存储多个相关面部矢量组。

Rekognition能够直接将处理图像保存在Amazon简单存储服务(简称S3)当中。事实上,大家亦可以利用AWS Lambda函数处理任意规模的新近上传图像。大家还可以利用AWS身份与访问管理(简称IAM)服务对指向Rekognition API的访问加以控制。

Rekognition的实际应用

那么,大家能够利用Rekognition做什么有趣的事?我个人倒是有很多想法。

如果大家已经拥有大量图像,则可利用Amazon Rekognition对其进行标记与索引。由于Rekognition属于一项服务,因此大家能够每天处理数百万张图像,而无需为底层基础设施的设置、运行以及规模伸缩费心。大家可以随时运用视觉搜索、标签浏览以及一切交互式发现模式。

大家也可以利用Rekognition配合多种不同验证及安全背景。大家可以对摄像头上显示的面孔与存档照片进行比较,从而判断是否允许对方进入安全区域。大家也可以执行视觉监控,即从照片中找出那些值得关注或者追踪的对象或者人物。

大家可以构建“智能化”营销公告牌,利用其收集观看人员的相关统计数据。

已经上线

Rekognition服务目前已经在美国东部(北弗吉尼亚州)、美国西部(俄勒冈州)以及欧洲(爱尔兰)服务区上线,大家从今天开始即可使用。作为AWS免费层的组成部分,大家每月可利用其分析最多5000张图像并存储最多1000个面部矢量,免费周期为一年。在此之后(或者您需要对处理容量进行扩展),大家需要以分层方式根据分析图像以及所存储面部矢量的具体数量付费。

还想了解更多信息?我们将于美国中央时区时间12月14日星期三的上午4:00到5:00召开网络研讨会,感兴趣的朋友可以访问:

https://publish.awswebcasts.com/content/connect/c1/7/en/events/event/private/23850344/41359021/event_registration.html?connect-session=graysonbreezdndrpkw7uwmhrgxc&sco-id=55023367&campaign-id=JB&_charset_=utf-8

进行注册。

中国区的AWS用户也不用着急,我们将会很快举办一场AWS re:Invent 2016的回顾活动,全面为大家介绍此次发布的新功能与新服务。敬请期待!

-Jeff

原文链接:

https://aws.amazon.com/cn/blogs/aws/amazon-rekognition-image-detection-and-recognition-powered-by-deep-learning/