图形学初学者,如何学习Polygon Mesh Processing这本书?修改修改

导师暑假让我看看这本书,目前看了一半觉得这本书比较偏重数学基础,对于具体的 implementation提及的并不多,再加上书上并没有相关练习或者例子,想实现书上所说的东西又觉得没有guideline,所以觉得有点摸不着 头脑,请问该如何学习这本书?想做一些练习哪里可以找到?

3 个回答

 
 
implementation方面,可以从OpenMesh里面给的一些例子入手,实现一些具体的算法,从最基础的simplification开始到较复杂的remesh, deformation, parameterization等。不过geometry的东西,本身就是比较偏重理论的。。。
发布于 2015-08-18 5 条评论 感谢

收藏 • 没有帮助 •

正巧看过真本书。五个作者都是大牛。
第二章关于mesh的数据结构,重点是半边结构,这方面开源代码很多。
第三章微分几何基础及其离散化表示,这是几何处理的根基。离散化永远是重头戏。实现方面可参考libigl(libigl/libigl · GitHub),这一章提到的几种离散微分算子这个库中都有实现。
第四章关于光顺。这一章写得很好。通过引用taubin在95年的经典文章告诉我们傅里叶分析是如何推广到mesh上的。实现方面,rob-p/mcflow · GitHub 是对desbrun 99年文章Implicit Fairing of Irregular Meshes using Diffusion and Curvature Flow的实现。可参考。几何流相关的工作不少。

五章参数化。这是几何处理的核心,是一个广阔的领域。这本书上介绍的比较基础了,我记得貌似没有涉及全局参数化。实现方面可参考libigl的
tutorial,里面有LSCM(least squared conformal
mapping)和ARAP(as-rigid-as-possible)这些比较简单也比较经典参数化的实现。
第六章重网格化。没细看。
quad-meshing到现在都是热点啊,有很多经典的文章,本质上是混合整数规划问题。有基于向量场和基于morse-smale复形两种主流的方
法。libigl里有08年文章Mixed Integer Quadragulation的实现。libQEx(hcebke/libQEx · GitHub)是用于鲁棒地在参数网格上抽出quad的库,文章发在13年的tog上。可参考。
第七八章木有看。
第九章几何形变。很有意思。可结合olga sorkine08年的survey(igl |
Interactive Geometry Lab
)一起看。方法五花八门。有
基于微分坐标的(gradient-based && laplacian-based),有基于vector
field的(06年的一篇siggraph,idea来自与流体),有基于各种坐标的(harmonic, bounded
biharmonic,local barycentric等等,我喜欢green
coordinates这篇文章,大牛出品,实现极其简单,数学推导严谨),基于非线性方法的(As-rigid-as-possible
surface modeling, PriMo)。几何形变蕴含很多几何处理中的重要idea和技术。想要练习的话,题主可以试着实现一下Mesh
editing with Poisson-based gradient field
manipulation,idea来自于03年经典的poisson image editing,数学不多,可以当做第三章读完后非常好的习题。
希望对你有帮助:)

编辑于 2015-08-20

4 条评论

感谢

收藏

没有帮助

 
 
可以参考开源软件Magic3D来帮助学习

[zz]如何学习Polygon Mesh Processing这本书?的更多相关文章

  1. 学习django就看这本书了!django book 2.0中文版

    所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/29/ 来源:python黑洞网 dj ...

  2. 【java学习系列】 Android第一本书《第一行代码》

    开始Java的学习,从Android,开始吧.<第一代码>开始阅读和调试demo例子. 下面是 <第一行代码>的思维导图:

  3. [ZZ] 深度学习三巨头之一来清华演讲了,你只需要知道这7点

    深度学习三巨头之一来清华演讲了,你只需要知道这7点 http://wemedia.ifeng.com/10939074/wemedia.shtml Yann LeCun还提到了一项FAIR开发的,用于 ...

  4. zz深度学习中的注意力模型

    中间表示: C -> C1.C2.C3 i:target -> IT j: source -> JS sim(Query, Key) -> Value Key:h_j,类似某种 ...

  5. zz深度学习论文合集大全

        Pull requestsIssues Marketplace Explore             Learn Git and GitHub without any code! Using ...

  6. zz深度学习在美团配送 ETA 预估中的探索与实践

    深度学习在美团配送 ETA 预估中的探索与实践 比前一版本有改进:   基泽 周越 显杰 阅读数:32952019 年 4 月 20 日   1. 背景 ETA(Estimated Time of A ...

  7. zz深度学习目标检测2014至201901综述

    论文学习-深度学习目标检测2014至201901综述-Deep Learning for Generic Object Detection A Survey  发表于 2019-02-14 |  更新 ...

  8. BLE MESH 学习[1] - ESP32 篇

    BLE MESH 学习 BLE MESH 是一种蓝牙(n:m)组网的技术. 本篇先介绍 BLE MESH 到使用 ESP32 的官方示例对其进行学习讲解. 后面会进一步学习 SIG 的 BLE MES ...

  9. 学习移动机器人SLAM、路径规划必看的几本书

    作者:小白学移动机器人链接:https://zhuanlan.zhihu.com/p/168027225来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 声明:推荐正版图 ...

随机推荐

  1. Pycharm:设置Tab键一次性为4个空格

    File > Settings > Editor > Code Style > Python

  2. 『TensorFlow』读书笔记_多层感知机

    多层感知机 输入->线性变换->Relu激活->线性变换->Softmax分类 多层感知机将mnist的结果提升到了98%左右的水平 知识点 过拟合:采用dropout解决,本 ...

  3. 如何从零开始在github上新建项目

    准备工作: (1)安装git: Git-2.16.1-64-bit.exe (2)新建一个文件夹grpc007,作为本地git仓库 (3)进入到grpc007目录,右键/打开git bash.使用gi ...

  4. Linux下一个进程可以开多少线程

    这个问题,整理了一下网上的资料,结果如下: 一.ulimit -n可以查看一个进程最多可以打开多少文件描述符数: 二.一个进程最多可以产生多少线程,可用如下的方法: 32位linux系统最大内存地址4 ...

  5. Saiku关于MDX过滤的使用(九)

    Saiku查询设定:Saiku查询数据时,每次都是全量查询的,我们现在需要默认展示近一周的数据. 通过编写使用MDX表达式进行过滤 通过编写MDX表达式,添加新的指标信息对一周以内的数据进行标识 (其 ...

  6. Mad Libs游戏 & 华氏温度与摄氏温度转换

    Mad Libs游戏 animal1 = input("请输入一种动物") animal2 = input("请输入一种动物") movement1 = inp ...

  7. 云硬盘性能测试工具FIO介绍

    一.云硬盘的性能衡量指标 云硬盘的性能指标一般通过以下几个指标进行衡量 IOPS:每秒的读写次数,单位为次(计数).存储设备的底层驱动类型决定了不同的IOPS 总IOPS:每秒执行的I/O操作总次数 ...

  8. input做一个开关按钮

    .mui-switch { width: 52px; height: 31px; position: relative; border: 1px solid #dfdfdf; background-c ...

  9. React Native backgroundColor 的颜色值

    React Native 的 css 跟 web开发中css还是很相似的,其中 backgroundColor 支持的颜色值与 css 一致,为方便查找写在这里. 其他样式可以参考 CSS 样式网站 ...

  10. HTML/overflow的认识

    1.overflow的定义:overflow属性规定当内容溢出元素框时应该做的处理.2.overflow:scorll; 是提供一种滚动的机制.3.关于overflow的其他相关值设置: