AverageObjectThickness3d
Measures the thickness of structures inside the volume of interest of a three-dimensional binary image.
Access to parameter description
For an introduction:
The average object thickness $Th$ is computed as follows: $$ Th = k \times \frac{V}{S} $$ where
See also
Access to parameter description
For an introduction:
- section Image Analysis
- section Morphometry
The average object thickness $Th$ is computed as follows: $$ Th = k \times \frac{V}{S} $$ where
- $k$ is a constant depending on the the selected model
- $k=2$ for the parallel plate model
- $k=4$ for the cylinder rod model
- $k=6$ for the sphere model
- $S$ is the object surface
- $V$ is the object volume
See also
Function Syntax
This function returns the outputMeasurement output parameter.
// Function prototype. AverageObjectThicknessMsr::Ptr averageObjectThickness3d( std::shared_ptr< iolink::ImageView > inputObjectImage, std::shared_ptr< iolink::ImageView > inputMaskImage, AverageObjectThickness3d::Model model, AverageObjectThicknessMsr::Ptr outputMeasurement = NULL );
This function returns the outputMeasurement output parameter.
// Function prototype. average_object_thickness_3d( input_object_image, input_mask_image, model = AverageObjectThickness3d.Model.PARALLEL_PLATE_MODEL, output_measurement = None )
This function returns the outputMeasurement output parameter.
// Function prototype. public static AverageObjectThicknessMsr AverageObjectThickness3d( IOLink.ImageView inputObjectImage, IOLink.ImageView inputMaskImage, AverageObjectThickness3d.Model model = ImageDev.AverageObjectThickness3d.Model.PARALLEL_PLATE_MODEL, AverageObjectThicknessMsr outputMeasurement = null );
Class Syntax
Parameters
Class Name | AverageObjectThickness3d |
---|
Parameter Name | Description | Type | Supported Values | Default Value | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
inputObjectImage |
The input 3D binary image. | Image | Binary | nullptr | |||||||
inputMaskImage |
The binary image defining the volume of interest. The measurement is computed from voxels having a value of 1 in this image. If it equals null, the computation is performed from all voxels of the input image. It must have same dimensions as the input image. | Image | Binary | nullptr | |||||||
model |
The structure model used to compute the thickness.
|
Enumeration | PARALLEL_PLATE_MODEL | ||||||||
outputMeasurement |
The output measurement result. | AverageObjectThicknessMsr | nullptr |
Object Examples
auto foam_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam_sep.vip" ); AverageObjectThickness3d averageObjectThickness3dAlgo; averageObjectThickness3dAlgo.setInputObjectImage( foam_sep ); averageObjectThickness3dAlgo.setInputMaskImage( foam_sep ); averageObjectThickness3dAlgo.setModel( AverageObjectThickness3d::Model::PARALLEL_PLATE_MODEL ); averageObjectThickness3dAlgo.execute(); std::cout << "thickness: " << averageObjectThickness3dAlgo.outputMeasurement()->thickness( ) ;
foam_sep = imagedev.read_vip_image(imagedev_data.get_image_path("foam_sep.vip")) average_object_thickness_3d_algo = imagedev.AverageObjectThickness3d() average_object_thickness_3d_algo.input_object_image = foam_sep average_object_thickness_3d_algo.input_mask_image = foam_sep average_object_thickness_3d_algo.model = imagedev.AverageObjectThickness3d.PARALLEL_PLATE_MODEL average_object_thickness_3d_algo.execute() print( print("thickness: ", average_object_thickness_3d_algo.output_measurement.thickness( ) ) );
ImageView foam_sep = Data.ReadVipImage( @"Data/images/foam_sep.vip" ); AverageObjectThickness3d averageObjectThickness3dAlgo = new AverageObjectThickness3d { inputObjectImage = foam_sep, inputMaskImage = foam_sep, model = AverageObjectThickness3d.Model.PARALLEL_PLATE_MODEL }; averageObjectThickness3dAlgo.Execute(); Console.WriteLine( "thickness: " + averageObjectThickness3dAlgo.outputMeasurement.thickness( ) );
Function Examples
auto foam_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam_sep.vip" ); auto result = averageObjectThickness3d( foam_sep, foam_sep, AverageObjectThickness3d::Model::PARALLEL_PLATE_MODEL ); std::cout << "thickness: " << result->thickness( ) ;
foam_sep = imagedev.read_vip_image(imagedev_data.get_image_path("foam_sep.vip")) result = imagedev.average_object_thickness_3d( foam_sep, foam_sep, imagedev.AverageObjectThickness3d.PARALLEL_PLATE_MODEL ) print( "thickness: ", result.thickness( ) );
ImageView foam_sep = Data.ReadVipImage( @"Data/images/foam_sep.vip" ); AverageObjectThicknessMsr result = Processing.AverageObjectThickness3d( foam_sep, foam_sep, AverageObjectThickness3d.Model.PARALLEL_PLATE_MODEL ); Console.WriteLine( "thickness: " + result.thickness( ) );