Source code for ants.math.hausdorff_distance

__all__ = ["hausdorff_distance"]

from ants.decorators import image_method
from ants.internal import get_lib_fn

[docs] @image_method def hausdorff_distance(image1, image2): """ Get Hausdorff distance between non-zero pixels in two images ANTsR function: `hausdorffDistance` Arguments --------- source image : ANTsImage Source image target_image : ANTsImage Target image Returns ------- data frame with "Distance" and "AverageDistance" Example ------- >>> import ants >>> r16 = ants.image_read( ants.get_ants_data('r16') ) >>> r64 = ants.image_read( ants.get_ants_data('r64') ) >>> s16 = ants.kmeans_segmentation( r16, 3 )['segmentation'] >>> s64 = ants.kmeans_segmentation( r64, 3 )['segmentation'] >>> stats = ants.hausdorff_distance(s16, s64) """ image1_int = image1.clone("unsigned int") image2_int = image2.clone("unsigned int") libfn = get_lib_fn("hausdorffDistance%iD" % image1_int.dimension) d = libfn(image1_int.pointer, image2_int.pointer) return d