Modules:GrayscaleModelMaker-Documentation-3.6

From Slicer Wiki
Revision as of 11:39, 29 April 2010 by Lorensen (talk | contribs)
Jump to: navigation, search
Home < Modules:GrayscaleModelMaker-Documentation-3.6

Return to Slicer 3.6 Documentation


Module Name

Grayscale Model Maker

CT Study, Skin. Threshold=-300 hounsfeld
CT Study, Bone. Threshold=200 hounsfeld

General Information

Module Type & Category

Type: CLI

Category: Surface Models

Authors, Collaborators & Contact

  • Authors: Bill Lorensen, Nicole Aucoin
  • Contact: bill.lorensen at gmail.com

Module Description

Create 3D surface models from grayscale data. This module uses Marching Cubes to create an isosurface at a given threshold. The resulting surface consists of triangles that separate a volume into regions below and above the threshold. The resulting surface can be smoothed and decimated. This model works on continuous data while the module Model Maker works on labeled (or discrete) data.

Usage

GrayscaleModelMaker 
                   [--returnparameterfile
                   <std::string>]
                   [--processinformationaddress
                   <std::string>] [--xml] [--echo]
                   [--pointnormals] [--splitnormals]
                   [--decimate <float>] [--smooth
                   <int>] [-n <std::string>] [-t
                   <float>] [--] [--version] [-h]
                   <std::string> <std::string>

Where: 

   --returnparameterfile <std::string>
     Filename in which to write simple return parameters (int, float,
     int-vector, etc.) as opposed to bulk return parameters (image,
     geometry, transform, measurement, table).

   --processinformationaddress <std::string>
     Address of a structure to store process information (progress, abort,
     etc.). (default: 0)

   --xml
     Produce xml description of command line arguments (default: 0)

   --echo
     Echo the command line arguments (default: 0)

   --pointnormals
     Calculate the point normals? Calculated point normals make the surface
     appear smooth. Without point normals, the surface will appear faceted.
     (default: 0)

   --splitnormals
     Splitting normals is useful for visualizing sharp features. However it
     creates holes in surfaces which affect measurements (default: 0)

   --decimate <float>
     Target reduction during decimation, as a decimal percentage reduction
     in the number of polygons. If 0, no decimation will be done. (default:
     0.25)

   --smooth <int>
     Number of smoothing iterations. If 0, no smoothing will be done.
     (default: 15)

   -n <std::string>,  --name <std::string>
     Name to use for this model. (default: Model)

   -t <float>,  --threshold <float>
     Grayscale threshold of isosurface. The resulting surface of triangles
     separates the volume into voxels that lie above (inside) and below
     (outside) the threshold. (default: 100)

   --,  --ignore_rest
     Ignores the rest of the labeled arguments following this flag.

   --version
     Displays version information and exits.

   -h,  --help
     Displays usage information and exits.

   <std::string>
     (required)  Volume containing the input grayscale data.

   <std::string>
     (required)  Output that contains geometry model.

Development

Source code & documentation

Source Code: GrayscaleModelMaker.cxx

XML Description: GrayscaleModelMaker.xml

Test: GrayscaleModelMakerTest.cxx

More Information

Acknowledgment

This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on the National Centers for Biomedical Computing can be obtained from National Centers for Biomedical Computing.

References