算法高手请入:可能是csdn有史以来最难和最专业的图形学问题!!
多边形简化(分数可以给8000分)
问题描述:
设计或找到一种算法,对给定一个3D图形,由大量多边形组成(全部凸多边形),3D图形是多连通的
,但是闭合的图形。要简化它的数量到1/100 -1/1000,并且得到的为封闭的连续三角形网格,并且没有
退化的线和面,网格质量尽量好。
概念:
封闭的连续三角形网格 定义:对于某个三角形网格,任意一个三角形每条边都有且仅有一条公共边,
并且所有的三角形都有公共边。 也就是2-manifold
退化的线和面: 一个三角形三边共线,称为degenerate triangle;一条线两点重合,称为degenerate
line
网格质量: 对三角形网格来说,每个三角形的最长边和最短边之比 5:1,等边三角形是最好的。
难点:
简化数量和保持拓扑形状是个很矛盾的问题。保证拓扑形状,消减的数量微乎其微,而达到数量的
算法无法得到封闭的连续三角形网格。现今算法都没有做到这一点。有些算法对简化后的
图形进行修正,比如stiching and spliting算法,但难于实现。
更重要的一点:算法的精度必须是100%的,如果对于1亿个多边形图形消减到100万个,要求不能有
一根错误的直线,算法必须最全面考虑空间多边形之间的关系。我尝试过多种算法和软件,对于复杂图
形都出现了错误直线的情况。
使用delaunay算法达不到效果,因为多数情况下得到的多边形数量比最初还要庞大,在设定参数让数
量减小后,出现了明显的图形轮廓变形。
这个问题计算机图形学研究者不太关心,属于有限元网格的内容,但是有限元网格只是剖分,
并不简化多边形。
关键词:
2-manifold, delaunay, polygon simplification, solid modeling, watertight,LOD,FEM
remesh,voxelization
资料:
我收集了200多篇高度相关的英文学术论文,数十个代码,花了半年多时间研究,没有什么结果。
如果哪位算法高手肯帮忙,上述资料全部提供,还有测试的3d图形。
后记:
有N多人声称自己的算法多牛多牛,效果多好多好,但可能由于算法的局限性,在我这里难以起色。
我也联系了CMU,UIUC,stanfod大学的图形学教授,还有MSR的hoppe(directx progress mesh的主要开发
者),但都回答简略或石沉大海。
如果哪位高手对此等小问题嗤鼻一笑,敬请指出解决方法,并请原谅本人的学识浅陋。^_^