<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>Hi<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Applying vtkDiscreteMarchingCubes to a label field (segmented 3d volume), I get some unwanted holes in the output.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>What I mean by hole is the missing volume regions, which occur at multi-label junctions/interfaces. These volumes are outside of all closed surfaces, which are computed for each label value.<o:p></o:p></p><p class=MsoNormal>An example is shown in the image <a href="http://www.vision.ee.ethz.ch/~blloyd/ScreenShot_BadSurfaceExtraction.png">http://www.vision.ee.ethz.ch/~blloyd/ScreenShot_BadSurfaceExtraction.png</a>. I extracted all triangles, which are not duplicate. This should be the set of triangles on the outer surface. However, clearly in the output of vtkDiscreteMarchingCubes contains internal outer surface triangles, i.e. the surface of holes.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>In 2D this would happen if I had a square with three labels. Then an internal triangle would actually be external to each label/material region.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>x---------x<o:p></o:p></p><p class=MsoNormal>| |<o:p></o:p></p><p class=MsoNormal>|---------|<o:p></o:p></p><p class=MsoNormal>| \ / |<o:p></o:p></p><p class=MsoNormal>x----x----x<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Is there any way I can avoid these holes, using classes in VTK? One way I can think of, is to extract the surface of the voxels for each material label. This would, however, result in much stronger staircasing…<o:p></o:p></p><p class=MsoNormal>Any ideas?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks<o:p></o:p></p><p class=MsoNormal>Bryn<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>