分享到微博 分享到人人 分享到LinkedIn 分享到Email
视频人脸模糊技术:新闻编辑的福音

新闻无处不在。从电视里的《新闻联播》、《新闻30分》,到手机中的《今日头条》、《腾讯新闻》,随着互联网的不断发展,新闻报道的数量,以及报道中的视频数量,都在不断增加。

这对读者来说也许是好事,意味着有更多、更丰富的内容可以浏览,对编辑来说或许意味着某种灾难,因为他们要干的活更多了。请看下图。

市井中的小偷也有非常高的隐私意识。即便是被抓住接受采访,他还是会强调“你得给我打上马赛克”。新闻编辑在这里的任务,就是将采访得到的源视频中的人脸部分进行打码。这是一项纯手工的工作,编辑需要对视频每一帧中的人脸都进行框选、打码。诸位可以想象一下,如果每天都有无数需要打码的新闻视频交给编辑进行人工处理,该是多么繁重的任务。

为此,微软研究院提出了一套基于人工智能算法的视频人脸模糊解决方案。该算法能够对视频进行自动处理,将其中出现的不同人物返回给用户。用户只需要轻点鼠标,选择想要打码的人物,相应人物在视频中的所有露脸区域都将被打上马赛克。大体的算法示意,请看下图。

上面的示意图也许太过简练了。关于这套人脸模糊系统具体是如何工作的,下图是更为详细的解读。

本质上,我们的目标是找出所有人脸的出现位置,并把同一个人的所有人脸连接起来。为此,我们需要三个算法——人脸的检测、跟踪、识别。

检测。首先,我们需要定位人脸可能出现的位置。为了保证人脸尽量不被漏掉,我们使用了一个基于深度网络的、具有高召回率的人脸检测器。这个检测器对视频的每一帧都进行检测,记录每个人脸对应的矩形框位置。对于人脸检测的更详细信息,请参见文末的附录。

跟踪。所谓人脸跟踪,简言之就是在某一帧中给出了一个人脸框,在其前几帧和后几帧都找到与之最相似的框。人脸跟踪在系统里的作用主要有二,一是连接相邻帧的检测框,因为人脸检测只负责每一帧的人脸定位,不负责帧间的连接;二是将当前帧的人脸检测框延续到前后几帧,这样就能定位到那些检测不到的侧脸了。

识别。经过了人脸检测和跟踪,我们已经能够处理单个镜头内的大多数问题。然而,如果视频中存在镜头切换,或者人物的遮挡,我们就需要人脸识别技术。所谓人脸识别,就是计算两张给定人脸的相似度,如果高于某个相似度,我们就认为这两张脸是同一人。我们训练了一个基于深度网络的人脸识别模型,对于不同镜头里的两张人脸,根据相似度对它们进行连接。最后,我们的系统将整个视频中不同人物的人脸都各自连接起来,提供给用户进行挑选。对于人脸识别的更详细信息,请参见文末的附录。

时间复杂度方面,我们的系统在Azure的CPU服务器上能够实时处理720p的视频,并且能够以2倍时长处理1080p的高清视频。

微软研究院与微软Azure云平台已经就视频人脸模糊技术建立了联系,该系统已经搭载于云平台上作为一项云服务。同时,该项目也受到了多家智能摄像机公司的广泛关注,正在进行下一步的合作。

附录

微软认知服务包含了微软研究院的多种人工智能技术,例如Video API,Face API,Emotion API等等,大部分的API都能够免费在线试用。上文中提到的人脸检测和识别技术属于Face API,而人脸跟踪技术则包含于Video API中。

作者简介

谢文轩,微软亚洲研究院副研究员,网络媒体组成员,曾担任ECCV、CVPR等顶级会议的评审委员。他的研究兴趣包括计算机视觉和机器学习。