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

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

3天内不再提示

Apple Keynote推出iPhone X和FaceID

传感器技术 来源:未知 作者:李倩 2018-03-29 16:25 次阅读

最近大家谈论最多的关于新款iPhone X的功能之一就是新的解锁技术,即TouchID的后续技术:FaceID。

创建了无边框手机后,苹果不得不找出新方法简单快捷地解锁手机。虽然一些竞争对手继续使用放在不同位置的指纹传感器,但苹果决定对解锁手机的方式进行创新和变革:只需看一眼,FaceID就能安全地解锁iPhone X。借助一款先进(而且非常小巧)的前置深度相机,iPhone X可以建立用户脸部的3D模型。此外,iPhone X通过红外摄像头识别人脸,可以避免环境光和颜色对人脸识别的影响。通过深度学习,手机可以捕捉到用户脸部的很多细节,因此在用户拿着手机的时候,手机可以识别出它的主人。比较令人惊讶的是,苹果表示这种方法比TouchID更安全,出错率为百万分之一。

我对苹果的FaceID的实现技术非常感兴趣,特别是它完全运行在设备上,而且只需利用用户的面部进行一点点训练,就可以在每次拿起手机的时候顺利地进行识别。我研究了如何使用深度学习来实现此过程,以及如何优化每个步骤。在这篇文章中,我将展示如何使用Keras实现一个类似FaceID的算法。我会介绍采用的各种架构,并展示一些在Kinect(一种非常流行的RGB-D相机,拥有与iPhone X前置摄像头非常相似的输出,但设备本身更大)上的最终实验。倒杯咖啡,让我们开始逆向工程苹果的新技术。

对FaceID的初步了解

“……赋予FaceID力量的神经网络不是简单的分类。”

FaceID注册的过程

第一步我们来仔细分析FaceID在iPhone X上的工作原理。我们可以通过苹果的白皮书理解FaceID的基本机制。使用TouchID的时候,用户必须多次按传感器来注册自己的指纹。大约需要15-20次不同的触摸,iPhone才能完成注册,并准备好TouchID。同样地,FaceID也需要用户进行脸部注册。过程非常简单:用户只需像往常一样看着手机,然后慢慢地转动头部一圈,从不同的角度注册脸部。如此,注册过程就完成了,手机已经准备好解锁了。这个超快的注册过程可以告诉我们很多关于底层学习算法的信息。比如,FaceID背后的神经网络并不是简单的分类。我会在后面进行详细的解释。

Apple Keynote推出iPhone X和FaceID

对于神经网络来说,分类的意思是学习如何预测看到的脸是不是用户的脸。所以,它需要一些训练数据来预测“是”或“否”,但与很多其他深度学习的应用场景不同,所以这种方式在这里并不适用。首先,神经网络需要使用从用户脸上捕捉到的数据重新进行训练。而这需要消耗大量的时间和电量,还需要大量的不同面孔作为训练数据以获得负面的样本,这也是不现实的。即使是试图迁移并微调已经训练好的神经网络,这些条件也几乎不会变化。而且,苹果也不可能在实验室等地方“线下”训练复杂的神经网络,然后再将训练好的神经网络搭载在手机中。相反,我认为FaceID是由孪生卷积神经网络实现的(siamese-like convolutional neural network),该网络由苹果公司进行“线下”培训,将脸部映射到一个低维潜在空间(latent space),并通过对比损失函数(contrastive loss)最大化不同人脸之间的距离。通过本文,你可以了解Keynote中提到的体系结构。我知道,很多读者对上述名词很陌生,但是没关系,我会逐步的进行详细的解释。

FaceID看起来会是TouchID之后的新标准。苹果是否会把它带到所有的新设备上?

从人脸到神经网络的数字

Hadsell,Chopra和LeCun发表的论文“Dimensionality Reduction by Learning an Invariant Mapping”。请注意此架构是如何学习数字之间的相似性,并自动将它们分组在二维中。类似的技术也可以应用于面部识别。

