zoukankan      html  css  js  c++  java
  • 关于网格比较工具metro使用的几点注意事项

    Metro作为一个非常好用的简化网格比较工具,在科研界几乎算是标准了。不过很多比较牛的作者会使用自己设计的一些比较算法,但是如果metro够用了也就不必那么麻烦了,毕竟Metro使用的方法还算是很成熟了。不得不说,VCG这些人太惜字如金了,一些很基本的东西说的相当不够详细,只好自己努力搜寻了一些资料。

    有个地址需要fanqiang才能访问

    http://meshlabstuff.blogspot.com/2010/01/measuring-difference-between-two-meshes.html

    http://vcg.isti.cnr.it/activities/surfacegrevis/simplification/metro.html

    这里有最新的下载链接,sourceforge的,当然还有源码:

    http://sourceforge.net/projects/vcg/files/metro/

     

    当然,论文才是了解这个工具最好的窗口,只是论文相对有些老。

     

    但是作为一个纯科研的项目,其和那些成熟的工程类的工具比起来,还是有很多不方便的地方,首当其冲就是使用说明书不完善,也没有相应的论坛或者问答机制回答初学者的问题,网上相关的资料也少(就他们自己写的那几篇)。

    OK,下面来讲下我自己遇到的问题。

    我用的是最新的metro4.07。以下是一个metro输出的样例:

    -------------------------------
             Metro V.4.07
         http://vcg.isti.cnr.it
       release date: May 11 2007
    -------------------------------
    
    read mesh `XXX.ply'
    Removed 0 duplicate and 0 unreferenced vertices from mesh XXX.ply
    read mesh `YYY.ply'
    Removed 5 duplicate and 3841 unreferenced vertices from mesh YYY.ply
    Mesh info:
     M1: 'XXX.ply'
            vertices  2400610
            faces     4786342
            area       249717.8967
            bbox (25.1502 35.4685  0.0000)-(166.6869 199.6000 190.0000)
            bbox diagonal 288.221771
     M2: 'YYY.ply'
            vertices  1078709
            faces     2153443
            area       249189.0805
            bbox (25.4688 35.4680 -0.1387)-(166.6808 199.6717 190.0403)
            bbox diagonal 288.221710
    
    Forward distance (M1 -> M2):
    target # samples      : 47863420
    target # samples/area : 191.669963
    Vertex sampling
    Edge sampling
    Similar Triangles face sampling
    
    distances:
      max  : 13.545480 (0.043946  wrt bounding box diagonal)
      mean : 0.007310
      RMS  : 0.077103
    # vertex samples   2400610
    # edge samples    36665001
    # area samples     6397199
    # total samples   45462810
    # samples per area unit: 182.056675
    
    
    Backward distance (M2 -> M1):
    target # samples      : 47863420
    target # samples/area : 192.076715
    Vertex sampling
    Edge sampling
    Similar Triangles face sampling
    
    distances:
      max  : 0.199435 (0.000647  wrt bounding box diagonal)
      mean : 0.004265
      RMS  : 0.006333
    # vertex samples   1078709
    # edge samples    24402286
    # area samples    21303713
    # total samples   46784708
    # samples per area unit: 187.747825
    
    
    Hausdorff distance: 13.545480 (0.043946  wrt bounding box diagonal)
      Computation time  : 186088 ms
      # samples/second  : 495719.840175 

    关于三个度量结果,max是最大距离,mean是平均距离,RMS是对距离值(有正有负)求平方之后所得的平均值再开方(可见Wiki百科)。

    结果里面,

       max  : 13.545480 (0.043946  wrt bounding box diagonal)

    中的wrt让人很费解,看了上面给出的第二个链接,才知道原来是with respect to的缩写,汗!

    另外,一开始分析结果时,发现后面给出的相对于包围盒对角线的比值0.043946有些诡异,如果用13.545480除以前面的bbox diagonal值根本不是这个结果!纠结了老半天,终于从论文里得到了答案,论文里metro的结果展示如下:

    为何每个误差值后面有两个百分号?用直觉认为正确的方法算一下,比如

    3.3314/345.234=0.009649

    正好是前一个百分比值,那后一个是啥?

    等等,Bbox Diag下面是不是有个Diameter?应该是包围球的直径,用原来的绝对误差值3.3314除以它,正好等于0.010068。

    好了,看来为何相对于包围盒对角线的误差不是我们想的那样的原因找到了,就是metro4.07在得出相对于包围盒对角线的误差时,用的却是包围盒直径。这肯定算个比较严重的bug了吧,唉,害得我纠结了不止一个晚上。

    http://sourceforge.net/projects/vcg/files/metro/

  • 相关阅读:
    Vue-router2.0学习笔记(转)
    vue-cli 搭建项目
    打开一个vue项目
    Webpack,Browserify和Gulp三者之间到底是怎样的关系
    读取ByteBuffer有效的数据
    node-sass 安装失败的解决措施[转]
    SpringCloud2.0
    Docker
    分布式文件系统之FastDFS
    SVN的使用
  • 原文地址:https://www.cnblogs.com/waytofall/p/3746564.html
Copyright © 2011-2022 走看看