ObjectSpecificSurface
Measures the ratio of binarized surface to volume of objects contained inside the volume of interest of a binary image.
Access to parameter description
For an introduction: $P$ is the object
Crofton Perimeter.
$Ar$ is the object area.
$S$ is the object surface area calculated using the
Area3d algorithm.
$V$ is the object volume.
See also
Access to parameter description
For an introduction:
- section Image Analysis
- section Morphometry
- On a 2D image $ OSS = P/Ar $
- On a 3D image $ OSS = S/V $
Function Syntax
This function returns outputMeasurement.
// Function prototype
ObjectSpecificSurfaceMsr::Ptr objectSpecificSurface( std::shared_ptr< iolink::ImageView > inputBinaryImage, ObjectSpecificSurfaceMsr::Ptr outputMeasurement = NULL );
This function returns outputMeasurement.
// Function prototype. object_specific_surface( input_binary_image, output_measurement = None )
This function returns outputMeasurement.
// Function prototype. public static ObjectSpecificSurfaceMsr ObjectSpecificSurface( IOLink.ImageView inputBinaryImage, ObjectSpecificSurfaceMsr outputMeasurement = null );
Class Syntax
Parameters
Parameter Name | Description | Type | Supported Values | Default Value | |
---|---|---|---|---|---|
inputBinaryImage |
The input binary image. | Image | Binary | nullptr | |
outputMeasurement |
The output measurement result. | ObjectSpecificSurfaceMsr | nullptr |
Parameter Name | Description | Type | Supported Values | Default Value | |
---|---|---|---|---|---|
input_binary_image |
The input binary image. | image | Binary | None | |
output_measurement |
The output measurement result. | ObjectSpecificSurfaceMsr | None |
Parameter Name | Description | Type | Supported Values | Default Value | |
---|---|---|---|---|---|
inputBinaryImage |
The input binary image. | Image | Binary | null | |
outputMeasurement |
The output measurement result. | ObjectSpecificSurfaceMsr | null |
Object Examples
auto polystyrene_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene_sep.vip" ); ObjectSpecificSurface objectSpecificSurfaceAlgo; objectSpecificSurfaceAlgo.setInputBinaryImage( polystyrene_sep ); objectSpecificSurfaceAlgo.execute(); std::cout << "ratio: " << objectSpecificSurfaceAlgo.outputMeasurement()->ratio( 0 ) ;
polystyrene_sep = imagedev.read_vip_image(imagedev_data.get_image_path("polystyrene_sep.vip")) object_specific_surface_algo = imagedev.ObjectSpecificSurface() object_specific_surface_algo.input_binary_image = polystyrene_sep object_specific_surface_algo.execute() print( "ratio: ", str( object_specific_surface_algo.output_measurement.ratio( 0 ) ) )
ImageView polystyrene_sep = Data.ReadVipImage( @"Data/images/polystyrene_sep.vip" ); ObjectSpecificSurface objectSpecificSurfaceAlgo = new ObjectSpecificSurface { inputBinaryImage = polystyrene_sep }; objectSpecificSurfaceAlgo.Execute(); Console.WriteLine( "ratio: " + objectSpecificSurfaceAlgo.outputMeasurement.ratio( 0 ) );
Function Examples
auto polystyrene_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene_sep.vip" ); auto result = objectSpecificSurface( polystyrene_sep ); std::cout << "ratio: " << result->ratio( 0 ) ;
polystyrene_sep = imagedev.read_vip_image(imagedev_data.get_image_path("polystyrene_sep.vip")) result = imagedev.object_specific_surface( polystyrene_sep ) print( "ratio: ", str( result.ratio( 0 ) ) )
ImageView polystyrene_sep = Data.ReadVipImage( @"Data/images/polystyrene_sep.vip" ); ObjectSpecificSurfaceMsr result = Processing.ObjectSpecificSurface( polystyrene_sep ); Console.WriteLine( "ratio: " + result.ratio( 0 ) );