  Isocontouring is one of the most widely used visualization techniques.
However, many popular contouring algorithms were created prior to the advent of
ubiquitous parallel approaches, such as multi-core, shared memory computing
systems. With increasing data sizes and computational loads, it is essential to
reimagine such algorithms to leverage the increased computing capabilities
available today. To this end we have redesigned the SurfaceNets algorithm, a
powerful technique which is often employed to isocontour non-continuous,
discrete, volumetric scalar fields such as segmentation label maps. Label maps
are ubiquitous to medical computing and biological analysis, used in
applications ranging from anatomical atlas creation to brain connectomics. This
novel Parallel SurfaceNets algorithm has been redesigned using concepts from
the high-performance Flying Edges continuous isocontouring algorrithm. It
consists of two basic steps, surface extraction followed by constrained
smoothing, parallelized over volume edges and employing a double-buffering
smoothing approach to guarantee determinism. The algorithm can extract and
smooth multiple segmented objects in a single execution, producing a polygonal
(triangular/quadrilateral) mesh with points and polygons fully shared between
neighboring objects. Performance is typically one to two orders of magnitude
faster than the current sequential algorithms for discrete isosurface
extraction on small core-count commodity CPU hardware. We demonstrate the
effectiveness of the algorithm on five different datasets including human torso
and brain atlases, mouse brain segmentation, and electron microscopy
connectomics. The software is currently available under a permissive, open
source license in the VTK visualization system.
