傅立叶变换还能画简笔画?谷歌工程师开发的这个试玩网站火了| 附资源

news/2024/5/11 3:38:33/文章来源:https://blog.csdn.net/yH0VLDe8VG8ep9VGe/article/details/86610986
晓查 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

无论是处理声音和图像信号,都必须用到傅立叶变换。其实除了这些“正经”用途,它还能做一些有意思的事情。

最近,一位名叫Jez Swanson的谷歌工程师自己写了篇博客,教你用傅立叶变换画出任何简笔画。目前已在Twitter已经收获了3000+点赞。

640?wx_fmt=png

什么是傅立叶变换

简而言之,傅里叶变换是将某些东西分解成一系列正弦波,而正弦波是最简单的周期函数。

我们先从一些简单的例子开始,比如下面的波形可以分解成两个正弦波。

640?wx_fmt=png

反过来说,傅里叶变换也是组合波形的一种方式。把这两个正弦波叠加起来,就得到上方的波形。

即使是看起来并不平滑的方波,也能分解成正弦波。

640?wx_fmt=png

但是方波和前面波形不同,它在进行叠加操作的时候会有困难。因为方波的成分包含无数正弦波。但是在现实世界中,我们不可能能叠加无限多的波形。

如果我们截取其中主要的部分,就能得到近似的方波波形。随着高频的成分越来越多,图形也会越来越接近方波。

640?wx_fmt=gif

接下来,我们在互动页面上随便画出一个波形,

通常计算机会离散地记录下波形上一些点的数值,然后对它们做傅立叶变换,最终得到的波形与原始波形非常相似

640?wx_fmt=png

这也是计算机处理声音的方式,MP3文件就是这么做的。

通常计算机会把声波存储为一系列点,点的密集程度决定了舍弃掉多高的频率。电脑只存储那些前面低频部分,忽略声音里的高频,这就是MP3压缩的原理。

从三维角度理解

上面简单介绍了傅立叶变换的基本知识。如果你学过一点三角函数的知识,就知道正弦波其实和圆有密切的关系。

我们一边画圆,一边让绘制点随着时间前进,就得到在三维空间中的螺旋线图像。

640?wx_fmt=gif

它从侧面来看就是正弦波:

640?wx_fmt=gif

叠加的“轮子”

既然正弦波可以理解成圆周运动的投影,那么傅立叶变换就可以理解成不同圆周运动的叠加。

每个轮子的转速代表着频率,轮子的半径代表着振幅。

理解了以上内容,我们就可以用“三维正弦波”做一些有趣的事情,比如画一个胜利手势:

640?wx_fmt=png

在三维角度看,它是这样的:

640?wx_fmt=gif

我们可以将简笔画视为一个3D图形。想象一个人正在画一只手,那么这3D图形就代表了笔尖位置的变化。x、y维度代表笔尖位置,z维度代表笔尖所在的某个时刻。

在这里,我们使用的是3D螺旋正弦波的组合,来得到我们的图像。

当我们从正面观察这个3D图像时,就会看到许多圆圈的叠加运动。我们把一个圆围绕另一个圆旋转叫做“本轮”(epicycle)。

和前面叠加出方波一样。我们只用几个圆圈就可以很好地逼近简笔画。前面的大圆确定图像的大致形状,而最后的小圆让边缘更锐利。

640?wx_fmt=png

作者Jez已经把它做成Demo放在网站上试玩,还用它画了一幅自画像。

640?wx_fmt=png

作者自画像的傅立叶变换

最后奉上Jez本人照片:

640?wx_fmt=png

自己动手

如果你觉得很酷炫,可以去Jez的个人博客网站去尝试。

http://www.jezzamon.com/fourier/index.html

他还公布了交互部分的源代码。这些交互元素大部分是用JS编写的。

另外Jez还简单介绍了傅立叶变换是如何用于JPEG图像压缩的,这部分内容使用了Python和Jupyter Notebook。并把说明文档放在了Python文件夹中。

