刷新一次,生成一张逼真假脸:用英伟达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

相关文章

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

C/C++随机数生成的五种方法

《C/C++随机数生成的五种方法》C++作为一种古老的编程语言,其随机数生成的方法已经经历了多次的变革,早期的C++版本使用的是rand()函数和RAND_MAX常量,这种方法虽然简单,但并不总是提供... 目录C/C++ 随机数生成方法1. 使用 rand() 和 srand()2. 使用 <random

Flask 验证码自动生成的实现示例

《Flask验证码自动生成的实现示例》本文主要介绍了Flask验证码自动生成的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 目录生成图片以及结果处理验证码蓝图html页面展示想必验证码大家都有所了解,但是可以自己定义图片验证码

Python如何在Word中生成多种不同类型的图表

《Python如何在Word中生成多种不同类型的图表》Word文档中插入图表不仅能直观呈现数据,还能提升文档的可读性和专业性,本文将介绍如何使用Python在Word文档中创建和自定义各种图表,需要的... 目录在Word中创建柱形图在Word中创建条形图在Word中创建折线图在Word中创建饼图在Word

spring @EventListener 事件与监听的示例详解

《spring@EventListener事件与监听的示例详解》本文介绍了自定义Spring事件和监听器的方法,包括如何发布事件、监听事件以及如何处理异步事件,通过示例代码和日志,展示了事件的顺序... 目录1、自定义Application Event2、自定义监听3、测试4、源代码5、其他5.1 顺序执行