Seg3D  2.4
Seg3D is a free volume segmentation and processing tool developed by the NIH Center for Integrative Biomedical Computing at the University of Utah Scientific Computing and Imaging (SCI) Institute.
Public Types | Protected Member Functions | List of all members
Seg3D::ITKFilter Class Reference
Inheritance diagram for Seg3D::ITKFilter:
Seg3D::LayerFilter Seg3D::LayerAbstractFilter Core::Runnable Filter::ITKResampleFilter Seg3D::ActionSpeedlineAlgo Seg3D::CannyEdgeDetectionFilterAlgo Seg3D::ConfidenceConnectedFilterAlgo Seg3D::ConnectedComponentFilterAlgo Seg3D::ConnectedComponentSizeFilterAlgo Seg3D::CurvatureAnisotropicDiffusionFilterAlgo Seg3D::DiscreteGaussianFilterAlgo Seg3D::DistanceFilterAlgo Seg3D::FillHolesFilterAlgo Seg3D::GradientAnisotropicDiffusionFilterAlgo Seg3D::GradientMagnitudeFilterAlgo Seg3D::IntensityCorrectionFilterAlgo Seg3D::MeanFilterAlgo Seg3D::MedianFilterAlgo Seg3D::OtsuThresholdFilterAlgo Seg3D::PointSetFilterAlgo Seg3D::PointSetTransformAlgo Seg3D::SmoothDilateErodeFilterAlgo Seg3D::SmoothDilateFilterAlgo Seg3D::SmoothErodeFilterAlgo Seg3D::ThresholdSegmentationLSFilterAlgo

Public Types

typedef itk::Image< unsigned short, 3 > USHORT_IMAGE_TYPE
 
typedef itk::Image< unsigned int, 3 > UINT_IMAGE_TYPE
 
typedef itk::Image< float, 3 > FLOAT_IMAGE_TYPE
 
typedef itk::Image< unsigned char, 3 > UCHAR_IMAGE_TYPE
 
typedef Core::ITKImageDataT< float > FLOAT_CONTAINER_TYPE
 
typedef Core::ITKImageDataT< unsigned int > UINT_CONTAINER_TYPE
 
typedef Core::ITKImageDataT< unsigned short > USHORT_CONTAINER_TYPE
 
typedef Core::ITKImageDataT< unsigned char > UCHAR_CONTAINER_TYPE
 

Protected Member Functions

template<class T >
bool get_itk_image_from_layer (const LayerHandle &layer, typename Core::ITKImageDataT< T >::Handle &image, bool invert=false)
 
template<class T >
bool get_itk_image_from_mask_layer (const LayerHandle &layer, typename Core::ITKImageDataT< T >::Handle &image, double label=1.0)
 
template<class T >
bool insert_itk_image_into_layer (const LayerHandle &layer, typename itk::Image< T, 3 > *itk_image)
 
template<class T >
bool insert_itk_image_pointer_into_layer (const LayerHandle &layer, typename itk::Image< T, 3 >::Pointer itk_image)
 
template<class T >
bool insert_itk_positive_labels_into_mask_layer (const LayerHandle &layer, typename itk::Image< T, 3 > *itk_image, bool invert=false)
 
template<class T >
bool insert_itk_positive_labels_pointer_into_mask_layer (const LayerHandle &layer, typename itk::Image< T, 3 >::Pointer itk_image, bool invert=false)
 
template<class T >
bool insert_itk_label_into_mask_layer (const LayerHandle &layer, typename itk::Image< T, 3 > *itk_image, T label)
 
template<class T >
bool insert_itk_label_pointer_into_mask_layer (const LayerHandle &layer, typename itk::Image< T, 3 >::Pointer itk_image, T label)
 
template<class T >
bool convert_and_insert_itk_image_into_layer (const LayerHandle &layer, typename itk::Image< T, 3 > *itk_image, Core::DataType data_type)
 
template<class T >
bool convert_and_insert_itk_image_pointer_into_layer (const LayerHandle &layer, typename itk::Image< T, 3 >::Pointer itk_image, Core::DataType data_type)
 
template<class T >
void forward_abort_to_filter (T filter_pointer, LayerHandle layer)
 
template<class T >
void observe_itk_progress (T filter_pointer, const LayerHandle &layer, float progress_start=0.0, float progress_amount=1.0)
 
template<class T >
void observe_itk_iterations (T filter_pointer, boost::function< void(itk::Object *) > iteration_fcn)
 
template<class T >
void limit_number_of_itk_threads (T filter_pointer)
 
virtual void handle_abort ()
 
virtual void handle_stop ()
 
- Protected Member Functions inherited from Seg3D::LayerFilter
virtual void run_filter ()=0
 
virtual void run ()
 

Additional Inherited Members

- Public Member Functions inherited from Seg3D::LayerFilter
virtual void raise_abort () override
 
virtual bool check_abort () override
 
void raise_stop ()
 
bool check_stop ()
 
virtual void abort_and_wait () override
 
void connect_abort (const LayerHandle &layer)
 
void connect_stop (const LayerHandle &layer)
 
Core::NotifierHandle get_notifier ()
 
bool find_layer (const std::string &layer_id, LayerHandle &layer)
 
bool lock_for_use (LayerHandle layer)
 
bool lock_for_processing (LayerHandle layer)
 
bool lock_for_deletion (LayerHandle layer)
 
bool create_and_lock_data_layer_from_layer (LayerHandle src_layer, LayerHandle &dst_layer)
 
bool create_and_lock_data_layer (const Core::GridTransform &grid_trans, LayerHandle src_layer, LayerHandle &dst_layer)
 
bool create_cropped_large_volume_layer (const Core::GridTransform &crop_trans, LayerHandle src_layer, LayerHandle &dst_layer)
 
