微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园

  编者按:微软近期发布了 Windows Vision Skills 预览版,目前包含物体检测、人体骨架检测、情感识别等 API。有了 Windows Vision Skills,无需了解复杂的计算机视觉知识,你就可以轻松调用 API 解决一些计算机视觉问题。

  计算机视觉技术有着广泛的应用场景和市场需求。微软近期发布了 Windows Vision Skills 预览版,旨在简化计算机视觉技术在 Windows 上的部署,帮助开发者通过简单调用一组 API 来解决一些计算机视觉问题。目前,Windows Vision Skills 已包含可用于实现特定类型的计算机视觉技能的一组 API,包括:物体检测、人体骨架检测和情感识别

微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园
图1:从左到右展示了物体检测、人体骨架检测、和情感识别的结果

  对于开发者而言,Windows Vision Skills 框架极大地降低了计算机视觉技术的应用门槛。应用开发人员可以使用 WinRT APIs 来轻松地在 Windows 应用(.NET、Win32 和 UWP)上集成已搭建好的视觉技术,例如物体检测、人体骨架检测等,而无需了解技术内部复杂的算法和设计, 大大缩短开发周期,提升开发效率。另外,计算机视觉开发者可以借助 Windows 设备上的硬件加速框架来将其方案打包成一个视觉技术包,而无需担心底层的设计。

微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园

  在已发布的这三项计算机视觉 API 中,人体骨架检测技术来自微软亚洲研究院智能多媒体组。由于实际应用对于模型的处理速度和资源消耗有着极高的要求,用于研究目的的人体骨架检测模型难以满足实际需求。为此,微软亚洲研究院智能多媒体组的研究人员设计了高效的轻量级骨架检测模型,参数量仅为 4M。

  我们将该轻量级骨架检测模型与目前被业界广泛使用的开源模型 OpenPose 进行了对比。由于 OpenPose 的神经网络相对复杂,并不适合直接应用于产品中,所以我们将 OpenPose 模型进行了简化处理(即将 6 个 stages 减为 1 个 stage 来降低模型复杂度)。与简化版的 OpenPose 模型相比,我们提出的轻量级骨架检测模型在计算量(FLOPS)上实现了 90% 的减少(86G FLOPS vs. 9G FLOPS),CPU 处理速度提升了 4 倍。

  微软亚洲研究院首席研究员曾文军博士表示,“微软亚洲研究院长期致力于基础研究,并将成果落地于产品。我们的一系列视觉技术,如物体跟踪、行人重识别等,将陆续在 Windows Vision Skills 框架和微软认知服务平台上发布。”

  人体骨架检测是计算机视觉中一项基础任务,对图像及视频中的人的理解和分析起着重要作用。骨架检测模型可将图片及视频中人的关键点(例如肩膀、手腕、膝盖等)检测和定位出来,如图 2 所示。由于人体骨架蕴含了人的体征、姿态、运动等众多信息,所以骨架检测模型在娱乐、教育、医疗等领域有着巨大的应用价值。

微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园
图2:人体骨架检测

  人体的骨架检测有以下应用场景:

  虚拟现实:在社交和娱乐中,人们有时候希望基于人的骨架加入特效,以产生增强的有趣内容来辅助传递信息。

  行为识别:人体骨架蕴含了身体的姿态及动作信息,对人的行为类型的识别提供了重要信息。心理物理学家 Gunnar Johansson 所做的生物观察工作表明,可以通过观察人体有限关节点的运动来识别人的行为。近些年来,很多工作都在研究如何设计基于骨架的行为识别模型。

  人机交互:在机器智能中,感知和理解人的语言乃至身体语言来做出及时的响应是核心问题之一。显式的骨架信息能为身体语言、指令的理解提供便利。

  运动分析:在医疗康复及体育运动中,对人的运动进行智能分析可以大大减少人力投入,提升康复和训练效率。例如,在骨关节病评估及康复过程中,可以借助骨架检测来分析病人走路的模式,进而评估关节的灵活度以及病症的严重程度。

微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园

  您可以在下方网站查看微软 Windows Vision Skills 人体骨骼检测、物体检测、情感识别 API 的使用示例:

  使用示例

  https://github.com/Microsoft/WindowsVisionSkillsPreview/tree/master/samples

  更多信息请参考 Windows Vision Skills 使用教程以及 NuGet.org 包:

  使用教程

  https://github.com/Microsoft/WindowsVisionSkillsPreview 

  https://docs.microsoft.com/en-us/windows/ai/windows-vision-skills/tutorial 

  NuGet 包

  https://www.nuget.org/profiles/VisionSkills

  作为高层次的人体语义信息,人体骨架也常作为有效的辅助信息被应用于其他研究任务中。例如,在行人重识别(Person Re-identification)的任务中,人体骨架信息常被用于辅助进行身体部位的检测,以解决不同图片间存在的空间语义不对齐(misalignment)问题。近期,我们会在另一篇文章中详细讲解在 CVPR 2019 上发表的一篇关于行人重识别的学术论文。在该论文中,为了解决行人重识别中存在的空间不对齐的实际挑战,我们借助于更细粒度的稠密语义(Dense Pose)来帮助网络学习鲁棒的特征。

  论文:Densely Semantically Aligned Person Re-identification, CVPR, 2019

  Zhizheng Zhang, Cuiling Lan, Wenjun Zeng, Zhibo Chen

  作者简介

微软发布Windows Vision Skills预览版,轻松调用计算机视觉API-冯金伟博客园

  兰翠玲,微软亚洲研究院智能多媒体组主管研究员,从事计算机视觉、信号处理方面的研究。研究兴趣包括行为识别、姿态估计、行人重识别、视频分析等,并在多个顶级会议、期刊上发表了 30 篇论文。