Tetrahedral mesh generation for medical imaging

Please use this identifier to cite or link to this publication: http://hdl.handle.net/1926/35
We describe the open source implementation of an adaptive tetrahedral mesh generator particularly targeted for non-rigid FEM registration of MR images. While many medical imaging applications require robust mesh generation, there are few codes available. Moreover, most of the practical implementations are commercial. The algorithm we have implemented has been previously evaluated for simulations of highly deformable objects, and the preliminary results show its applicability to the targeted application. The implementation we describe is open source and will be available within Insight Toolkit.
Data
minus 1 File (217Kb)
Code
There is no code review at this time.

Reviews
minus Great contribution, better if dependences on MPI, PETSc and Shewchuk\'s code are removed by Sylvain Jaume on 02-01-2006 for revision #1
starstarstarstarstar expertise: 2 sensitivity: 4.7
yellow
Summary:
The authors provide some code to address a generic issue in Medical Imaging and beyond: the creation of 3D meshes from binary images.
They implement the method of Molino et al. using ITK, VTK, PETSc and some code written by Jonathan Shewchuk.

Hypothesis:
The authors make the reasonable assumption that the mesh quality can be assessed by tetrahedron aspect ratio and minimum dihedral angle.

Evidence:
The authors provide a convincing comparison with the commercial mesher GHS3D. The paper is clearly presented and illustrated with renderings and statistics.
What is the justification of the resampling? Does this impact the quality of the results?

Open Science:
Could the authors provide the data they used (case #1, case #2, and case #3)?
Other data are provided, but having the exact same data would make possible the reproduction of the results and the comparison with future methods.

Reproducibility:
I did not reproduce the authors results since I did not install all the required packages (for example PETSc).
I believe that it is possible to reproduce the results shown in the paper when all the packages are installed and the same data is available.

Use of Open Source Software:
The authors use other Open Source packages. Dependence on MPI, PETSc and Shewchuk's code could be painful for installation and maintenance.
Do the authors plan to remove those dependencies? or provide a CMakeLists.txt that would simplify the build?

Open Source Contributions:
The authors provide all their source code in a clean directory structure. Thanks! :-)

Code Quality:
The code looks very good and is easy to read. I did not check if the code compiles on different platforms.
Could the authors comment on that?

Applicability to other problems:
I believe that this implementation could be very useful to many applications in Medical Imaging and other disciplines.

Suggestions for future work:
I would be interested to see the application of this very valuable implementation to more sophisticated geometries and to the surgery of highly deformable anatomical structures.

Requests for additional information from authors:
The results section is very clear. Additionally I would suggest the comparison of this method with the method of Alliez et al., Variational Tetrahedral Meshing, 2005.

Additional Comments:
The URL might have changed since the first publication of this paper. I found the source code at
http://www.na-mic.org:8000/svn/NAMICSandBox/trunk/TetrahedralMeshGeneration/
(the URL on page 4 does not have the /trunk)

Comment by Gert Wollny: Changed Url yellow
The new subversion repository can be found at:
http://svn.na-mic.org/svn/NAMICSandBox/branches/Slicer-2-6/TetrahedralMeshGeneration
minus Headed in the right direction... by Stephen Aylward on 09-19-2005 for revision #1
starstarstarstarstar expertise: 3 sensitivity: 4.7
yellow
Summary:
Describes an toolkit for generating meshes for MR volumes. Summarizes the software architecture, illustrates results, and provides experimental results from comparison with a commercial package.

The documentation provided with the code states that the software is for non-commecial-use only. I wish the authors had stated that in their paper. I also wish they would clarify if this includes its use in grant funded research which has been ruled to be a commecial use by the courts. This limited licensing dampens my enthusiam for the software.

My main focus during this review has been the installation of the software. My initial experiences are given next.

