<html><body><div style="color:#000; background-color:#fff; font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt"><div><span>Thank you, I will look into this and let you know.</span></div><div><br><span></span></div><div><span>Regarding the use of a vtkRectilinearGrid, is there a class/filter to convert my vtkImageData to a vtkRectilinearGrid or should I build it manually ?</span></div><div><br><span></span></div><div><span>Best.<br></span></div><div><br></div> <div style="font-family: Courier New, courier, monaco, monospace, sans-serif; font-size: 10pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <font face="Arial" size="2"> <hr size="1"> <b><span style="font-weight:bold;">De :</span></b> Dominique Töpfer <dominique@toepfer-web.de><br> <b><span style="font-weight: bold;">À :</span></b> Malsoaz James <jmalsoaz@yahoo.fr> <br><b><span style="font-weight:
bold;">Cc :</span></b> Bill Lorensen <bill.lorensen@gmail.com>; "vtkusers@vtk.org" <vtkusers@vtk.org> <br> <b><span style="font-weight: bold;">Envoyé le :</span></b> Mardi 6 Décembre 2011 19h19<br> <b><span style="font-weight: bold;">Objet :</span></b> Re: [vtkusers] Re : Build 3D Mesh from vtkImageData using vtkMarchingCubes - holes filling ?<br> </font> <br><div id="yiv1624753622">
<div>
Hi,<br>
<br>
maybe morphological closing on your 3D build is also an option.<br>
<br>
HTH<br>
Dominique<br>
<br>
On 06.12.2011 19:09, Malsoaz James wrote:
<blockquote type="cite">
<div style="color:#000;background-color:#fff;font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt;">Thank
you Bill for your answer.<br>
<br>
The input vtkImageData is the result of a segmentation process.
Sometimes, the segmentation is not perfect, part of the object
can be missing on a slice. For now, I can't know automatically
if a slice is missing or not before the 3D build. Thus, I can't
create it manually. I thought Marching cubes was able to deal
with this kind of problem, apparently not.<br>
<br>
I will look at your solution and let you know.<br>
<br>
In any case, the resampler solution works, it is just not really
suitable for bad resolution.<br>
<br>
Best.<br>
<br>
<div style="font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt;">
<div style="font-family:times new roman, new york, times, serif;font-size:12pt;"> <font face="Arial" size="2">
<hr size="1"> <b><span style="font-weight:bold;">De :</span></b>
Bill Lorensen <a rel="nofollow" class="yiv1624753622moz-txt-link-rfc2396E" ymailto="mailto:bill.lorensen@gmail.com" target="_blank" href="mailto:bill.lorensen@gmail.com"><bill.lorensen@gmail.com></a><br>
<b><span style="font-weight:bold;">À :</span></b> Malsoaz
James <a rel="nofollow" class="yiv1624753622moz-txt-link-rfc2396E" ymailto="mailto:jmalsoaz@yahoo.fr" target="_blank" href="mailto:jmalsoaz@yahoo.fr"><jmalsoaz@yahoo.fr></a> <br>
<b><span style="font-weight:bold;">Cc :</span></b>
<a rel="nofollow" class="yiv1624753622moz-txt-link-rfc2396E" ymailto="mailto:vtkusers@vtk.org" target="_blank" href="mailto:vtkusers@vtk.org">"vtkusers@vtk.org"</a> <a rel="nofollow" class="yiv1624753622moz-txt-link-rfc2396E" ymailto="mailto:vtkusers@vtk.org" target="_blank" href="mailto:vtkusers@vtk.org"><vtkusers@vtk.org></a> <br>
<b><span style="font-weight:bold;">Envoyé le :</span></b>
Mardi 6 Décembre 2011 18h19<br>
<b><span style="font-weight:bold;">Objet :</span></b> Re:
[vtkusers] Build 3D Mesh from vtkImageData using
vtkMarchingCubes - holes filling ?<br>
</font> <br>
Another possible solution is to convert your image data to a<br>
rectilinear grid. The rectilinear grid supports non uniform
spacing.<br>
Once converted you would use vtkContourFilter rather than
Marching<br>
Cubes. It will be slower.<br>
<br>
Bill<br>
<br>
On Tue, Dec 6, 2011 at 12:16 PM, Bill Lorensen <<a rel="nofollow" ymailto="mailto:bill.lorensen@gmail.com" target="_blank" href="mailto:bill.lorensen@gmail.com">bill.lorensen@gmail.com</a>>
wrote:<br>
> Marching Cubes is the correct filter and your results
look good<br>
> (except for the missing slice. You could try to create
a missing slice<br>
> by creating a new slice. Maybe by averaging the slice
above and below<br>
> the missing slice.<br>
><br>
> Why is the data missing?<br>
><br>
> On Tue, Dec 6, 2011 at 12:03 PM, Malsoaz James <<a rel="nofollow" ymailto="mailto:jmalsoaz@yahoo.fr" target="_blank" href="mailto:jmalsoaz@yahoo.fr">jmalsoaz@yahoo.fr</a>>
wrote:<br>
>> Dear VTK users<br>
>><br>
>> I'm trying to build a 3D mesh from a vtkImageData
using vtkMarchingCubes.<br>
>> The vtkImageData is build from a list of 2D binary
slices.<br>
>><br>
>> vtkMarchingCubes works great. But when a slice(s)
is(are) missing, it<br>
>> creates a hole in the 3D mesh (see image in
attachment).<br>
>><br>
>> 1 - How can I fill this kind of hole ? Ideally, I
would like to link the two<br>
>> parts of the mesh<br>
>><br>
>> 2 - I found a solution in the use of a resampler
(vtkImageResample,<br>
>> vtkImageShrink3D, don't know which one is
recommanded). Unfortunately, it<br>
>> sometimes produces ugly mesh with "stair effect"
when the spacing is too big<br>
>> (still there after decimate and smooth). Is it a
good solution ? How to<br>
>> solve the stair problem ?<br>
>><br>
>> 3 - Browsing the mailing list brings me to the
notion of "repair hole" for<br>
>> marching cubes. I don't know a lot about it. But
should I look into this ?<br>
>> Some solutions exist for this such as <a rel="nofollow" target="_blank" href="http://www.opentopology.org/">http://www.opentopology.org/</a><br>
>><br>
>> 4 - Is vtkMarchingCubes the class I should use for
my purpose or should I<br>
>> look at vtkVoxelContoursSurfaceFilter or any other
filter ?<br>
>><br>
>><br>
>> Thank you for you help.<br>
>> Best.<br>
>><br>
>><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Powered by <a rel="nofollow" class="yiv1624753622moz-txt-link-abbreviated" target="_blank" href="http://www.kitware.com">www.kitware.com</a><br>
>><br>
>> Visit other Kitware open-source projects at<br>
>> <a rel="nofollow" target="_blank" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><br>
>><br>
>> Please keep messages on-topic and check the VTK FAQ
at:<br>
>> <a rel="nofollow" target="_blank" href="http://www.vtk.org/Wiki/VTK_FAQ">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
>><br>
>> Follow this link to subscribe/unsubscribe:<br>
>> <a rel="nofollow" target="_blank" href="http://www.vtk.org/mailman/listinfo/vtkusers">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
>><br>
><br>
><br>
><br>
> --<br>
> Unpaid intern in BillsBasement at noware dot com<br>
<br>
<br>
<br>
-- <br>
Unpaid intern in BillsBasement at noware dot com<br>
<br>
<br>
</div>
</div>
</div>
<br>
<fieldset class="yiv1624753622mimeAttachmentHeader"></fieldset>
<br>
<pre>_______________________________________________
Powered by <a rel="nofollow" class="yiv1624753622moz-txt-link-abbreviated" target="_blank" href="http://www.kitware.com">www.kitware.com</a>
Visit other Kitware open-source projects at <a rel="nofollow" class="yiv1624753622moz-txt-link-freetext" target="_blank" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a>
Please keep messages on-topic and check the VTK FAQ at: <a rel="nofollow" class="yiv1624753622moz-txt-link-freetext" target="_blank" href="http://www.vtk.org/Wiki/VTK_FAQ">http://www.vtk.org/Wiki/VTK_FAQ</a>
Follow this link to subscribe/unsubscribe:
<a rel="nofollow" class="yiv1624753622moz-txt-link-freetext" target="_blank" href="http://www.vtk.org/mailman/listinfo/vtkusers">http://www.vtk.org/mailman/listinfo/vtkusers</a>
</pre>
</blockquote>
<br>
<br>
<pre class="yiv1624753622moz-signature">--
Dominique Töpfer, Dipl.-Inform.
Institute of Medical Physics
University of Erlangen</pre>
</div>
</div><br><br> </div> </div> </div></body></html>