IPSDK 0.2
IPSDK : Image Processing Software Development Kit
IPSDK Concepts documentation See full documentation

Main measure type

Each measure belong to one of the following category :

Category Comments
Indivisible.png
Indivisible
This is an indivisible measure, which does not directly use shape or image data.
It requires a single pass processing (ie. no multi-threading optimization).
This is an internal measure type.
Generic.png
Generic
This is a generic measure, which does not directly use shape or image data.
It collects other measure results to compute new values.
Geometry2d.png
Geometry 2d
This is a 2d geometric measure which uses shape data to compute its output.
Geometry3d.png
Geometry 3d
This is a 3d geometric measure which uses shape data to compute its output.
Intensity.png
Intensity
This is an intensity measure which uses image data where shape intersects with image row to compute its output.

Measure unit type

Each measure is associated to an unit type (if suitable) which allows to define an output unit string once user defined a geometric calibration unit (see Image calibration concepts in IPSDK) :

Unit Type Comments
none.png
None
Measure is not associated to any unit
custom.png
Custom
Measure is associated to a custom unit type (in this case please see definition of derived method computeCustomMsrUnitStr in measure information class)
length.png
Length
Measure is associated to a length unit type (which will output as 'mm' for example if input geometric calibration unit is 'mm')
area.png
Area
Measure is associated to an area unit type (which will output as 'mm^2' for example if input geometric calibration unit is 'mm')
volume.png
Volume
Measure is associated to an volume unit type (which will output as 'mm^3' for example if input geometric calibration unit is 'mm')
angle.png
Angle
Measure is associated to an angular (radian) unit type (which will output as 'radian' for example if input geometric calibration unit is 'mm')

Measure Parameter

Measure can optionally be associated to a parameter which allows to customize measure computation behavior.

This parameter which is derived from base data item class (see Data item), allows for example to customize area measurement indicating whether holes should be taken into account during compuration.

Measure parameter should not be confounded with measure primary configuration (see Measure primary configuration) which allows to customize input data for processing and usage of a calibration.

Parameter Comments
parameter.png
Measure with parameter
none.png
Measure without parameter

Measure result type

Each measure is associated to an output result type for computation :

Result Type Comments
Value.png
Value
On output each shape is associated to a single value (which can be boolean, real or integer depending on measure)
Coll.png
Collection
On output each shape is associated to a collection of values (which can be boolean, real or integer depending on measure)
Custom.png
Custom
On output each shape is associated to a custom result structure.
See detailed description of each measure to obtain more information.

Measure requirements

During computation, a measure can exploit several data extracted from a shape (see ipsdk::geom::Shape2d in 2d case and ipsdk::geom::Shape3d in 3d case).

Shape can mainly agregates two type of data :

Note
A shape extracted from an image will be associated to 'row intersections' data.
These data will be cleared for example when a geometrical transformation is applied on shape.
On demand, boundary approximation can also be computed during shape extraction step (this is the default behavior in most of case).
This last process can be computationally expensive in 3d case.
Shape Requirements Comments
none.png
None
Measure does not use any data from shape.
This is the case for example of measures which start with other measures results (dependencies) and compute a new result
RowIntersections.png
Row Intersections
Measure uses only row intersections during processing (no need for boundary approximation)
BoundaryApproximation.png
Boundary Approximation
Measure uses only boundary approximation during processing (no need for row intersections)
Both.png
Both
Measure uses row intersections and boundary approximation during processing

Measure dependency

A measure can be associated to some other measures, which are called dependencies. This allows measure to retrieve results associated to these measures and to compute new values.

See detailed description of each measure to obtain these information.