如果你想折腾JPEG图像压缩原理的部分,还需要安装Jupyter,以及NumPy,PIL,SciPy和Matplotlib。

学习资料

Jez这篇博客的介绍还是非常简略的,即使你完全没有数学基础也能上手。如果想更深入的学习傅立叶变换,Jez也给出了更多学习教程。

傅立叶变换的交互式学习指南:
https://betterexplained.com/articles/an-interactive-guide-to-the-fourier-transform/

数学播客“3Blue1Brown”的视频教程:
http://www.bilibili.com/video/av19141078/

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


加入社群

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


此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。


进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)

诚挚招聘

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

640?wx_fmt=jpeg

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

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

喜欢就点「好看」吧 !



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_711975.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

程序员去交友网站找女友,结果意外了...

1024程序员节(今天是活动最后一天),CSDN旗下的码书商店为程序员放个“价”,全场所有书籍8折,电子产品可以拥有大额优惠券,购买前可加文末客服微信领取优惠券哦!卫衣原价249元,1024专…

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

栗子 岳排槐 假装发自 凹非寺量子位 出品 | 公众号 QbitAI一个新网站在国外火了。玩法很简单,每次刷新这个网站的页面,都能出现一张人脸。大多数情况下,都是一张眉目清晰、面含微笑的和善人脸。比如这样:不过,这个网站…

为了治好你的脸盲,这家表情包网站开源了一个明星识别器丨GitHub

郭一璞 发自 凹非寺 量子位 报道 | 公众号 QbitAI小鲜肉太多,让人分不清,需要AI替我识别,这又是谁家的爱豆。现在,有一家公司来拯救脸盲了,不是你熟悉的硅谷/后厂村大公司,而是一家动图表情包网站&#xff…

大型网站技术架构(四)网站的高性能架构

2019独角兽企业重金招聘Python工程师标准>>> 网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。 1、性能测试指标 1.1 响应时间 指应用执行一个操作需要的时间,指从发出请求到最后收到响应数据所需要的时…

只需三种手段,将传统的网站的性能提高 24%!

对于技术人而言,性能优化是一个亘古不变的话题。而随着框架、语言、库等工具的不断演进,传统的优化手段是否仍然适用?在创新的环境之下,又有哪些较为捷径的优化手段?在本文中,作者将以一年前的网站为测试对…

SCPPO(十一):网站发布中的问题锦集—ReportViewer版本问题

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan 【前言】 在小编的上篇博文《SCPPO:网站发布中的问题锦集—手动发布网站》中卖了个关子—遇到的问题(4)—部署过程中引用DLL与服务器不一致问题解决。当然在网站发布出…

SCPPO(十):网站发布中的问题锦集—手动发布网站

【前言】 现在做的项目是个维护性的项目,我们是第三期的末尾,最近正忙着验收。当然在验收前会有些功能需要修改,另外也会有新的需求需要实现;再加之最近有企业核对数据等等,所以网站的发布变成主要的工作之一。当然自己…

阿里云个人网站免费绑定SSL证书(超详细图文教程)

前言 一年前搭建了个人网站,由于个人小程序绑定必须需要绑定HTTPS,于是乎绑定了SSL证书,最近阿里云一直在提醒SSL证书一年到期,提示续费;SSL证书续费几千,于是乎查找方案,阿里云提供个人免费SSL…

WordPress网站访问慢解决方案(超详细图文教程)

前言 之前自己搭建一个WordPress个人网站:https://zhanghan.xin;最近发现访问比较慢,于是乎进行了排查,下面是优化的方案。 优化前: 加载耗时:21秒 优化后: 加载耗时:250毫秒 优化后…

漫画:为什么一到年底,部分网站就会出现日期混乱?

作者 | 漫话编程责编 | Elle2019年最后一天,在家里看着跨年晚会,享受着这一年最后一天的闲暇时光,女朋友在旁边玩手机。看了一会之后她突然问我一些很奇怪的问题。于是我拿过他的手机,看到了下面这一幕:这是微信官方出…