bool create_and_lock_mask_layer_from_layer (LayerHandle src_layer, LayerHandle &dst_layer)
 
bool create_and_lock_mask_layer_from_layer (LayerHandle src_layer, LayerHandle &dst_layer, std::string dst_name)
 
bool create_and_lock_mask_layer (const Core::GridTransform &grid_trans, LayerHandle src_layer, LayerHandle &dst_layer)
 
bool dispatch_unlock_layer (LayerHandle layer)
 
bool dispatch_delete_layer (LayerHandle layer)
 
bool dispatch_insert_data_volume_into_layer (LayerHandle layer, Core::DataVolumeHandle data, bool update_histogram)
 
bool dispatch_insert_mask_volume_into_layer (LayerHandle layer, Core::MaskVolumeHandle mask)
 
void create_undo_redo_and_provenance_record (Core::ActionContextHandle context, Core::ActionHandle action, bool split_prov=false)
 
bool update_provenance_action_string (Core::ActionHandle action)
 
void set_sandbox (SandboxID sandbox)
 
SandboxID get_sandbox ()
 
virtual std::string get_filter_name () const =0
 
virtual std::string get_layer_prefix () const =0
 
void report_error (const std::string &error)
 
Layer::filter_key_type get_key () const
 
- Static Public Member Functions inherited from Core::Runnable
static void Start (RunnableHandle runnable)
 

Member Function Documentation

template<class T >
bool Seg3D::ITKFilter::convert_and_insert_itk_image_into_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 > *  itk_image,
Core::DataType  data_type 
)
inlineprotected

CONVERT_AND_INSERT_ITK_IMAGE_INTO_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::convert_and_insert_itk_image_pointer_into_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 >::Pointer  itk_image,
Core::DataType  data_type 
)
inlineprotected

CONVERT_AND_INSERT_ITK_IMAGE_POINTER_INTO_LAYER: Insert an itk image back into a layer

template<class T >
void Seg3D::ITKFilter::forward_abort_to_filter ( filter_pointer,
LayerHandle  layer 
)
inlineprotected

FORWARD_ABORT_TO_FILTER: Forward a Seg3D abort to an itk filter

template<class T >
bool Seg3D::ITKFilter::get_itk_image_from_layer ( const LayerHandle &  layer,
typename Core::ITKImageDataT< T >::Handle &  image,
bool  invert = false 
)
inlineprotected

GET_ITK_IMAGE_FROM_LAYER: Retrieve an itk image from a data or mask layer

template<class T >
bool Seg3D::ITKFilter::get_itk_image_from_mask_layer ( const LayerHandle &  layer,
typename Core::ITKImageDataT< T >::Handle &  image,
double  label = 1.0 
)
inlineprotected

GET_ITK_IMAGE_FROM_MASK_LAYER: Retrieve an itk image from a data or mask layer

void Seg3D::ITKFilter::handle_abort ( )
protectedvirtual

HANDLE_ABORT: A virtual function that can be overloaded

Reimplemented from Seg3D::LayerFilter.

void Seg3D::ITKFilter::handle_stop ( )
protectedvirtual

HANDLE_STOP: A virtual function that can be overloaded

Reimplemented from Seg3D::LayerFilter.

template<class T >
bool Seg3D::ITKFilter::insert_itk_image_into_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 > *  itk_image 
)
inlineprotected

INSERT_ITK_IMAGE_INTO_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::insert_itk_image_pointer_into_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 >::Pointer  itk_image 
)
inlineprotected

INSERT_ITK_IMAGE_POINTER_INTO_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::insert_itk_label_into_mask_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 > *  itk_image,
label 
)
inlineprotected

INSERT_ITK_LABEL_INTO_MASK_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::insert_itk_label_pointer_into_mask_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 >::Pointer  itk_image,
label 
)
inlineprotected

INSERT_ITK_LABEL_POINTER_INTO_MASK_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::insert_itk_positive_labels_into_mask_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 > *  itk_image,
bool  invert = false 
)
inlineprotected

INSERT_ITK_POSITIVE_LABELS_INTO_MASK_LAYER: Insert an itk image back into a layer

template<class T >
bool Seg3D::ITKFilter::insert_itk_positive_labels_pointer_into_mask_layer ( const LayerHandle &  layer,
typename itk::Image< T, 3 >::Pointer  itk_image,
bool  invert = false 
)
inlineprotected

INSERT_ITK_POSITIVE_LABELS_POINTER_INTO_MASK_LAYER: Insert an itk image back into a layer

template<class T >
void Seg3D::ITKFilter::limit_number_of_itk_threads ( filter_pointer)
inlineprotected

LIMIT_NUMBER_OF_ITK_THREADS: Limit the number of itk threads so that at least one thread can be used to allow for interaction in the program. NOTE: If the host machine does not have multiple cores this function will not do anything

template<class T >
void Seg3D::ITKFilter::observe_itk_iterations ( filter_pointer,
boost::function< void(itk::Object *) >  iteration_fcn 
)
inlineprotected

OBSERVE_ITK_ITERATIONS: Forward progess on iterations to a user specified function template< class T > void observe_itk_iterations( T filter_pointer, boost::function< void( itk::Object* ) > iteration_fcn ) { this->observe_itk_iterations_internal( itk::ProcessObject::Pointer( filter_pointer ), iteration_fcn ); }

template<class T >
void Seg3D::ITKFilter::observe_itk_progress ( filter_pointer,
const LayerHandle &  layer,
float  progress_start = 0.0,
float  progress_amount = 1.0 
)
inlineprotected

OBSERVE_ITK_PROGRESS: Forward the progress an itk filter is making and check for the abort status of the layer


The documentation for this class was generated from the following files: