广告

利用深度学习和计算机视觉分析脸部表情

2017-07-20 Gordon Cooper 阅读:
深度学习技术对于降低计算机视觉辨识和分类的错误率展现出巨大的优势。在嵌入式系统中实施深度神经网络有助于机器透过视觉解读脸部表情,并达到类似人类的准确度。

辨别脸部表情和情绪是人类社会互动早期阶段中一项基本且非常重要的技能。人类可以观察一个人的脸部,并且快速辨识常见的情绪:怒、喜、惊、厌、悲、恐。将这一技能传达给机器是一项复杂的任务。研究人员经过几十年的工程设计,试图编写出能够准确辨识一项特征的计算机程序,但仍必须不断地反复尝试,才能辨识出仅有细微差别的特征。qcFednc

那么,如果不对机器进行编程,而是直接教机器精确地辨识情绪,这样是否可行呢?qcFednc

深度学习(deep learning)技术对于降低计算机视觉(computer vision)辨识和分类的错误率展现出巨大的优势。在嵌入式系统中实施深度神经网络(见图1)有助于机器透过视觉解读脸部表情,并达到类似人类的准确度。qcFednc

025ednc20170720
图1:深度神经网络的简单例子qcFednc

神经网络可经由训练而辨识出模式,而且如果它拥有输入输出层以及至少一个隐藏的中间层,则被认为具有「深度」辨识能力。每个节点从上一层中多个节点的加权输入值而计算出来。这些加权值可经过调整而执行特别的影像辨识任务。这称为神经网络训练过程。qcFednc

例如,为了训练深度神经网络辨识面带开心笑脸的照片,我们向其展示开心的图片作为输入层上的原始数据(影像画素)。由于知道结果是开心,网络就会辨识图片中的模式,并调整节点加权,尽可能地减少开心类别图片的错误。每个显示出开心表情并带有批注的新图片都有助于优化图片权重。藉由充份的输入信息与训练,网络可以摄入不带标记的图片,并且准确地分析和辨识与开心表情相对应的模式。qcFednc

深度神经网络需要大量的运算能力,用于计算所有这些互连节点的加权值。此外,数据存储器和高效的数据移动也很重要。卷积神经网络(CNN)(见图2)是目前针对视觉实施深度神经网络中实现效率最高的先进技术。CNN之所以效率更高,原因是这些网络能够重复使用图片间的大量权重数据。它们利用数据的二维(2D)输入结构减少重复运算。qcFednc

026ednc20170720
图2:用于脸部分析的卷积神经网络架构(示意图) qcFednc

实施用于脸部分析的CNN需要两个独特且互相独立的阶段。第一个是训练阶段,第二个是部署阶段。qcFednc

训练阶段(见图3)需要一种深度学习架构——例如,Caffe或TensorFlow——它采用中央处理器(CPU)和绘图处理器(GPU)进行训练计算,并提供架构使用知识。这些架构通常提供可用作起点的CNN图形范例。深度学习架构可对图形进行微调。为了实现尽可能最佳的精确度,可以增加、移除或修改分层。qcFednc

027ednc20170720
图3:CNN训练阶段qcFednc

在训练阶段的一个最大挑战是寻找标记正确的数据集,以对网络进行训练。深度网络的精确度高度依赖于训练数据的分布和质量。脸部分析必须考虑的多个选项是来自「脸部表情辨识挑战赛」(FREC)的情感标注数据集和来自VicarVision (VV)的多标注私有数据集。qcFednc

针对实时嵌入式设计,部署阶段(见图4)可实施在嵌入式视觉处理器上,例如带有可编程CNN引擎的Synopsys DesignWare EV6x嵌入式视觉处理器。嵌入式视觉处理器是均衡性能和小面积以及更低功耗关系的最佳选择。qcFednc

028ednc20170720
图4:CNN部署阶段qcFednc

