Aan de slagBegin gratis

Histogrammen

Histogrammen laten de verdeling van waarden in je afbeelding zien door elk element in te delen op basis van zijn intensiteit en vervolgens de grootte van elke bin te bepalen.

De oppervlakte onder een histogram heet de cumulatieve verdelingsfunctie. Die meet hoe vaak een bepaald bereik van pixelintensiteiten voorkomt.

Beschrijf in deze oefening de intensiteitsverdeling in im door het histogram en de cumulatieve verdelingsfunctie te berekenen en ze samen weer te geven.

Deze oefening maakt deel uit van de cursus

Biomedische beeldanalyse met Python

Bekijk cursus

Oefeninstructies

  • Importeer scipy.ndimage als ndi.
  • Genereer een histogram met 256 bins van im dat het volledige bereik van np.uint8-waarden dekt.
  • Bereken de cumulatieve verdelingsfunctie voor im. Bepaal eerst de cumulatieve som van hist en deel die vervolgens door het totale aantal pixels in hist.
  • Plot hist en cdf in aparte subplots. Dit is al voor je gedaan.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# Import SciPy's "ndimage" module
import ____ as ____ 

# Create a histogram, binned at each possible value
hist = ____

# Create a cumulative distribution function
cdf = hist.cumsum() / ____

# Plot the histogram and CDF
fig, axes = plt.subplots(2, 1, sharex=True)
axes[0].plot(hist, label='Histogram')
axes[1].plot(cdf, label='CDF')
format_and_render_plot()
Code bewerken en uitvoeren