Constructor for the VolumeSegmentationContext
Unique segmentation context ID.
Unload the Custom Kenrel DLL and free any memory it used
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Clear the segmentation info for some labels
@param labelMask bit mask indicating which labels to clear (e.g. 0x01 will only clear
label 0, 0x02 will only clear label 1, and 0xff will clear all 8 labels)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Take a 3D Transfer Function and make it all a solid colr (usefull for visualizing the results of segmentation)
which Label TF to use as the shape of the TF
which Label TF to set
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Combine two labels int one using a voxel-wise or operation
first label to combine
second label to combine
label to place the reult in (note it can be the same as one of the input labels)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Copy one label to another
label to copy from
label to copy to
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Dilate one connected component
Index of which Label to segment into
Index of which Label to dilate
origin point inside the one connected component to dilate (Note the "closest surface to this point will be dilated even if it is a "hole" inside an object and not the object "outside" surface
number of layers to add to the outside
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Enable Interactive Segmentation. Specifically setup the render engines that will be rendering the results so that TF can be adjusted for subtractive and other things. AS well as set flag for some things that happen automatically inside (e.g. make the working label hte same TF as the seg Label)
render engines that are used with this segmentation operation
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Erode one connected component
Index of which Label to segment into
Index of which Label to erode
origin point inside the one connected component to erode (Note the "closest surface to this point will be dilated even if it is a "hole" inside an object and not the object "outside" surface
number of layers to take off from the outside
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Cut a section of the data using a polygon specified by the POINT array. Note that Seg_Prams do not effect this.
array of Point objects
Index of which Label to segment into
The width of the image used for gathering the points
The height of the image used for gathering the points
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Return the octree context associated with this object
octree context associated with this object
Return the segmentation context ID associated with this object
segmentation context ID associated with this object
Initializes the class. This function must be called before other class functions can be used.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
End the current "cycle", the last segmentation is dropped and the persistent seg state remains unaltered from this cycle
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
End the current "cycle", the last segmentation from m_workingLabel is "or"-ed over to the SegLabelIndex
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Start an interactive segmentation "cycle" (Cycle is defined as a sequence of segments where the use adjusts the parameters to get some desired segmentation that is kept only on "End" without "Escape"). The m_workingLabel is used for these intermittent segmentations
initial parameters for the segmentation operation
This is an asynchronous method that returns a Promise as follows:
Promise .then(data) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , data)
data.sizeVoxels value of the size of the segmented region (in voxels) data.sizeMMs value of the size of the segmented region (in cubic millimeters)
During a "cycle", this is called for each subsequent segment with new parameters into m_workingLabel
parameters for the segmentation operation
This is an asynchronous method that returns a Promise as follows:
Promise .then(data) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , data)
data.sizeVoxels value of the size of the segmented region (in voxels) data.sizeMMs value of the size of the segmented region (in cubic millimeters)
The custom Kernel DLL is loaded at runtime since it is unkown at compile time. ALso a buffer for and parameters which will be used is allocated (so we an later copy new parameters in, a copy is kept here locally in case the client is remote). Params can be updated in Segmentation Params for subsequent segmentation calls.
The fully (or relative) qualifed pathto the dll file including extension
uses the customKernelParamArray values
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Load the label Volume (segmentation state) from disk .gipl format on the server
file (either fully qualifed or relative. Also with extension) to load (from server)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Fill in the upper TF's with colorized version of the W/L TF
Window Width in Volume Values as stored in the file (e.g. for CT, the HU values are converted using DICOM rescale intercept and scale)
Window Level in Volume Values as stroed in the file (e.g. for CT, the HU values are converted using DICOM rescale intercept and scale)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Fill in the upper TF's with colorized version of hte main (0) transfer function
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
To display segmentation on 2D Thin display we utilize a fully opaque TF with a Parallel render instead of MPR render Type. This function will create that TF. for unsegmented data use (0,0,0) to (255,255,255) to get a TF whihc looks a a W/L display on a normal MPR 2D display. It is suggested for the segmented labels to use (r/2,g/2,b/2) to (r,g,b) for a given color for that label because then you will still see the different shades of the 2D image below the color.
which Label TF to set
Window Width in Volume Values as stored in the file (e.g. for CT, the HU values are converted using DICOM rescale intercept and scale)
Window Level in Volume Values as stroed in the file (e.g. for CT, the HU values are converted using DICOM rescale intercept and scale)
color to use for the minimum window value
color to use for the maximum window value
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Private method for printing the supplied segmentation state from the native code. This is used only for internal debugging purposes
specifies the parameters that should be printed to the log.
This is a synchronous method that returns void immediately upon emitted the event.
Save the current state as an "operation" (internally a ring buffer of 10 undo's are stored, so only the last 10 can be undone)
Which label to save
This is an asynchronous method that returns a Promise as follows:
Promise .then(numLeft) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , numLeft)
numLeft The number of undo operations possible after removing this one
Save the label Volume (segmentation state) to disk in .gipl format on the server
file (either fully qualifed or relative. Also with extension) to save (on server)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Perform the Segmentation, make sure you invoke this method with a Promise or callback so you know when it completes. You should not modify the VolumeSegmentationContext while segmentation is occuring.
data structure that will be applied before segmenting
This is an asynchronous method that returns a Promise as follows:
Promise .then(data) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , data)
data.sizeVoxels value of the size of the segmented region (in voxels) data.sizeMMs value of the size of the segmented region (in cubic millimeters)
Set the label for segmetnation output (the label value to segment into)
the lable index value to segment into (defaults to 1)
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Set the mask of lables that segmentation will grow through
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Set the type of segmentation (additive or subtractive)
specifies either additive or subtractive enum
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Swap contents of two labels
first label to swap
second label to swap
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Undo the last "operation" (internally a ring buffer of 10 undo's are stored, so only the last 10 can be undone)
This is an asynchronous method that returns a Promise as follows:
Promise .then(numLeft) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , numLeft)
numLeft The number of undo operations possible after removing this one
Generated using TypeDoc
volumeSegmentationContext is backed by a native VolumeSegmentationContext, associated with this an Fovia.OctreeContext and one or more Fovia.RenderEngineContext .