Hi all,
I've been implementing the algorithm from this paper "Reducing Aliasing Artifacts in Iso-Surfaces of Binary Volumes" from Ross T. Whitaker. Because I develop a opensource software which works with segmentation of CT and MRI medical images, and the results of segmentation is a binary volume image. The problem is that the surface generate from binary images are rough and have those staircase artifacts. Bellow some examples after and before using the algorithm:
Binary ball - http://i.imgur.com/DlIwP.png Smoothed ball - http://i.imgur.com/G04zN.png
Binary CT - http://i.imgur.com/Ah1LB.png Smoothed CT - http://i.imgur.com/ps1Nz.png
The algorithm works in the volumetric image. After the algorithm I use the Marching Cubes (from VTK) to generate the surface.
I could use a gaussian filter, but some fine features could be lost.
The source-code is here [1]. The first attempt I use python, but it used a lot of memory. Now I'm using Cython, it's not completed. Maybe I will try to code directly in C.
I'm sending this email to this mail-list because someone could have some interest in this, and maybe it could be inserted in some python library, like mahotas.
Thanks!