Installation Notes:
I attempted to download and install this package.


  1. It requires the installation of subversion to access the package

  2. The package requires three other software packages. The authors did not provide links to those packages in the documentation distributed with the code.

    1. http://www.lam-mpi.org/ A message passing interface for parallel computation - does not use cmake

    2. http://www-unix.mcs.anl.gov/petsc/petsc-as/download/index.html This software also requires the installation of Python and the rebase modules for Cygwin.

    3. VTK is also required - but this is not mentioned in the paper or in the documentation provided with the code - uses cmake


  3. The MPI license is open source - YEAH!
  4. The PETsc license requires special compilation options to turn off GNU licensed code that otherwise restricts the binary redistribution and use of the code. See: http://www-unix.mcs.anl.gov/petsc/petsc-as/documentation/copyright.html
  5. My laptop ran out of disk space when installing python and rebase on cygwin



Overall, the software seems to be simple to install, but the process is more complex and time consuming than the authors imply in their paper. The use of other open source packages is applauded, but in this case, the mix of technologies used by those packages confounds the installation process.

The reality is, however, that there are few, if any, alternative solutions to the problems being addressed by this package. It is an important contribution to the field. Its burden is light relative to the potential benefits.

Evidence:
The paper provides illustrative and experimental results.

The illustrative results are clearly presented.

The experiment results are convincing. The authors compared their method with a commercial system. The commercial system was deemed the gold standard. Their system produced a mean Hausdorff distances of ~2mm and a max distance of ~7mm compared to the commercial system. These measures were calculated using MR data from three neurosurgical patients. The time required for mesh generation is 5 minutes for pre-processing and 10-25 seconds for mesh generation.

Open Science:
The code is a mix of open and limited-open source. The main code is limited to non-commercial use. The secondary packages require the specification of compilation options to eliminate code with GNU licensing restrictions. It is unclear what impact the use of the alternative code will have on the performance of the system.

The data used in the experiments are not publicly available, but some testing data is provided with the code.


Reproducibility:
I am fairly confident that I could reproduce the results stated.

Open Source Software:
The system is not completely open-source - it is not available for commecial use - it is unclear if it can be used for grant funded research.

The packages used are open-source, but they have very different installation needs. This complicates the installation process.

The intended application is intra-operative processing for surgical guidance. Therefore a parallel implementation is being pursued. However, for more general use, it would be nice if requirement for an MPI library could be turned-off as a cmake option.

Code Quality:
The installation code has holes as noted above.

Most of the source code is very well documented. Doxygen comments are very good in most files. The ITK coding style is followed in most files.

Certain files (e.g., tetra_mesh.h) appear to be converted C code. They do not use doxygen comment style or ITK coding style.

The authors' intent is to integrate this code with ITK. The non-conforming files would need to be updated prior to such integration.

Applicability to other problems:
The algorithms is much needed by the field and broadly applicable. I look forward to the refinement of the code and the installation process.
minus Mesg generation by Aloys Du bois d'aische on 08-22-2005 for revision #1
starstarstarstarstar expertise: 4 sensitivity: 4.3
yellow

The authors present what looks to be a very nice implementation of Molino's paper. This paper does not describe the details of the method which may be found in the original paper but brings forward the efficiency of their implementation in terms of speed and quality of the elements generated.
This opensource implementation may be an important contribution for all the algorithms using ITK and which need meshes composed of well-shaped elements.
Add a new review
Quick Comments


Resources
backyellow
Download All

Statistics more
backyellow
Global rating: starstarstarstarstar
Review rating: starstarstarstarstar [review]
Code rating:
Paper Quality: plus minus

Information more
backyellow
Keywords: mesh generation, non-rigid image registration, FEM, surgical planning
Toolkits: ITK
Export citation:

Share
backyellow
Share

Linked Publications more
backyellow
An ITK Implementation of Physics-based Non-rigid Registration Method An ITK Implementation of Physics-based Non-rigid Registration Method
by Liu Y., Kot A., Drakopoulos F., Fedorov A., Enquobahrie A., Clatz O., Chrisochoides N.
An Architecture Validation Toolset for Ensuring Patient Safety in an Open Source Software Toolkit... An Architecture Validation Toolset for Ensuring Patient Safety in an Open Source Software Toolkit...
by Gary K., Kokoori S., David B., Otoom M., Blake M.B., Cleary K.

View license
Loading license...

Send a message to the author
main_flat
Powered by Midas