图形写稿基础,含teaser figure的特殊排版方法

写在前面:这是第一次投稿后针对论文写作部分的总结。需要注意的是:老师提了意见,一定要快速改,否则会很恼人。

1. 图片展示

  • 构图要美观,保证横平竖直;
  • 图片中文字保证和文章正文中文字一样大小;
  • 多组图片并行排列时,图片和图片之间的间距不宜过大,且必须保证一致;
  • 图片在正文中不宜覆盖过多面积,应该尽量采用长方形来排列多组图片;
  • 一组图片中如果用了描边框(仅显示描边,中间透明的矩形)来突出细节,应该保证该组图片中的多个描边框的形状、颜色一致,并且禁止花里胡哨,喧宾夺主;
  • 图片中文字如果涉及引用,请标出引用;
  • time cost分析可以用堆叠柱状图展示(代码见附录1)。

2. 陈列公式

  • 操作符用花体,如果遇到A乘B在表中展示,应该使用AxB而非A*B,并且用行内公式符号$$框起来(称号用花体);
  • Section、公式、表、图在原文中的引用(使用\label标签),应该用文字简要描述,而不是用数字;
  • 单词在公式中要取消掉默认的斜体:\rm xxx;
  • 积分公式中的d不是斜体,请用\rm d取消斜体;
  • 公式符号要有意义,而不是简单的a、b、c、d;
  • 渲染方程等公式中的位置应该用x,而非P

3. 正文部分

  • 正文中(包括图表)只要文字后有小括号,小括号左边必须有一个空格,例如:the bidirectional reflectance distribution
    function (BRDF);
  • Figure xx、Equation xx,这些必须带引用,而且不需要加粗;
  • 如果文章中第一次出现某缩写术语,应该描述全,例如:spp (samples per pixel),或samples per pixle (spp);
  • 统一图形渲染中常用的术语:calculatate -> compute,Build(名词) -> Construction,realtime -> real-time,RAM -> system memory,VRAM -> video memory;
  • Radiance Caching(Radiance)和Light Probes(irradiance)不是一回事;
  • 公式符号说明表叫:Notations。表中陈列的公式符号简介中,为了排版好看,可以使用简写,例如:coefficients -> coeffs;排列时按照类别把相关的符号放到一起;
  • 一句话,不要一半加粗,一半不加粗,会显得很怪,应该都不能加粗;
  • 正文中出现符号应用$$封起来,而且如果用到phi,应该写为希腊字母的形式,否则会被认为是不专业;
  • 实时的项目最好提前设计好profiling,当然也要兼顾性能;
  • Relighting和Reconstruction的区别:Relighting对应的光源是动态变化的;
  • Section的标题应该用名词性词组,而不是动词性词组(仅开头单词首字母大写);
  • 描述阴影还原程度用高频/全频(high-frequency / full-frequency)而不是高精度(high-precision);
  • 基(函数),basis 单数,例如:a wavelet basis;bases 复数,例如:by using bases such as SH;
  • 大型算法流程图不宜太细,最好用典型的可视化过程图串/并联起来显示,并在题目中解释图片内容;
  • 题目/预算图(teaser figure),是放到文章最开始的图,一般用于展示实验结果;有时候在正文的tex文件中无论如何都加不上(排版问题),可以把对应的程序放到控制style的.sty文件中,同时写法也发生了变化(这里指latex语法),见附录2。

4. 分节介绍

  • Abstract:摘要非常重要,一般定下粗稿后需要接着写摘要。摘要提交会比正文早。摘要内容不会描述算法细节,基本思路是:陈述待解决目标/问题是什么;目前有哪些算法并不能满足质量和性能的要求;因此我们提出了什么方法;结果是什么(有多好);有什么应用;
  • Introduction:介绍部分有点像扩充内容的摘要,不过依旧不会介绍我们算法的详细细节。先介绍目标效果是什么然后表示目前的方法很难做到;再介绍我们目标中的限定条件,比如:static light,static geometry,etc. 然后根据限定条件来介绍其他人用了什么方法(禁止讨论细节)来达到不错的效果以及不足;接着讲我们方法旨在什么目标,为此用了什么手段(禁止讨论细节,讲清楚用了什么方法即可,要有一定的概括能力);最后说我们方法的结果和性能;
  • Previous work:同样这里仅介绍在我们给出的限定条件下的方法,做好分类,采用开头(名词性词组)加粗+分段的方式排版,介绍方法时仍然不需要太细(你是来讲教科书的吗?(不是)),用最让人容易理解的语言,把别人用了什么方法讲清楚即可,不要讲废话,要让别人读了你的内容有所收获;
  • Background and overview:主要介绍别人的公式背景,注意要简练,备注全引用;
  • 方法部分:由于我们算法分成了预计算和运行时两大部分,每部分内容比较多,所以将方法部分拆分成了两章。为了保证章节连贯和阅读体验,我们在前一章的Background部分加了overview,用来从high-level(不应该太细)上来概括下面两章方法部分的内容,让读者先有个大概的了解。方法部分的这两章不会讨论程序细节 ,如果有且比较重要的请放到Implementation介绍;
  • Implementation details:在这里讲实施环境,包括实现的项目中的pass的构成、实施的框架等,同样如果内容偏多,则分类后按开头加粗+分段的方式排版;
  • Results:这部分介绍结果和limitation。Results部分开头介绍我们的方法和对比方法的实现框架(自己写的,还是取的是released codes);然后从多角度介绍我们的结果和对比方法的区别。Results部分必须明确的是我们需要展示两部分内容:1.设定参数下,效果有多好;2.如果要达到不错的性能和效果,是如何优化参数。提供图表来展示time cost,storage cost。
  • Conclusion and future work:总结部分介绍我们用的方法以及有什么好的结果,最后的Future work要写大一点的内容,必须引入机器学习优化,并对path guilding算法提供指导等。

5. 其它

  • 绘制图表(转latex)的网站:tablesgenerator.com;
  • pdf压缩网站(用于正文中figure的压缩):ilovepdf.com,选轻度压缩选项就够了。

附录1. 堆叠柱状图

# coding = 'utf-8'
import pandas as pd
from matplotlib import pyplot as plt
plt.rc('font',family='Times New Roman')


if __name__ == '__main__':
    data = pd.read_csv('data.csv', index_col='Scenes')
    data1 = data[['Raytracing', 'Reconstruction', 'Others']]
    data1.plot(kind='barh', use_index=True, stacked=True, title='', fontsize=15)
    plt.xlabel('Time cost (ms)', fontsize=17)
    plt.ylabel('Scene', fontsize=17)
    plt.show()

图形写稿基础,含teaser figure的特殊排版方法_第1张图片

附录2. 特殊的teaser figure

如果主办方提供的latex模板中提供了teaser figure的排版语法的话,可以跳过这部分内容。如果没提供,这里提供一种方法用来排版teaser figure,即:在.sty文件中找到Paper ID附近的代码,使用下述代码提供排版:

图形写稿基础,含teaser figure的特殊排版方法_第2张图片

你可能感兴趣的:(渲染,论文跟踪,paper,rendering)