CommencezCommencez gratuitement

Ajuster un masque

On peut ajuster des masques imparfaits en ajoutant ou en retirant des pixels. SciPy offre plusieurs méthodes utiles pour y parvenir, notamment :

  • binary_dilation : ajouter des pixels le long des bords
  • binary_erosion : retirer des pixels le long des bords
  • binary_opening : éroder puis dilater, pour « ouvrir » les zones près des bords
  • binary_closing : dilater puis éroder, pour « combler » les trous

Dans cet exercice, créez un masque des os, puis ajustez-le pour inclure des pixels additionnels.

Pour les exercices restants, nous avons déjà exécuté l'import suivant pour vous :

import scipy.ndimage as ndi

Cette activité fait partie du cours

Analyse d'images biomédicales en Python

Voir le cours

Instructions de l’exercice

  • Créez un masque des os en sélectionnant les pixels de im qui sont supérieurs ou égaux à 145.
  • Utilisez ndi.binary_dilation() pour augmenter la taille de mask_bone. Réglez le nombre d'iterations à 5 pour effectuer la dilatation plusieurs fois.
  • Utilisez ndi.binary_closing() pour combler les trous dans mask_bone. Réglez le nombre d'iterations à 5 pour combler des trous jusqu'à 10 pixels de largeur.
  • Tracez le masque original et le masque ajusté.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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()
Modifier et exécuter le code