Immagini N-dimensionali

Analisi di immagini biomediche in Python

Stephen Bailey

Instructor

Immagini di ogni forma e dimensione

im[row, col]

radiografia del piede

Analisi di immagini biomediche in Python

Immagini di ogni forma e dimensione

vol[pln, row, col]

gif del corpo

Analisi di immagini biomediche in Python

Immagini di ogni forma e dimensione

im[row, col, ch]

cellula rgb

Analisi di immagini biomediche in Python

Immagini di ogni forma e dimensione

im_ts[time, row, col, ch]

video di cellule

Analisi di immagini biomediche in Python

Le immagini N-dimensionali sono pile di array

pila di immagini leggermente sfalsate

import imageio.v2 as imageio
import numpy as np

im1=imageio.imread('chest-000.dcm') im2=imageio.imread('chest-001.dcm') im3=imageio.imread('chest-002.dcm')
im1.shape
(512, 512)
vol = np.stack([im1, im2, im3])

vol.shape
(3, 512, 512)
Analisi di immagini biomediche in Python

Caricare volumi direttamente

imageio.volread():

  • legge direttamente dati multidimensionali
  • crea un volume da più immagini
import os
os.listdir('chest-data')
['chest-000.dcm', 
 'chest-001.dcm', 
 'chest-002.dcm',
 ..., 
 'chest-049.dcm']
import imageio.v2 as imageio
vol = imageio.volread('chest-data', format='DICOM')

vol.shape
(50, 512, 512)
Analisi di immagini biomediche in Python

Shape, campionamento e campo visivo

 Shape dell'immagine: numero di elementi lungo ciascun asse

import imageio.v2 as imageio
vol = imageio.volread(
            'chest-data', format='DICOM')
# Image shape (in voxels)
n0, n1, n2 = vol.shape
n0, n1, n2
(50, 512, 512)

Campo visivo (Field of view): spazio fisico coperto su ciascun asse

Frequenza di campionamento: spazio fisico coperto da ogni elemento

# Sampling rate (in mm)
d0, d1, d2 = vol.meta['sampling']
d0, d1, d2
(2, 0.5, 0.5)
# Field of view (in mm)
n0 * d0, n1 * d1, n2 * d2
(100, 256, 256)
Analisi di immagini biomediche in Python

Esercitiamoci!

Analisi di immagini biomediche in Python

Preparing Video For Download...