Difference between revisions of "Modules:GrayscaleModelMaker-Documentation-3.6"

From Slicer Wiki
Jump to: navigation, search
m (Text replacement - "https?:\/\/(?:www|wiki)\.slicer\.org\/slicerWiki\/index\.php\/([^ ]+) " to "https://www.slicer.org/wiki/$1 ")
 
(6 intermediate revisions by 4 users not shown)
Line 6: Line 6:
  
 
{|
 
{|
|[[Image:GMMSkin.png|thumb|280px|CT Study, Skin. Threshold=-300 hounsfeld]]
+
|[[Image:GMMSkin.png|thumb|280px|CT Study, Skin. Threshold=-300 [http://en.wikipedia.org/wiki/Hounsfield_scale Hounsfield Units]]]
|[[Image:GMMBone.png|thumb|280px|CT Study, Bone. Threshold=200 hounsfeld]]
+
|[[Image:GMMBone.png|thumb|280px|CT Study, Bone. Threshold=200 [http://en.wikipedia.org/wiki/Hounsfield_scale Hounsfield Units]]]
 
|}
 
|}
  
Line 22: Line 22:
  
 
===Module Description===
 
===Module Description===
Create 3D surface models from grayscale data. This module
+
 
uses Marching Cubes to create an isosurface at a given threshold. The
+
{| style="color:green" border="1"
resulting surface consists of triangles that separate a volume into
+
 
regions below and above the threshold. The resulting surface can be
+
|Program title || Grayscale Model Maker
smoothed and decimated. This model works on continuous data while the
+
 
module Model Maker works on labeled (or discrete) data.
+
|-
 +
|Program 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 module works on continuous data while the module Model Maker works on labeled (or discrete) data.
 +
 
 +
 
 +
|-
 +
|Program version || 3.0
 +
 
 +
|-
 +
|Program documentation-url || https://www.slicer.org/wiki/Modules:GrayscaleModelMaker-Documentation-3.6 |-
 +
|}
  
 
== Usage ==
 
== Usage ==
<pre>
 
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:
+
===Use Cases, Examples===
  
  --returnparameterfile <std::string>
+
This module is especially appropriate for these use cases:
    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>
+
* Use Case 1: when have a continuous data set as input (ie grey scale volume)
    Address of a structure to store process information (progress, abort,
 
    etc.). (default: 0)
 
  
  --xml
+
Examples of the module in use:
    Produce xml description of command line arguments (default: 0)
 
  
  --echo
+
* Example 1: to create a model of the skin or bone from a volume
    Echo the command line arguments (default: 0)
+
* Example 2
  
  --pointnormals
+
===Tutorials===
    Calculate the point normals? Calculated point normals make the surface
 
    appear smooth. Without point normals, the surface will appear faceted.
 
    (default: 0)
 
  
  --splitnormals
+
* Tutorial 1
    Splitting normals is useful for visualizing sharp features. However it
+
** Data Set 1
    creates holes in surfaces which affect measurements (default: 0)
 
  
  --decimate <float>
+
===Quick Tour of Features and Use===
    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>
+
A list panels in the interface, their features, what they mean, and how to use them.
    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)
+
|
 +
* <span style="color:blue">'''''IO''''' </span>
 +
** <span style="color:green">'''Input Volume'''</span: Volume containing the input grayscale data.
 +
** <span style="color:green">'''Output Geometry'''</span>  : Output that contains geometry 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
+
* <span style="color:blue">'''''Grayscale Model Maker Parameters''''' </span>
    Ignores the rest of the labeled arguments following this flag.
+
** <span style="color:green">'''Threshold'''</span> [<span style="color:orange">----threshold</span>] [<span style="color:pink">--t</span>]: Grayscale threshold of isosurface. The resulting surface of triangles separates the volume into voxels that lie above (inside) and below (outside) the threshold. ''Default value: 100.0''
 +
** <span style="color:green">'''Model Name'''</span> [<span style="color:orange">----name</span>] [<span style="color:pink">--n</span>]: Name to use for this model. ''Default value: Model''
 +
** <span style="color:green">'''Smooth'''</span> [<span style="color:orange">----smooth</span>] : Number of smoothing iterations. If 0, no smoothing will be done. ''Default value: 15''
 +
** <span style="color:green">'''Decimate'''</span> [<span style="color:orange">----decimate</span>] : Target reduction during decimation, as a decimal percentage reduction in the number of polygons. If 0, no decimation will be done. ''Default value: 0.25''
 +
** <span style="color:green">'''Split Normals?'''</span> [<span style="color:orange">----splitnormals</span>] : Splitting normals is useful for visualizing sharp features. However it creates holes in surfaces which affect measurements ''Default value: true''
 +
** <span style="color:green">'''Compute Point Normals?'''</span> [<span style="color:orange">----pointnormals</span>] : Calculate the point normals? Calculated point normals make the surface appear smooth. Without point normals, the surface will appear faceted. ''Default value: true''
  
  --version
 
    Displays version information and exits.
 
  
  -h,  --help
+
|[[Image:screenshotBlankNotOptional.png|thumb|280px|User Interface]]
    Displays usage information and exits.
+
|}
  
  <std::string>
 
    (required)  Volume containing the input grayscale data.
 
 
  <std::string>
 
    (required)  Output that contains geometry model.
 
</pre>
 
  
 
== Development ==
 
== Development ==
  
 
===Source code & documentation===
 
===Source code & documentation===
Source Code: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Applications/CLI/GrayscaleModelMaker.cxx?view=annotate GrayscaleModelMaker.cxx]
+
Source Code: [http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Modules/CLI/GrayscaleModelMaker/GrayscaleModelMaker.cxx?view=co GrayscaleModelMaker.cxx]
 
 
XML Description: [http://www.na-mic.org/ViewVC/index.cgi/trunk/Applications/CLI/GrayscaleModelMaker.xml?view=co GrayscaleModelMaker.xml]
 
  
Test: [http://viewvc.na-mic.org/viewcvs.cgi/trunk/Applications/CLI/Testing/GrayscaleModelMakerTest.cxx?rev=11537&view=log GrayscaleModelMakerTest.cxx]
+
XML Description: [http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Modules/CLI/GrayscaleModelMaker/GrayscaleModelMaker.xml?view=co  GrayscaleModelMaker.xml]
  
 
== More Information ==  
 
== More Information ==  
Line 120: Line 98:
  
 
===References===
 
===References===
 +
Model smoothing is done using the windowed sinc algorithm:
 +
http://www.vtk.org/doc/nightly/html/classvtkWindowedSincPolyDataFilter.html#details

Latest revision as of 13:16, 27 November 2019

Home < Modules:GrayscaleModelMaker-Documentation-3.6

Return to Slicer 3.6 Documentation


Module Name

Grayscale Model Maker

CT Study, Skin. Threshold=-300 Hounsfield Units
CT Study, Bone. Threshold=200 Hounsfield Units

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

Program title Grayscale Model Maker
Program 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 module works on continuous data while the module Model Maker works on labeled (or discrete) data.


Program version 3.0
Program documentation-url -

Usage

Use Cases, Examples

This module is especially appropriate for these use cases:

  • Use Case 1: when have a continuous data set as input (ie grey scale volume)

Examples of the module in use:

  • Example 1: to create a model of the skin or bone from a volume
  • Example 2

Tutorials

  • Tutorial 1
    • Data Set 1

Quick Tour of Features and Use

A list panels in the interface, their features, what they mean, and how to use them.

  • IO
    • Input Volume : Volume containing the input grayscale data.
    • Output Geometry : Output that contains geometry model.


  • Grayscale Model Maker Parameters
    • Threshold [----threshold] [--t]: Grayscale threshold of isosurface. The resulting surface of triangles separates the volume into voxels that lie above (inside) and below (outside) the threshold. Default value: 100.0
    • Model Name [----name] [--n]: Name to use for this model. Default value: Model
    • Smooth [----smooth] : Number of smoothing iterations. If 0, no smoothing will be done. Default value: 15
    • Decimate [----decimate] : Target reduction during decimation, as a decimal percentage reduction in the number of polygons. If 0, no decimation will be done. Default value: 0.25
    • Split Normals? [----splitnormals] : Splitting normals is useful for visualizing sharp features. However it creates holes in surfaces which affect measurements Default value: true
    • Compute Point Normals? [----pointnormals] : Calculate the point normals? Calculated point normals make the surface appear smooth. Without point normals, the surface will appear faceted. Default value: true


User Interface


Development

Source code & documentation

Source Code: GrayscaleModelMaker.cxx

XML Description: GrayscaleModelMaker.xml

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

Model smoothing is done using the windowed sinc algorithm: http://www.vtk.org/doc/nightly/html/classvtkWindowedSincPolyDataFilter.html#details