假脸检测论文
假脸检测论文
深度换脸视频以假乱真,危害网络安全。
所幸最近有一门先进的计算机科学擅长辨别假视频:用算法识别视频的处理痕迹;并在照片或视频中添加特殊设计的噪点,通过欺骗人脸检测算法起到抵御作用。
有望从源头上消灭“深度换脸”。
深度换脸(deepfake)视频往往相当逼真,未经专业训练,肉眼很难辨别。不管是作为个人复仇的工具,还是为了操纵金融市场,抑或是破坏国际关系的稳定,换脸视频都从根本上颠覆了我们一直坚信的“眼见为实”。
但这种颠覆将到此为止。
大部分深度换脸视频的制作过程是这样的:向一个计算机算法展示同一个人的多张图像,然后让它利用所看到的图像,生成新的人脸图像,同时合成这个人的声音。因此,其声音和画面都能达到以假乱真的效果。
早期的深度换脸视频没有考虑到正常人眨眼的次数,笔者的研究团队能够侦测出这类假视频。但如今的换脸视频已经更新换代,所以我们的研究也在不断推进。
现在,我们可以通过仔细观察特定几帧画面的像素,识别视频的处理痕迹。此外我们还更进一步,开发了一项积极措施,保护个人免受换脸视频所害。
寻找瑕疵
在最近的两篇研究论文中,我们探讨了如何检测带有瑕疵的深度换脸视频,并且这些瑕疵是伪造者无法轻易修复的。
当深度换脸视频的合成算法生成新的面部表情时,新图像中人的头部位置、光照条件以及人到相机的距离并不总是与源图相匹配。为了使这些假面孔融入周围的环境,伪造者必须对它们进行几何变换,包括旋转、调整大小或以其他方式扭曲,最后生成的图像就会产生数码失真。
在经过“大整”的视频中,你可能会看出失真的痕迹,比如模糊边框和人工磨皮,看起来明显被修改过。而即使是“微整”的视频,也会留下证据。
我们已经训练了一套算法,能够识别人眼区分不了的失真。
如果换脸视频中的人没有直视摄像头,这些失真痕迹就会发生变化。拍摄真人的视频会显示其面部在三维空间中的移动状态,但深度换脸算法还没法在三维空间里制作人脸。相反,它们只能生成一张常规的二维人脸图像,然后尝试旋转、调整大小和扭曲图像,使其与人的视线方向保持一致。
在这方面,它们的火候也还不够,这就为侦测提供了机会。我们设计了一个算法,能够计算图像中人的鼻子指向哪个方向,还可以根据人脸轮廓测量出头部的方向。在真人视频中,这些方向都是彼此对齐的。但深度换脸视频往往会出现错位。
当计算机把尼古拉斯·凯奇(Nicolas Cage)的脸安在伊隆·马斯克(Elon Musk)的头上时,它可能无法将脸和头正确对齐。
抵御伪造
侦测深度换脸视频这门科学实际上就是一场军备竞赛。伪造者的杜撰能力会越来越强,所以,我们的研究也要努力跟上,甚至领先一步。
假如能够找到一种方法,影响生成换脸视频的算法,削弱其能力,那么我们就能更好地识别出假视频。
最近,我的研究团队就做到了。
在上图中,左图是我们处理之前的图像,算法可以轻松检测到人脸。在中间的照片里,我们添加了一些干扰因素,使算法检测到其他人脸,但检测不到真实的人脸。右图显示了我们对图像进行的更改,已增强 30 倍。
人脸图库是由算法组合而成的,这些算法处理了数千张在线照片和视频,并使用机器学习检测和提取人脸。计算机看到一张班级合影,就可能侦测出所有学生和老师的面孔,然后把这些面孔添加到图库中。当图库中有了大量高品质的人脸图像时,最终的深度换脸视频就更有可能成功骗过受众的眼睛。
我们找到了一种方法:可以 在数码照片或视频中添加特殊设计的噪点。 这些噪点人眼不可见,但却可以欺骗人脸检测算法。它可以隐藏人脸探测器用于定位面部的像素模式,并在没有人脸的地方(比如一小片背景或衣服上的一块正方形)创建“诱饵”,暗示这里有一张脸。
真脸少了,“假脸”多了,训练数据就会受到污染,深度换脸算法生成假脸的能力也会随之减弱。这不仅延缓了深度换脸视频的制作过程,也能够增加视频瑕疵,降低检测难度。
未来,我们希望能把这个算法应用到任何用户上传至社交媒体或其他在线站点的任何图像上。在上传过程中,算法可能会询问对方:“你想保护这个视频或图像中的人脸不被用于深度换脸吗?”如果用户选择“是”,那么该算法就会给视频或图像添加数字噪点。网上的人还是可以看到其中的人脸,但在试图模仿它的算法面前,它们又被有效地隐藏了起来。
文 | 快公司编辑部
翻译 | 李美玉
编辑 | 一块糕
图片 | 网络
挖掘创新是《快公司》一以贯之的行事方法论,然而,关于“创新是什么”,“创新在哪儿”的议论往往莫衷一是。其实,创新本就是一场没有边界和限制的头脑风暴,每一次刷新都是颠覆。我们一直在寻找创新路上的并肩者,他们与众不同,不墨守成规,他们是这场风暴的中心。如果您身边有这样不懈尝试的“风暴发起者”,欢迎报名2019中国商业最具创意人物100榜单。
扫码报名,进入创新直通车
viola jones人脸检测原理
Viola-jones人脸检测算法是一种基于滑动窗口的目标检测算法,但它却克服了滑动窗口检测带来的低效问题,可以用于实时人脸检测,主要归功于以下三点:
我参考论文[1]实现了Viola Jones中提到的attention cascade检测框架,此处是 github传送门 。
下面进一步详细介绍整个检测原理。
基于滑窗的目标检测基本原理很简单,首先构建一个classifier(分类器),以人脸检测为例,分类器的工作是判断给定大小的图像的是否为人脸,用该分类器从左至右从上到下扫描整幅图像,扫描获取的部分图像称为子窗(文章中子窗大小为24x24像素),当分类器判断子窗是人脸时,即完成了人脸检测。
这样处理有个问题,如果图像中包含的人脸变大了,此时采用固定大小的子窗就无法进行检测。通常有两种解决方法,1. 采用image-pyramid(图像金字塔),也就是通过resize获得多种不同大小图像并堆叠在一起,用固定大小分类器同时对所有图像进行扫描;2. 采用不同大小的分类器进行扫描。文章中用到的是第二种方法,尽管如此,虽然避免了调整图像大小带来的计算开销,但不同大小的分类器意味着有更多子窗需要进行处理。
如何构建一个足够快的分类器来对每个子窗进行快速判断。
分类器的构建有两种方式,一种是pixel-based(基于像素),另一种是feature-based(基于特征)。当把神经网络作为图像分类器时,输入是图像的像素值,即基于像素的分类器。用图像像素作为输入不包含任何和待分类目标有关的特定信息,往往训练这种分类器需要大量数据,并且分类过程较慢。基于特征的分类器就是先针对图像进行特征提取(HOG特征,SIFT特征等),再利用获取的特征进行分类。这种分类器不需要大量训练数据,且计算量一般会在特征计算部分,相对较小。
文章采用的是基于特征的分类器,选取了一种较为简单的特征即haar-like特征。利用矩形个数对可以将haar-like特征分为三类,分别由两个,三个,和四个 大小相同 的矩形组成。全部列举出来可以分为以下(a)(b)(c)(d)(e)五类(注意是五类不是五个,具体有多少个haar-like特征是由子窗大小决定的)。如下图所示(文章[1]中的图)。
当子窗大小给定后,我们可以用五个参数唯一确定 一个 haar-like特征,即特征种类(a/b/c/d/e),左上角x轴坐标,左上角y轴坐标,矩形的长,矩形的宽。对应的特征值等于位于白色矩形框中像素值总和减去位于黑色矩形框中的像素值总和。文章中用到的子窗大小为24x24像素,可以计算出来总共有162336个特征(把在子窗中所有可能位置和可能大小的特征全部列举出来)。利用haar-like特征进行分类只需两步:
haar-like特征有两个优点,第一是它是scale-invariant(不随图片大小而改变)的,第二是可以通过积分图像快速计算。简单的说下第一点的含义,例如我们用24x24像素的训练样本训练获取一组haar-like特征和对应的门限值,当对图像进行扫描时,子窗大小调整为SxS像素,此时只需将特征中的矩形大小按同样比例进行缩放(门限值同样需要缩放),计算所得的特征值依然是有效的。 积分图像是受卷积的微分性质启发而定义一种数据结构。积分图像定义: 其中 为积分图像, 为原图像。积分图像中 位置处的像素值等于原图中位于 的左侧和上方的所有像素值之和。有了积分图像我们就可以快速计算haar-like特征,以特征(a)为例,如下图所示。
S1到S6是积分图像在这六个顶点上的值。该特征值等于位于A中的像素总和减去位于B中的像素总和,而A中像素总和等于S5+S1-S2-S4,B中像素总和等于S6+S2-S3-S5,并且无论矩形多大,我们总能在固定时间内计算出特征值(6次索引操作和少量的加法乘法计算)。积分图像只需计算一次后续可以一直使用,事实上在算法实现时,我们只需保存样本的积分图像,原图像反而不用保存。
现在找到了一类特征用于构建分类器,和快速计算该类特征的方法。分类器是由一组特征构成的,而不是一个,如何找到一组有效的特征。
文章列举了前人的一些特征选取方法(此处就不列举了),它们虽然取得了一定的效果,但最终选出来的特征数量还是太多。文章将adaBoost算法用于特征选取(创新点),即每次训练的弱分类器的过程看做特征选取的过程,一次从162336个特征中选取一个特征(同时还包括了对应的门限值,极性,加权误差)。
adaboost算法就不详细介绍了,它的基本思想是训练一系列“弱”分类器,组成一个committee(即每个弱分类器都有投票权,但是权重不同,加权误差越小的弱分类器权重越大)。adaboost采用迭代训练方式,给定一个t阶committee,如何寻找第t+1个弱分类器和对应的权重,以最小化在一定分布下的训练样本的加权指数损失。这个优化过程可以转换为对训练样本的分布进行调整(即增大上一轮错误判断的样本的权重,减小正确判断的样本权重),在调整后的样本分布下寻找最小化加权0-1损失的弱分类器并计算对应的加权0-1损失。
可以利用adaboost找到一组特征构成分类器,使得该分类器有极高的准确率和召回率(这种分类器势必会有较大的计算量),这样会导致图像中的每一个子窗都享有同等的计算量,扫描一整幅图会有几十万甚至上百万子窗,总体计算量依然很大。实际上一幅图像中只有极少可能包含人脸的位置是我们感兴趣的,其他不包含人脸的子窗我们希望能够快速筛除,将更精细的计算用于包含人脸的子窗。
文章引入了attention-cascade的机制(注意力级联),即训练多个分类器进行级联,替代单一的分类器。结构如下图所示(文章[3]中的图)。
上图所示的分类器有三级,上一级的输出是下一级的输入,只有预测为正的样本才能传递给下一级,预测为负的样本直接舍弃。大部分非人脸子窗往往在前几级分类器就被舍弃,这样使得扫描每个子窗所需的平均计算量大大减小。
分类器是一级一级训练之后级联起来的,训练分类器时,整个级联分类器的假负率(fpr_overall)有一个训练目标(文章[1]中设置为10e-7),同时每一级有一对训练目标,即假正率和假负率。每级分类器训练的思想是在假负率极低的情况下(文章[1]中设置为0.005)尽量得到一个较低的假正率(文章中[1]中设置为0.5),即我们保证在正样本尽可能多的通过该级分类器的情况下尽量筛除更多的负样本。文章[3]通过一个松弛量来调节假正率和假负率。
下一级用到的训练数据是由所有的正样本和上一级输出的假正样本组成的,这样训练的好处是可以让处于级联后半部分的分类器“看到”更多负样本数据,缺点是训练后期假正样本很难获取,训练时间会比较长。
尽管我们获取了一个级联分类器,但依然不能保证对同一幅图中的一张人脸只会检测到一次(子窗相对人脸有所便宜或者缩放子窗大小都可能导致重复检测),如何消除重复检测,获得更好的检测效果。
文章[3]中说的较为简略,主要是针对检测框构建并查集,并对并查集中的候选框求平均得出最终的检测框。
文章[1]中是采用连通分量算法,计算每种大小检测框的置信度,根据置信度选取最终结果,但前提是检测器在图像中扫描的步进必须是1个像素,处理时间可能会比较长。
只能用于正脸检测,如果人脸朝屏幕内外或者在屏幕平面上旋转均有可能失效 在背景较亮,人脸较暗的情况下可能失效。 在有遮挡的情况下大概率失效。
一文看尽2018全年AI技术大突破:NLP跨过分水岭、CV研究效果惊人
量子位 出品 | 公众号 QbitAI
2018,仍是AI领域激动人心的一年。
这一年成为NLP研究的分水岭,各种突破接连不断;CV领域同样精彩纷呈,与四年前相比GAN生成的假脸逼真到让人不敢相信;新工具、新框架的出现,也让这个领域的明天特别让人期待……近日,Analytics Vidhya发布了一份2018人工智能技术总结与2019趋势预测报告,原文作者PRANAV DAR。量子位在保留这个报告架构的基础上,对内容进行了重新编辑和补充。这份报告总结和梳理了全年主要AI技术领域的重大进展,同时也给出了相关的资源地址,以便大家更好的使用、查询。报告共涉及了五个主要部分:
下面,我们就逐一来盘点和展望,嘿喂狗~
2018年在NLP 历史 上的特殊地位,已经毋庸置疑。
这份报告认为,这一年正是NLP的分水岭。2018年里,NLP领域的突破接连不断:ULMFiT、ELMo、最近大热的BERT……
迁移学习成了NLP进展的重要推动力。从一个预训练模型开始,不断去适应新的数据,带来了无尽的潜力,甚至有“NLP领域的ImageNet时代已经到来”一说。
正是这篇论文,打响了今年NLP迁移学习狂欢的第一枪。论文两名作者一是创始人Jeremy Howard,在迁移学习上经验丰富;一是自然语言处理方向的博士生Sebastian Ruder,他的NLP博客几乎所有同行都在读。两个人的专长综合起来,就有了ULMFiT。想要搞定一项NLP任务,不再需要从0开始训练模型,拿来ULMFiT,用少量数据微调一下,它就可以在新任务上实现更好的性能。
他们的方法,在六项文本分类任务上超越了之前最先进的模型。详细的说明可以读他们的论文:网站上放出了训练脚本、模型等:
这个名字,当然不是指《芝麻街》里那个角色,而是“语言模型的词嵌入”,出自艾伦人工智能研究院和华盛顿大学的论文Deep contextualized word representations,NLP顶会NAACL HLT 2018的优秀论文之一。
ELMo用语言模型(language model)来获取词嵌入,同时也把词语所处句、段的语境考虑进来。
这种语境化的词语表示,能够体现一个词在语法语义用法上的复杂特征,也能体现它在不同语境下如何变化。
当然,ELMo也在试验中展示出了强大功效。把ELMo用到已有的NLP模型上,能够带来各种任务上的性能提升。比如在机器问答数据集SQuAD上,用ELMo能让此前最厉害的模型成绩在提高4.7个百分点。
这里有ELMo的更多介绍和资源:
它由Google推出,全称是 B idirectional E ncoder R epresentations from T ransformers,意思是来自Transformer的双向编码器表示,也是一种预训练语言表示的方法。从性能上来看,没有哪个模型能与BERT一战。它在11项NLP任务上都取得了最顶尖成绩,到现在,SQuAD 2.0前10名只有一个不是BERT变体:
如果你还没有读过BERT的论文,真的应该在2018年结束前补完这一课:另外,Google官方开源了训练代码和预训练模型:如果你是PyTorch党,也不怕。这里还有官方推荐的PyTorch重实现和转换脚本:
BERT之后,NLP圈在2018年还能收获什么惊喜?答案是,一款新工具。
就在上周末,Facebook开源了自家工程师们一直在用的NLP建模框架PyText。这个框架,每天要为Facebook旗下各种应用处理超过10亿次NLP任务,是一个工业级的工具包。
(Facebook开源新NLP框架:简化部署流程,大规模应用也OK)
PyText基于PyTorch,能够加速从研究到应用的进度,从模型的研究到完整实施只需要几天时间。框架里还包含了一些预训练模型,可以直接拿来处理文本分类、序列标注等任务。
想试试?开源地址在此:
它能主动打电话给美发店、餐馆预约服务,全程流畅交流,简直以假乱真。Google董事长John Hennessy后来称之为“非凡的突破”,还说:“在预约领域,这个AI已经通过了图灵测试。”Duplex在多轮对话中表现出的理解能力、合成语音的自然程度,都是NLP目前水平的体现。如果你还没看过它的视频……
NLP在2019年会怎么样?我们借用一下ULMFiT作者Sebastian Ruder的展望:
今年9月,当搭载BigGAN的双盲评审中的ICLR 2019论文现身,行家们就沸腾了: 简直看不出这是GAN自己生成的 。
在计算机图像研究史上,BigGAN的效果比前人进步了一大截。比如在ImageNet上进行128×128分辨率的训练后,它的Inception Score(IS)得分166.3,是之前最佳得分52.52分 3倍 。
除了搞定128×128小图之外,BigGAN还能直接在256×256、512×512的ImageNet数据上训练,生成更让人信服的样本。
在论文中研究人员揭秘,BigGAN的惊人效果背后,真的付出了金钱的代价,最多要用512个TPU训练,费用可达11万美元,合人民币76万元。
不止是模型参数多,训练规模也是有GAN以来最大的。它的参数是前人的2-4倍,批次大小是前人的8倍。
研究论文:
前前后后,团队只用了16个AWS云实例,每个实例搭载8块英伟达V100 GPU,结果比Google用TPU Pod在斯坦福DAWNBench测试上达到的速度还要快40%。这样拔群的成绩,成本价只需要 40美元 ,在博客中将其称作人人可实现。
相关地址: 博客介绍:
今年8月,英伟达和MIT的研究团队高出一个 超逼真 高清视频生成AI。
只要一幅动态的语义地图,就可获得和真实世界几乎一模一样的视频。换句话说,只要把你心中的场景勾勒出来,无需实拍,电影级的视频就可以自动P出来:
除了街景,人脸也可生成:
这背后的vid2vid技术,是一种在生成对抗性学习框架下的新方法:精心设计的生成器和鉴别器架构,再加上时空对抗目标。
这种方法可以在分割蒙版、素描草图、人体姿势等多种输入格式上,实现高分辨率、逼真、时间相干的视频效果。
好消息,vid2vid现已被英伟达开源。
研究论文:
GitHub地址
相关地址
相关地址
上一篇:母婴商城毕业论文
下一篇:毕业论文要填问卷