Intensiteit
In dit hoofdstuk werken we met een hand-radiografie uit een wedstrijd van de Radiological Society of North America uit 2017. Röntgenabsorptie is het hoogst in dicht weefsel zoals bot, dus de resulterende intensiteiten zouden hoog moeten zijn. Hierdoor kunnen dit soort beelden worden gebruikt om de "botleeftijd" bij kinderen te voorspellen.
Laten we beginnen met het laden van de afbeelding en het controleren van het intensiteitsbereik.
Het gegevenstype van de afbeelding bepaalt het bereik van mogelijke intensiteiten: zo kunnen 8-bits ongekende gehele getallen (uint8) waarden aannemen van 0 tot 255. Een kleurenbalk helpt om deze waarden te koppelen aan de weergegeven afbeelding.
Alle oefeningen in dit hoofdstuk hebben de volgende imports:
import imageio.v2 as imageio
import numpy as np
import matplotlib.pyplot as plt
Deze oefening maakt deel uit van de cursus
Biomedische beeldanalyse met Python
Oefeninstructies
- Laad de afbeelding "hand-xray.jpg" met
imageio. - Print het gegevenstype (
dtype), het minimum (min()) en het maximum (max()) van de intensiteit van de afbeelding. - Plot de afbeelding met
plt.imshow(). Stel het minimum (0) en maximum (255) van de colormap expliciet in met de argumentenvminenvmax. - Voeg een kleurenbalk toe met
plt.colorbar()en render de plot vervolgens met de aangepaste functieformat_and_render_plot(). Dit is al voor je gedaan.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# Load the hand radiograph
im = ____
print('Data type:', ____)
print('Min. value:', ____)
print('Max value:', ____)
# Plot the grayscale image
____
plt.colorbar()
format_and_render_plot()