Kom igångKom igång gratis

Finjustera en mask

Ofullständiga masker kan justeras genom att lägga till eller ta bort pixlar. SciPy innehåller flera användbara metoder för detta:

  • binary_dilation: Lägg till pixlar längs kanter
  • binary_erosion: Ta bort pixlar längs kanter
  • binary_opening: Erodera sedan dilatera, vilket "öppnar" områden nära kanter
  • binary_closing: Dilatera sedan erodera, vilket "fyller i" hål

I den här övningen skapar du en benmask och justerar den sedan för att inkludera fler pixlar.

För de återstående övningarna har vi kört följande import åt dig:

import scipy.ndimage as ndi

Den här övningen är en del av kursen

Biomedicinsk bildanalys i Python

Visa kurs

Övningsinstruktioner

  • Skapa en benmask genom att välja pixlar från im som är större än eller lika med 145.
  • Använd ndi.binary_dilation() för att öka storleken på mask_bone. Sätt antalet iterations till 5 för att utföra dilateringen flera gånger.
  • Använd ndi.binary_closing() för att fylla i hål i mask_bone. Sätt antalet iterations till 5 för att fylla hål upp till 10 pixlar breda.
  • Plotta den ursprungliga och den justerade masken.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Create and tune bone mask
mask_bone = ____
mask_dilate = ndi.binary_dilation(____, ____)
mask_closed = ____

# Plot masked images
fig, axes = plt.subplots(1,3)
axes[0].imshow(mask_bone)
axes[1].imshow(mask_dilate)
____
format_and_render_plot()
Redigera och kör kod