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
Oefeninstructies
- Importeer
scipy.ndimagealsndi. - Genereer een histogram met 256 bins van
imdat het volledige bereik vannp.uint8-waarden dekt. - Bereken de cumulatieve verdelingsfunctie voor
im. Bepaal eerst de cumulatieve som vanhisten deel die vervolgens door het totale aantal pixels inhist. - Plot
histencdfin 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()