FaceID可以适应外观的变化

接下来,让我们看看如何利用Python和Keras实现。

使用Keras实现FaceID

就像所有的机器学习项目一样,我们首先需要的是数据。创建自己的数据集需要花费大量时间和许多人的配合,这项工作本身可能非常具有挑战性。因此,我搜索了网络上RGB-D的人脸数据集,找到了一个非常合适的数据集(http://www.vap.aau.dk/rgb-d-face-database/)。这个数据集是根据人脸面向不同的方向以及不同的表情制作出的RGB-D图像集,正好类似于iPhone X的情况。

最终的实现可以参考我的GitHub代码库(https://github.com/normandipalo/faceID_beta),里面有个Jupyter Notebook。我还进一步尝试了使用Colab Notebook,你也可以试试看。

我创建了一个基于SqueezeNet架构的卷积网络。这个神经网络以两组RGBD的面部图像(即4通道图像)作为输入,并输出两组数据之间的距离。该网络用对比损失函数(constrastive loss)训练,可以最大程度地减少同一人的照片之间的距离,同时最大程度地提高不同人的照片之间的距离。

对比损失函数

使用t-SNE创建嵌入空间中的人脸的簇,每种颜色代表不同的面孔(但颜色被重复使用)

使用PCA创建嵌入空间中的人脸的簇,每种颜色都是不同的面孔(但颜色被重复使用)

实验!

现在我们可以试试个模型,模拟一个常见的FaceID的流程:首先,注册用户的面部;然后在解锁阶段,需要验证两个方面——主人可以解锁,而其他人不可以。 如前所述,区别在于神经网络会计算解锁手机时和注册时的脸部的距离,然后判断是否在某个阈值以下。

下面我们来注册:我从数据集中采集了同一人的一系列照片,并模拟了注册阶段。现在该设备将计算每个姿势的嵌入,并保存在本地。

新用户注册阶段,模仿FaceID的过程

在深度相机中观察到的注册阶段

嵌入空间中同一个用户的面部距离

嵌入空间中不同用户的面部距离

因此,我们可以将阈值设置为大约0.4,就可以阻止陌生人解锁设备了。

结论

在这篇文章中,我展示了如何利用面部嵌入和孪生卷积神经网络,实现FaceID解锁机制的原型。希望对你能有所帮助。如果你有任何问题都可以和我联系。你可以从以下链接找到所有相关的Python代码:

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

    关注

    28

    文章

    13150

    浏览量

    200135
  • 神经网络
    +关注

    关注

    42

    文章

    4557

    浏览量

    98604
  • faceid
    +关注

    关注

    2

    文章

    89

    浏览量

    11845
收藏 人收藏

    评论

    相关推荐

    苹果今年将“Apple ID”更名为“Apple Account”

     Gurman指出,新的“Apple Account”命名将用于网络与近期重大苹果软件升级,譬如适用于iPhone的iOS 18及适用于Apple Watch的watchOS 11等。
    的头像 发表于 03-18 14:38 228次阅读

    贝宝宣布小企业可采用支持Apple Tap to Pay的iPhone接受美金付款

    苹果自2022年起推出Tap to Pay技术,使得美国商家能依托iPhone以及合作iOS应用接受Apple Pay及其他免接触式付款方式。
    的头像 发表于 03-08 10:15 163次阅读

    伦茨科技宣布ST17H6x芯片已通过Apple MFi / Find My「查找」认证

    深圳市伦茨科技有限公司(以下简称“伦茨科技”)发布ST17H6x Soc平台。成为继Nordic之后全球第二家取得Apple Find My「查找」认证的芯片厂家,该平台提供可通过Apple
    发表于 12-07 17:20

    深度解读Apple M3系列芯片

    Apple在上月底宣布了新一代的M3系列处理器,同时也推出了新款MacBook Pro。
    的头像 发表于 11-14 10:11 1889次阅读
    深度解读<b class='flag-5'>Apple</b> M3系列芯片

    郭明錤:苹果最早2025年推出MicroLED Apple Watch

    郭明錤2023年为Apple Watch出货量同比下降约15%至3600 - 3800万台。他称Apple Watch“定位的成功产品的典型案例。”但是从目前的出货趋势来看,如果到2024年为止,与不幸的前一年相比显示出减少趋势,也有可能需要重新设定(位置)。
    的头像 发表于 10-11 14:38 491次阅读

    全球首颗3nm制程的芯片A17登录苹果发布会,iPhone15顶配命名依旧是Pro Max

    9月13日凌晨1:00,苹果公司召开秋季新品发布会,推出Apple Watch Series 9、Apple Watch Ultra 2、iPhone 15系列。本次发布会依旧采用线上
    的头像 发表于 09-13 16:07 654次阅读

    iPhone 发布会有何看点

    在一个近乎一个半小时的活动中,苹果推出了6款新产品,包括两款手表(Apple Watch Series 9、Apple Watch Ultra 2)和iPhone 15系列的四款手机。
    的头像 发表于 09-13 10:56 1133次阅读

    苹果15发布会最先亮相新款Apple Watch 搭载S9芯片更丝滑

    苹果最先宣布推出的是性能提升的新款Apple Watch。新款Apple Watch  搭载S9芯片更丝滑,而且处理机器学习任务的速度最高可以达2倍。  
    的头像 发表于 09-13 01:12 1236次阅读
    苹果15发布会最先亮相新款<b class='flag-5'>Apple</b> Watch  搭载S9芯片更丝滑

    iphone15预计上市时间价格

    Max将会涨价千元,国行价格分别为8999元、9999元。 有分析师预测,苹果公司即将推出iPhone 15 Pro版型号大概率会比其他iPhone15系列型号更贵,iPhone
    的头像 发表于 09-07 11:11 1.3w次阅读

    iPhone15系列将推出四款机型

    苹果公司宣布将于北京时间9月13日凌晨1点举办新品发布会。据悉,本次发布会将推出全新的iPhone 15系列、watch、iPad等硬件产品。
    的头像 发表于 09-01 11:02 482次阅读

    旷视 FaceID 金融级 KYC验证服务守护业务安全

      近日,旷视 FaceID 防攻击能力迎来重磅升级,打造以“视觉大模型和风控策略”双轮驱动的新范式,为行业客户构筑“安全”新防线。在视觉大模型加持下,旷视 FaceID 有效提升了攻击检出率和算法
    的头像 发表于 08-09 14:10 1272次阅读
    旷视 <b class='flag-5'>FaceID</b> 金融级 KYC验证服务守护业务安全

    Apple Vision Pro到底好在哪里?

    Apple头显
    亿佰特物联网应用专家
    发布于 :2023年08月08日 11:54:16

    苹果的又一个“iPhone时刻”?解析Apple Vision Pro

    Apple Vision Pro在设计上采用了玻璃面板和铝制框架的组合,外观看上去像是一副颇具科技感的滑雪镜,与苹果自家AirPods Max收纳包的设计有异曲同工之妙。官方给出的资料显示,Apple Vision Pro搭载用于运算处理的M2和用于消除延迟的R1双芯片
    的头像 发表于 07-09 16:00 597次阅读

    iPhone15机型基本敲定,融入灵动岛和堆叠式摄像头

    iPhone 15 Plus的**生产ERP(www.multiable.com.cn)**将会延迟。   预计Siri的改进将在2023年或2024年推出,也就是说最早可能在今年夏天与iOS 17一起在全球开发者大会WWDC上公布。   以上源自互联网,版权归原作所有
    发表于 05-16 09:49

    苹果Apple ID出现大面积故障

    大面积故障似乎影响到了全球用户。貌似这次是全球宕机。 同时Mac、iPhone、苹果官网都受不同程度的影响,网页版的Apple ID / iCloud 在输入账户后提示无法完成请求,无法通过 Apple Pay 完成支付。 作为
    的头像 发表于 05-12 11:55 2499次阅读