Afstand berekenen
Een afstandstransformatie berekent de afstand van elke pixel tot een bepaald punt, meestal de dichtstbijzijnde achtergrondpixel. Zo kun je bepalen welke punten in het object meer naar binnen liggen en welke dichter bij de randen zitten.
Gebruik in deze oefening de Euclidische afstand-transformatie op het linkerhartkamerobject in labels.
Deze oefening maakt deel uit van de cursus
Biomedische beeldanalyse met Python
Oefeninstructies
- Maak een masker van pixels van de linkerhartkamer (waarde 1 in
labels). - Bereken voor elke pixel de afstand tot de achtergrond met
ndi.distance_transform_edt(). Geef de pixeldimensies door via het argumentsampling. - Print de maximale afstand en de bijbehorende coördinaten met
ndi.maximumenndi.maximum_position. - Leg een slice van de afstandskaart over de oorspronkelijke afbeelding. Dit is al voor je gedaan.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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()