ÎncepețiÎncepe gratuit

Aplică o mască

Deși măștile sunt binare, ele pot fi aplicate pe imagini pentru a filtra pixelii unde masca este False.

Funcția where() din NumPy este o modalitate flexibilă de a aplica măști. Primește trei argumente:

np.where(condition, x, y)

condition, x și y pot fi fie tablouri, fie valori individuale. Astfel, poți păstra valorile originale ale imaginii și, în același timp, să setezi la 0 valorile excluse de mască.

Hai să exersăm aplicarea măștilor selectând pixelii care seamănă cu os din radiografia mâinii (im).

Acest exercițiu face parte din cursul

Analiza imaginilor biomedicale în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Creează o mască booleană pentru os, selectând pixelii cu valori mai mari sau egale cu 145.
  • Aplică masca pe imagine folosind np.where(). Valorile care nu se află în mască trebuie setate la 0.
  • Creează o histogramă a imaginii cu mască aplicată. Folosește următoarele argumente pentru a selecta doar pixelii non-zero: min=1, max=255, bins=255.
  • Afișează imaginea cu mască și histograma. Acest pas a fost deja realizat pentru tine.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Import SciPy's "ndimage" module
____

# Screen out non-bone pixels from "im"
mask_bone = ____
im_bone = np.where(____, ____, ____)

# Get the histogram of bone intensities
hist = ____

# Plot masked image and histogram
fig, axes = plt.subplots(2,1)
axes[0].imshow(im_bone)
axes[1].plot(hist)
format_and_render_plot()
Editează și rulează codul