Beelddata

Biomedische beeldanalyse met Python

Stephen Bailey

Instructor

Biomedische beeldvorming: meer dan een eeuw aan ontdekkingen

$$1895$$

Door Wilhelm Röntgen. - [1], Public Domain, https://commons.wikimedia.org/w/index.php?curid=5059748

$$2017$$

Door Mikael Häggström - Eigen werk, CC0, https://commons.wikimedia.org/w/index.php?curid=61722886

Biomedische beeldanalyse met Python

Cursusdoelen

Beeld-workflow

Gereedschapskist

  • ImageIO
  • NumPy
  • SciPy
  • matplotlib
Biomedische beeldanalyse met Python

Afbeeldingen laden

  • imageio: afbeeldingen lezen en opslaan
  • Image-objecten zijn NumPy-arrays.
import imageio.v2 as imageio
im = imageio.imread('body-001.dcm')

type(im)
imageio.core.Image
im
Image([[125, 135, ..., 110],
       [100, 130, ..., 100],
        ...,
       [100, 150, ..., 100]], 
          dtype=uint8)
Biomedische beeldanalyse met Python

Afbeeldingen laden

  • Slice de array door waarden per beschikbare dimensie op te geven.
im[0, 0]
125
im[0:2, 0:2]
Image([[125, 135],
       [100, 130]], 
       dtype=uint8)
Biomedische beeldanalyse met Python

Metadata

  • Metadata: het wie, wat, wanneer, waar en hoe van beeldacquisitie

  • Toegankelijk in Image-objecten via het meta-dictionary-attribuut

im.meta
im.meta['Modality']
im.meta.keys()
Dict([('StudyDate', '2017-01-01'),
      ('Modality', 'MR'),
      ('PatientSex', F),
      ...
      ('shape', (256, 256)])
'MR'
odict_keys(['StudyDate', 
            'SeriesDate', 
            'PatientSex',
             ...
             'shape'])
Biomedische beeldanalyse met Python

Afbeeldingen plotten

  • Matplotlibs functie imshow() toont 2D-beelddata

  • Veel colormaps beschikbaar, maar vaak in grijswaarden (cmap='gray')

  • Asticks en labels zijn bij afbeeldingen vaak niet nuttig

import matplotlib.pyplot as plt

plt.imshow(im, cmap='gray')
plt.axis('off')
plt.show()

coronale slice

Biomedische beeldanalyse met Python

Laten we oefenen!

Biomedische beeldanalyse met Python

Preparing Video For Download...