Bilddaten

Biomedizinische Bildanalyse mit Python

Stephen Bailey

Instructor

Biomedizinische Bildgebung: über ein Jahrhundert Entdeckungen

$$1895$$

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

$$2017$$

Von Mikael Häggström - Eigenes Werk, CC0, https://commons.wikimedia.org/w/index.php?curid=61722886

Biomedizinische Bildanalyse mit Python

Kursziele

Bild-Workflow

Werkzeugkasten

  • ImageIO
  • NumPy
  • SciPy
  • matplotlib
Biomedizinische Bildanalyse mit Python

Bilder laden

  • imageio: Bilder lesen und speichern
  • Image-Objekte sind 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)
Biomedizinische Bildanalyse mit Python

Bilder laden

  • Das Array slicen, indem du Werte für jede vorhandene Dimension angibst.
im[0, 0]
125
im[0:2, 0:2]
Image([[125, 135],
       [100, 130]], 
       dtype=uint8)
Biomedizinische Bildanalyse mit Python

Metadaten

  • Metadaten: das Wer, Was, Wann, Wo und Wie der Bildaufnahme

  • In Image-Objekten über das Attribut meta (Dictionary) zugänglich

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'])
Biomedizinische Bildanalyse mit Python

Bilder plotten

  • Matplotlibs Funktion imshow() zeigt 2D-Bilddaten an

  • Viele Colormaps verfügbar, oft in Graustufen (cmap='gray')

  • Achsenticks und -beschriftungen sind bei Bildern oft nicht hilfreich

import matplotlib.pyplot as plt

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

Koronarschnitt

Biomedizinische Bildanalyse mit Python

Lass uns üben!

Biomedizinische Bildanalyse mit Python

Preparing Video For Download...