刷新一次,生成一张逼真假脸:用英伟达StyleGAN做的网站,生出了灵异事件

本文主要是介绍刷新一次,生成一张逼真假脸:用英伟达StyleGAN做的网站,生出了灵异事件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

栗子 岳排槐 假装发自 凹非寺
量子位 出品 | 公众号 QbitAI

一个新网站在国外火了。

玩法很简单,每次刷新这个网站的页面,都能出现一张人脸。大多数情况下,都是一张眉目清晰、面含微笑的和善人脸。

比如这样:

640?wx_fmt=jpeg

不过,这个网站却被一众国外媒体,集体以“可怕”两个字来形容。

为什么?

来,大家先仔细看看这些笑脸。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

不知你能否看出可怕之处?

其实,这些人脸都是假的。

每次刷新这个网站,出现的那张高清笑脸,尽管看起来无比真实,但都是从来不曾在世界上出现过的。这些笑脸不是真人的笑脸。

都是AI生成的。

光荣归属英伟达

之所以能生成人脸,是因为背后有一个针对人脸进行预训练的模型。每次你刷新网站时,一个神经网络就会基于512维向量,从零生成一个全新的人脸。

而这个网站的创建者,名叫Philip Wang。社交网站的资料显示,他是一位Uber的软件工程师。住在旧金山。

他在Facebook上解释了为什么要建这样一个网站。

最近一群天才的英伟达研究员,发布了最先进的生成对抗网络StyleGAN。我决定自己动手搞个事情,提高大众对这个技术的认知。

显然,Philip Wang的目的达到了。

他搭建的这个网站,用一种超级简单的方式,展示了StyleGAN能生成多逼真的假人脸。再给几个示例,大家一起看看。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

什么是StyleGAN?

这是英伟达2018年底发布的最新研究成果。十天前,英伟达正式给这个模型命名为StyleGAN。顾名思义,GAN的生成器,是借用风格迁移的思路重新发明的。

而且英伟达官方还开源了代码。

这个实现可以用Linux跑,也可以用Windows跑,但墙裂推荐大家用Linux跑,为性能和兼容性着想。此外还需要Python 3.6和TensorFlow 1.10以上 (支持GPU) 。

640?wx_fmt=png

 StyleGAN架构

和官方代码实现一起发布的,还有Flickr高清人脸数据集。那些几可乱真的人脸,就是StyleGAN吃了这个数据集,才生成的。

数据集里包含7万张1024×1024高清人像。英伟达说,这些照片在年龄、种族、以及图片背景上,都有很强的多样性。

640?wx_fmt=gif

当然,StyleGAN不止能生成人脸,英伟达还提供了猫、汽车、卧室的预训练模型。

如果你也想自己动手试一下,下面是传送门。

代码实现:
https://github.com/NVlabs/stylegan

FFHQ数据集:
https://github.com/NVlabs/ffhq-dataset

论文:
https://arxiv.org/abs/1812.04948

“可怕”

不过,媒体纷纷用“可怕”“毛骨悚然”“最毛骨悚然”,来描述网站的画风。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

一方面,是不敢相信这些细节丰富、表情逼真的人脸,竟然全部都是假的。另一方面,这些生成的假脸,并不是每一次都看起来那么完美。

每次有明显的问题出现时,确实让人感觉有点可怕。

640?wx_fmt=jpeg

网站上线之后,许多小伙伴也都欣赏到了奇怪的图景:

少只耳朵,算是很常见的缺陷了。

640?wx_fmt=png

妹子微笑着,可能没发现旁边有只幽灵。

640?wx_fmt=jpeg

少年仿佛被不明力量攻击了。

640?wx_fmt=jpeg

当然,看起来奇奇怪怪,还不是最可怕的地方。

这一张张并不存在的假脸,甚至让人浮想联翩。

神展开

有个叫Darwindemon (达尔文恶魔)的 reddit网友讲了一个更惊悚的故事,说是发生在自己身上。故事是这样的:

2月14日那天,她闲来无事,就在房间里不停地刷这个网站。看着一张一张逼真的脸,也不知道是不是真的不存在,想着说不定有人刚好长这样,谁说得清呢。

刷着刷着,突然发现屏幕里的脸和自己一模一样,脸颊上的痣都一样。她吓呆了,不停地说服自己,这一定是巧合。

然后,她跑去客厅沙发,靠在男票肩上找安慰。却发现男票还是玩手机,对她的出现毫无反应。这时有人敲门,男票去开门,一个妹子走进来,男票还亲了她。完全当她不存在。

