Calculate distance
A distance transformation calculates the distance from each pixel to a given point, usually the nearest background pixel. This allows you to determine which points in the object are more interior and which are closer to edges.
For this exercise, use the Euclidian distance transform on the left ventricle object in labels
.
This exercise is part of the course
Biomedical Image Analysis in Python
Exercise instructions
- Create a mask of left ventricle pixels (Value of 1 in
labels
). - Calculate the distance to background for each pixel using
ndi.distance_transform_edt()
. Supply pixel dimensions to thesampling
argument. - Print out the maximum distance and its coordinates using
ndi.maximum
andndi.maximum_position
. - Overlay a slice of the distance map on the original image. This has been done for you.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# Calculate left ventricle distances
lv = np.where(____, 1, 0)
dists = ____
# Report on distances
print('Max distance (mm):', ____)
print('Max location:', ____)
# Plot overlay of distances
overlay = np.where(dists[5] > 0, dists[5], np.nan)
plt.imshow(overlay, cmap='hot')
format_and_render_plot()