Skip to content

Latest commit

 

History

History
33 lines (19 loc) · 4.45 KB

getting_started_in_research.md

File metadata and controls

33 lines (19 loc) · 4.45 KB

如何入门3D Vision的科研

第一阶段

学习基础的3D computer vision知识。这个阶段追求广度,了解一些基础的概念和算法。不要求深度,不要求掌握/熟悉算法所有的细节。这个阶段的目的是让你对3D computer vision有一个大概的了解,知道有哪些算法,知道这些算法的大概原理,知道这些算法的应用场景。

学习《三维计算机视觉导论》课程。重点是完成里面的作业。懂得做作业,也就懂课程内容了。建议在GitHub上维护一个repo,存放作业。

推荐的课程是Andreas Geiger教授的课程。这是课程链接。(这门课是目前较新的公开的三维视觉课。以后会根据情况决定是否添加其他课程。)

如果对哪些算法或哪些代码有问题,推荐谷歌搜索或者问new bing,如果找不到答案,建议敢于向高年级学长/学姐询问。

第二阶段

在有了基础知识的基础上,开始跟着学长/学姐做科研项目。这个阶段追求深度,追求掌握某一篇论文的细节(算法细节、代码实现细节)。这个阶段的目标是构建某一个科研细分方向的算法基础,通过参与科研项目来了解一篇论文是怎么做出来的(寻找科研问题、想idea、做实验、写论文)。

这个阶段需要做三方面的事情:

  1. 首先选择一个自己感兴趣的科研方向。这是实验室的研究方向的一些介绍性的视频和资料。选择具体的科研方向以后,请实验室学长/学姐帮自己定制具体的学习计划。这是学习计划的一个例子(这个例子的内容可能随着时间的推移而变得过时,请注重其体现出的计划思路)。
  2. 同时看一门计算机视觉的课程,不用做作业:http://cs231n.stanford.edu/schedule.html。该课程对深度学习在计算机视觉的应用有较为全面的介绍。因为已经在具体实现某个论文的算法了,所以这个阶段可以不用做作业,只需要看课程视频和课程讲义即可,不然日常时间可能不够分配。
    如果对传统图形学的知识感兴趣,还需要看GAMES101-现代计算机图形学入门(闫令琪老师开的课,讲得特别好)。
    如果对motion synthesis/computer animation感兴趣,还需要看GAMES105-计算机角色动画基础(刘利斌老师开的课,讲得特别好)。
  3. 在学习的过程中,参与旁听某个学长/学姐的科研项目,旁听我们每周的讨论,见识做科研具体是怎样的(这个文档总结了research project的具体流程)。等你算法基础和实验能力足够时,实验室会试着让你帮忙做我们Project的一些实验,从而开始上手做科研项目。参与Project时会读一些论文、做一些实验。这个文档总结了做research project需要的能力和相应的教程。

在这个阶段可以熟悉一些常用的工具、配置(这些工具是实验室的贺星毅同学整理的)。

第三阶段

在有了一定算法基础以后,开始在实验室的指导下做一个自己一作的Project。这个阶段的目标是通过实践来学习一篇论文是怎么做出来的(寻找科研问题、想idea、做实验、写论文),比较好的情况是能完成一篇论文的投稿,从而在某个细分的科研方向上有一定的科研成果。

在深入探索这个阶段之前,请先做好心理准备,因为做科研和课程学习有很大的区别。具体请看这个文档

这一阶段因为其过程的前沿性与创新性,所以难以有固定的学习路线,比较依赖实验室的口传心授。我们尽量整理出了一些作为独立的科研工作者所必需的科研能力。具体请看这个文档