纯文本输入,就能绘制精美数学图表:CMU绘图工具Penrose登GitHub热榜 | SIGGRAPH

2020 年 6 月 7 日 量子位
鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

画数学插图令人头秃?

现在,CMU的研究人员们开发出了一款实用工具Penrose

纯文本的方式输入,根据语言描述,就能自动生成数学图表。

集合论:

几何:

线性代数:

光线追踪:

都不在话下。

整个过程,不需要手动进行繁琐调整,只需在软件中用编程语言的方式,描述数学表达式。

并且,这些表达式不仅限于基本功能,而是可以表达任何数学领域的复杂关系。

这一研究成果,入选计算机图形学顶会SIGGRAPH 2020。

在GitHub上,也得到了3500标星,登上热榜。

有网友认为:Penrose,就像是科学图表中LaTeX。

纯文本绘制数学图表

用LaTeX编辑数学公式的快乐,谁用谁知道。

那么Penrose具体是怎么绘制出数学图表的呢?

比如,要画出这样一个集合关系:

在软件界面中,完成这样的输入就能自动生成:

如果对配色、布局不满意,点击「resample」,系统会提供其他不同的选择:

也可以自己手动在「sty」文件中进行调整:

研究人员还提到,该系统支持与基于Web的应用程序集成。并且,Penrose IDE能够提供自动语法高亮和自动补全功能。

不过,目前Penrose尚处在初期版本,未向公众开放。研发团队表示,他们正在快马加鞭,希望能尽快上线公开版本。

数学符号如何变成精美图表?

作者之一、CMU计算机科学和机器人学助理教授Keenan Crane表示,他们打造Penrose的目的,是让所有人都能拥有数学家一般,绘制漂亮图表的能力。

为了实现这一目标,Penrose围绕两个设计原则来实现:

  • 通过从数学符号到视觉图标的映射来规定图表;

  • 通过求解相关有约束的优化问题来合成图表。

第一步,是用编程语言来规定数学对象及其可视化表示。

具体而言分为三个部分:

  • Substance:类似于HTML,用来指定内容。

  • Style:类似于CSS,用于调整外观和可视化表示。

  • Domain:声明数学领域中可用的对象、关系和符号。

需要说明的是,这并不意味着用户想要上手Penrose,必须学会三种语言。

实际上,大多数用户只要掌握Substance语言,类似这样:

Set A,B
intersecting(A,B)
set C := intersection(A,B)
Label A $\text{Circles}$
Label B $\text{Diagrams}$
Label C $\text{Venn Diagrams}$

Domain和Style就交给专业人士,要用的时候调用软件包就行了。

第二步,使用约束性优化来合成满足给定规范的图。

该方法主要受到手绘图的启发。
             

3500星,登上GitHub热榜

Penrose展现的效果,得到了网友们的点赞。

目前,Penrose的GitHub已经有3500标星,在Hacker News上也有399的热度。

有网友认为,想要理解数学概念,可视化是非常重要的手段,而Penrose可能会给数学教育带来很大的帮助。

还有网友表示,希望几何绘图软件Geogebra能集成这一功能。

不过,也有网友指出,简单的示例说明了系统的思想,但还是希望看到Penrose实现的更为复杂的数学概念可视化,以证明其确实可以表达数学领域的复杂关系。

传送门

论文地址:
http://penrose.ink/media/Penrose_SIGGRAPH2020.pdf

GitHub地址:
https://github.com/penrose/penrose

官网:
http://www.penrose.ink/

特惠福利 | 一站式音视频解决方案

想赶上直播电商、在线教育、小程序直播的风口?腾讯云音视频解决方案为您助力!
腾讯云推出9.9元产品体验包,包括云点播、云直播、实时音视频,总有一款适合你。识别二维码即可体验:


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


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


喜欢就点「在看」吧 !


登录查看更多
0

相关内容

ACM SIGGRAPH年度会议是关于计算机图形学和交互技术的理论和实践的全球规模最大,最具影响力的年度会议,通过教育,卓越和互动来激发进步。它们共有四个基本目标:通过社区忠诚度,贡献者质量,外部认可和竞争对手的反应来衡量的首要地位。学科专家和整个行业认可的领先优势。通过贡献者,委员会和社区满意度和参与度来衡量教育,互动和卓越的有效性。可持续的连续性,通过志愿者的承诺,社区利益和财务自给自足来衡量。 官网地址:http://dblp.uni-trier.de/db/conf/siggraph/index.html
Python图像处理,366页pdf,Image Operators Image Processing in Python
【干货书】图形学基础,427页pdf
专知会员服务
144+阅读 · 2020年7月12日
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
最新《自动微分手册》77页pdf
专知会员服务
98+阅读 · 2020年6月6日
《深度学习》圣经花书的数学推导、原理与Python代码实现
【新书】Python编程基础,669页pdf
专知会员服务
187+阅读 · 2019年10月10日
3 行代码 5 秒抠图的 AI 神器,根本无需 PS
大数据技术
20+阅读 · 2019年7月24日
那些酷炫的深度学习网络图怎么画出来的?
计算机视觉life
5+阅读 · 2019年4月12日
【资源】这本开放书籍帮你扫清通往ML的数学绊脚石
机器学习算法与Python学习
55+阅读 · 2018年10月28日
Python | Jupyter导出PDF,自定义脚本告别G安装包
程序人生
7+阅读 · 2018年7月17日
用于数学的 10 个优秀编程语言
算法与数据结构
13+阅读 · 2018年1月5日
28 款 GitHub 最流行的开源机器学习项目(附地址)
七月在线实验室
4+阅读 · 2017年12月18日
GitHub最著名的20个Python机器学习项目
全球人工智能
9+阅读 · 2017年12月7日
Seeing What a GAN Cannot Generate
Arxiv
7+阅读 · 2019年10月24日
Arxiv
8+阅读 · 2018年2月23日
Arxiv
3+阅读 · 2017年12月18日
VIP会员
相关VIP内容
Python图像处理,366页pdf,Image Operators Image Processing in Python
【干货书】图形学基础,427页pdf
专知会员服务
144+阅读 · 2020年7月12日
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
最新《自动微分手册》77页pdf
专知会员服务
98+阅读 · 2020年6月6日
《深度学习》圣经花书的数学推导、原理与Python代码实现
【新书】Python编程基础,669页pdf
专知会员服务
187+阅读 · 2019年10月10日
相关资讯
3 行代码 5 秒抠图的 AI 神器,根本无需 PS
大数据技术
20+阅读 · 2019年7月24日
那些酷炫的深度学习网络图怎么画出来的?
计算机视觉life
5+阅读 · 2019年4月12日
【资源】这本开放书籍帮你扫清通往ML的数学绊脚石
机器学习算法与Python学习
55+阅读 · 2018年10月28日
Python | Jupyter导出PDF,自定义脚本告别G安装包
程序人生
7+阅读 · 2018年7月17日
用于数学的 10 个优秀编程语言
算法与数据结构
13+阅读 · 2018年1月5日
28 款 GitHub 最流行的开源机器学习项目(附地址)
七月在线实验室
4+阅读 · 2017年12月18日
GitHub最著名的20个Python机器学习项目
全球人工智能
9+阅读 · 2017年12月7日
Top
微信扫码咨询专知VIP会员