Previous topic

medpy.metric.binary.jc

Next topic

medpy.metric.binary.asd

This Page

medpy.metric.binary.hd

medpy.metric.binary.hd(result, reference, voxelspacing=None, connectivity=1)[source]

Hausdorff Distance.

Computes the (symmetric) Hausdorff Distance (HD) between the binary objects in two images. It is defined as the maximum surface distance between the objects.

Parameters:

result : array_like

Input data containing objects. Can be any type but will be converted into binary: background where 0, object everywhere else.

reference : array_like

Input data containing objects. Can be any type but will be converted into binary: background where 0, object everywhere else.

voxelspacing : float or sequence of floats, optional

The voxelspacing in a distance unit i.e. spacing of elements along each dimension. If a sequence, must be of length equal to the input rank; if a single number, this is used for all axes. If not specified, a grid spacing of unity is implied.

connectivity : int

The neighbourhood/connectivity considered when determining the surface of the binary objects. This value is passed to scipy.ndimage.morphology.generate_binary_structure and should usually be \(> 1\). Note that the connectivity influences the result in the case of the Hausdorff distance.

Returns:

hd : float

The symmetric Hausdorff Distance between the object(s) in `result` and the object(s) in `reference`. The distance unit is the same as for the spacing of elements along each dimension, which is usually given in mm.

See also

assd, asd

Notes

This is a real metric. The binary images can therefore be supplied in any order.