ITK Mesh IO Framework

Please use this identifier to cite or link to this publication:
ITK has a powerful and flexible image IO framework. Reading and writing different types of image file is straightforward. The image IO could be easily extended by writing a specific image IO class for a new image file format. Whereas, there is no such framework for easily reading and writing itk::Mesh/itk::QuadEdgeMesh, At the moment, only a few specific classes to read vtk polydata format and is not easily to be extended. This paper describes our contribution to itk for providing a mesh IO framework which could be used for reading and writing some commonly used mesh file formats. The mesh IO classes worked well for both itk::Mesh and itk::QuadEdgeMesh.
minus 1 Dataset (18Mb)
minus Automatic Testing Results by Insight-Journal Dashboard on Mon Nov 22 09:32:09 2010 for revision #2
starstarstarstarstar expertise: 5 sensitivity: 5
yellow This project passed 0 out of 13 tests.
Click here for more details.

Go here to access the main testing dashboard.
plus Automatic Testing Results by Insight-Journal Dashboard on Wed Sep 15 15:47:08 2010 for revision #1
starstarstarstarstar expertise: 5 sensitivity: 5

minus An excellent IO framework for meshes, with implementations for reading and writing formats that were not previously supported in ITK by Alexandre Gouaillard on 2010-10-18 06:01:07 for revision #2
starstarstarstarstar expertise: 5 sensitivity: 5

ITK was lacking IO filters for meshes formats. This publication implements a mesh IO mechanism, mirroring the Image IO mechanism already in ITK (factory pattern), as well as factories for several formats (OFF, freesurfer, VTK polydata binary, ...)


The contribution includes several files with different formats. The tests read and write the files, using either the itk::Mesh or itk:QuadEdgeMesh data structures, and compute the errors between the input and  the output files. The error is below the threshold (1e-06) and all test pass on my machine.

Open Science:

Source code, and data are provided along with tests to reproduce all the results announced.


I downloaded, compiled and tested the code. Everything went fine except for the small known glitches due to my using itk v4, latest revision, which is hardly due to the author. I think, even though I did not test, that the code should run fine with 3.20.

Open source Contributions:

The paper could be more explicit on pixeltype (data type ), their implementation of the polylineCell and the implicit point numbering scheme. Nothing that would prevent an user from using the code, but as a developper, I had to double guess.

Code Quality :

ITK quality level. Some typos or left over from here and there (polylinecell still has commented out code, and reference to trianglecell or polygoncell for example.) Overall very good.

Quality of the data :

Did not check.


This will be usefull to everybody working with meshes, and there are a few of those in the NAMIC / ITK community. It is a feature that had been missing for too long.

Add a new review
Quick Comments
Comment by Andy Yahaloms yellow
If you want to get rid of constipation you need to read the article I wrote which is extremely useful. You can find it on my blog:
Comment by Dženan Zukić yellow
Wavefront OBJ reader worked, even though the itkMeshIO project was not built completely successfully.

Download All
Download Paper , View Paper
Download Source code

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

Information more
Categories: IO, Mesh
Keywords: Mesh, QuadEdgeMesh, IO
Toolkits: ITK
Export citation:


Linked Publications more
Importing Contours from DICOM-RT Structure Sets Importing Contours from DICOM-RT Structure Sets
by Dowling J., Malaterre M., Greer P.B., Salvado O.
Diffeomorphic Demons Using ITK's Finite Difference Solver Hierarchy Diffeomorphic Demons Using ITK's Finite Difference Solver Hierarchy
by Vercauteren T., Pennec X., Perchant A., Ayache N.

View license
Loading license...

Send a message to the author
Powered by Midas