只需 1 分钟,这个网站用 AI 分离歌曲的人声、伴奏和乐器声

整理 | Just出品 | AI科技大本营(ID:rgznai100)疫情期间,在家待着闲来无事,一些技术人员就喜欢以技术的方式找点乐子,顺带赚钱最好了。将歌曲中的人声和乐器声分离是一件让想使用音乐伴奏的人头疼的事情,传…

投毒、伪装、攻击,DNS 欺骗和钓鱼网站如何一步步诱人掉入陷阱?

【编者按】这篇文章将详细讲解DNS欺骗(DNS投毒)及钓鱼网站原理知识,并通过Ettercap工具复现某购物网站的钓鱼漏洞,本文的重点是让您对ARP欺骗、DNS欺骗和钓鱼攻击有一定认识。真心希望这篇基础文章对您有所帮助,也欢迎…

常见网站架构图

我们一般的网站架构图 涉及的知识点: 1.提供虚拟ip地址和负载均衡功能的LVS集群 1.1 LVS的两种主要模式NAT和DR模式 2.全链路监控组件我们一般选择美团的Cat或者zipkin的skywalking 3.限流策略: 3.1 漏桶策略 优点:消费速度以恒定的速度进行…

access后台链接mysql_Access为后台数据库的网站统计系统

一个能对访问者进行编号、记录访问次数、IP、时间的统计制作实例我以ACCESS库为例子,其实用SQL SERVER库也只要改一下链接库的语句就得啦,库结构如下库文件名: CONT.ASP 本来是CONT.MDB但在建好后把扩展名改为了ASP,以防库被下载。表名&…

Siri 自动拨打 911、Google 建筛查网站、IBM 测药物成分,国际抗疫在行动!

作者 | 马超责编 | 胡巍巍出品 | CSDN(ID:CSDNnews)最近,我国新冠疫情逐渐得到控制,疫情最为严重的湖北地区确认病例也连续几日降为零,世卫组织也宣称中国的防控措施至少避免了10万病例的感染,不过在中国的…

独立ip 公司文件服务器,企业在外贸建站时,为什么要选择独立IP的服务器?

企业在外贸建站时,有一部分站长会为了让网站做的更加出彩选择在服务器方面压缩成本,所以会拒绝使用独立服务器,转而选择一些较为经济的空间。这其实是一种错误的做法,服务器是网站运营的根本,即使在网站设计方面节约一…

AI 开发者不容错过的 20 个机器学习和数据科学网站

作者 | Oleksii Kharkovyna责编 | 屠敏出品 | CSDN(ID:CSDNnews)以下为译文:如今,科技界最热门的话题莫过于最先进、最前沿、最令人兴奋的数据科学和机器学习了。然而,要想紧跟该领域的进步和发展&#xff…

怎么用html做随机颜色,JavaScript 实现网站标签随机颜色的方法

摘要: 今天帮群你的一个叫坏小莫,他说是为帮群里,我就写个教程做个记录吧!“我走在乡间的小路上,看到自己的标签不太漂亮”,好吧,最近无聊修改了下自己网站侧边栏标签的样式,修改成了…

文科出身敲出 Instagram,被小札“挤”走,建新冠追踪网站

作者 | 年素清责编 | 伍杏玲出品 | 程序人生(ID:coder_life) Instagram以滤镜和图片质量为核心,是全球最火的在线图片及视频分享的社交应用软件之一,而Instagram也是硅谷的一个传奇。说起来你可能不信,这个…

html%3c arial%3e,【博客园】样式美化+网站统计访问+添加网易云背景音乐

该样式对应的皮肤:SimpleMemory,请记得更换。还有目录生成代码默认是生成h2,h3的,需结合自己的需要替换为h1,h2的。我参考别人的教程,对博客园样式做了修改。后来忽然被原创发消息:说我用了他的…