虽然标量单元和向量单元都采用C和OpenCL C(用于实现向量化)进行编程设计,但CNN引擎不必手动编程设计。来自训练阶段的最终图形和权重(系数)可以传送到CNN映射工具中,而嵌入式视觉处理器的CNN引擎则可经由配置而随时用于执行脸部分析。qcFednc

从摄影机和影像传感器撷取的影像或视讯画面被馈送至嵌入式视觉处理器。在照明条件或者脸部姿态有显著变化的辨识场景中,CNN比较难以处理,因此,影像的预处理可以使脸部更加统一。先进的嵌入式视觉处理器的异质架构和CNN能让CNN引擎对影像进行分类,而向量单元则会对下一个影像进行预处理——光线校正、影像缩放、平面旋转等,而标量单元则处理决策(即如何处理CNN检测结果)。qcFednc

影像分辨率、画面更新率、图层数和预期的精确度都要考虑所需的平行乘积累加数量和性能要求。Synopsys带有CNN的EV6x嵌入式视觉处理器采用28nm制程技术,以800MHz的速率执行,同时提供高达880MAC的性能。qcFednc

一旦CNN经过配置和训练而具备检测情感的能力,它就可以更轻松地进行重新配置,进而处理脸部分析任务,例如确定年龄范围、辨识性别或种族,并且分辨发型或是否戴眼镜。qcFednc

总结

可在嵌入式视觉处理器上执行的CNN开辟了视觉处理的新领域。很快地,我们周围将会充斥着能够解读情感的电子产品,例如侦测开心情绪的玩具,以及能经由辨识脸部表情而确定学生理解情况的电子教师。深度学习、嵌入式视觉处理和高性能CNN的结合将很快地让这一愿景成为现实。qcFednc

(作者简介:Gordon Cooper,Synopsys嵌入式視覺產品行銷經理)qcFednc

20160630000123qcFednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • 机器人版的ChatGPT,谷歌新模型泛化能力大幅提高 7月28日,Google DeepMind宣布以训练AI聊天机器人的方式训练了一款全新的机器人模型Robotic Transformer 2(RT-2),这是一种新颖的视觉-语言-动作(VLA)模型,可以从网络和机器人数据中学习,并将这些知识转化为机器人控制的通用指令。
  • 英伟达惨遭背刺,这个SDK让AMD平台也能运行CUDA 近日,AMD正式推出了HIP SDK,这是ROCm生态系统的一部分,基于开源ROCm解决方案,HIP SDK使消费者可以在各类GPU上运行CUDA应用,为专业和消费级GPU提供CUDA支持。
  • 比科奇介绍其打造更加智能移动通信基础设施新愿景 比科奇在MWC上海世界移动通信大会期间介绍了其在引入人工智能(AI)等技术打造更加智能的移动通信基础设施方向的新愿景,包括致力于解决困扰行业的基站功耗等问题,以及人工智能技术与先进无线通信技术的结合等创新
  • 后来居上,美光宣布已出样业界首款HBM3 Gen2内存 7月26日,美光宣布推出业界首款8层24GB HBM3 Gen2内存芯片,是HBM3的下一代产品,采用1β工艺节点,目前该款美光内存芯片正在向客户提供样品。
  • 一比一复刻iOS版功能,Android版ChatGPT正式上线 7月25日,OpenAI宣布,Android版ChatGPT已经正式上线,可在谷歌应用商店进行下载,目前仅限在美国、印度、孟加拉国和巴西四国下载使用,不过OpenAI计划在下周拓展到更多地区。
  • 中国首款量子计算机操作系统,本源司南PilotOS正式上线 近日,据安徽省量子计算工程研究中心的消息,本源司南PilotOS客户端终于正式上线。PilotOS客户端是本源量子完全自主研发的一款一站式学习与开发平台,用户可以直接进行本地量子计算编程,不需要联网使用,实现用户对量子计算软件服务“打开即用”,助力量子计算编程“小白”顺利成为量子计算编程开发者。
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告
    向右滑动:上一篇 向左滑动:下一篇 我知道了