不管怎样试图引起男票的注意,都是失败。不可能的,男票怎么会在情人节开这种玩笑?

再后来,她发现想不起自己是谁了。

手机里已经没有一条消息了,相册空了,邮箱空了,Facebook也没有登录痕迹了。

她真的不存在了。

找来找去,只有Reddit登录着,但也没有身份信息。于是,达尔文就在那里发帖,希望观众们帮她找回自己。

这则求助帖的人气急速上涨,18小时已有4.4k热度。

关于这个不存在的人,大家都有很多话想说。

640?wx_fmt=png

有人问:你有没有再刷新一下?

Darwin_demon:当下就刷了,生成了不认识的脸。

有人回:那你又把一个人给抹杀了

这也是她唯一的回复。

不过,楼下观众的讨论没有停,大胆的想法一浪一浪。

640?wx_fmt=png

有人说:反正你也不存在了,把找到的个人信息都发到Reddit上,说不定系统就挂掉了呢。

有人附和:是啊是啊,社会安全码 (SSN) ,信用卡信息之类的都来点吧。

有人说:反正你也不存在了,去抢银行吧,然后就有钱了。

有人反对:没法跟别人互动的话,钱就没用了,还不如去抢商店,抢来的东西还能用。

有人说:

我刚才看到我表弟了。

二次编辑:我怎么不记得我有个表弟了,他叫什么来着?

有人回:

你表弟去世五年了。

然后,表弟真的来了:

怪不得我有座坟。

640?wx_fmt=png

One More Thing

为什么会有这种故事?

因为这个网站的名称叫:

https://thispersondoesnotexist.com/

(意思是:这个人不存在.com)

640?wx_fmt=jpeg

亲测手机也能打开刷新。

谁要不小心刷到了自己,可以留言求助……

作者系网易新闻·网易号“各有态度”签约作者


加入社群

量子位现开放「AI+行业」社群,面向AI行业相关从业者,技术、产品等人员,根据所在行业可选择相应行业社群,在量子位公众号(QbitAI)对话界面回复关键词“行业群”,获取入群方式。行业群会有审核,敬请谅解。


此外,量子位AI社群正在招募,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式。

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

640?wx_fmt=jpeg

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「好看」吧 !



这篇关于刷新一次,生成一张逼真假脸:用英伟达StyleGAN做的网站,生出了灵异事件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/403253

相关文章

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

禁止平板,iPad长按弹出默认菜单事件

通过监控按下抬起时间差来禁止弹出事件,把以下代码写在要禁止的页面的页面加载事件里面即可     var date;document.addEventListener('touchstart', event => {date = new Date().getTime();});document.addEventListener('touchend', event => {if (new

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

poj 1287 Networking(prim or kruscal最小生成树)

题意给你点与点间距离,求最小生成树。 注意点是,两点之间可能有不同的路,输入的时候选择最小的,和之前有道最短路WA的题目类似。 prim代码: #include<stdio.h>const int MaxN = 51;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int P;int prim(){bool vis[MaxN];

poj 2349 Arctic Network uva 10369(prim or kruscal最小生成树)

题目很麻烦,因为不熟悉最小生成树的算法调试了好久。 感觉网上的题目解释都没说得很清楚,不适合新手。自己写一个。 题意:给你点的坐标,然后两点间可以有两种方式来通信:第一种是卫星通信,第二种是无线电通信。 卫星通信:任何两个有卫星频道的点间都可以直接建立连接,与点间的距离无关; 无线电通信:两个点之间的距离不能超过D,无线电收发器的功率越大,D越大,越昂贵。 计算无线电收发器D

hdu 1102 uva 10397(最小生成树prim)

hdu 1102: 题意: 给一个邻接矩阵,给一些村庄间已经修的路,问最小生成树。 解析: 把已经修的路的权值改为0,套个prim()。 注意prim 最外层循坏为n-1。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstri

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

poj 3723 kruscal,反边取最大生成树。

题意: 需要征募女兵N人,男兵M人。 每征募一个人需要花费10000美元,但是如果已经招募的人中有一些关系亲密的人,那么可以少花一些钱。 给出若干的男女之间的1~9999之间的亲密关系度,征募某个人的费用是10000 - (已经征募的人中和自己的亲密度的最大值)。 要求通过适当的招募顺序使得征募所有人的费用最小。 解析: 先设想无向图,在征募某个人a时,如果使用了a和b之间的关系

Thymeleaf:生成静态文件及异常处理java.lang.NoClassDefFoundError: ognl/PropertyAccessor

我们需要引入包: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>sp