Ricampionamento e interpolazione

Analisi di immagini biomediche in Python

Stephen Bailey

Instructor

Il ricampionamento cambia la forma dell'array

diversi campionamenti

Analisi di immagini biomediche in Python

Downsampling

vol = imageio.volread('OAS1_0255', format='DICOM')
vol.shape
(256, 256, 256)

cervello originale

vol_dn = ndi.zoom(vol, zoom=0.5)
vol_dn.shape
(128, 128, 128)

cervello downsampled

Analisi di immagini biomediche in Python

Upsampling

  • Ricampionare su una griglia più grande

  • Non equivale a raccogliere dati a risoluzione più alta

  • Utile per uniformare frequenze di campionamento diverse

vol_up = ndi.zoom(vol, zoom=2)
vol_up.shape
(512, 512, 512)

cervello upsampled

Analisi di immagini biomediche in Python

Interpolazione

  • «Cuce insieme» i punti della griglia per modellare lo spazio tra i punti.

$$ Interpolazione\ in\ 1\ D $$

Interpolazione in 1D

Analisi di immagini biomediche in Python

Interpolazione

  • «Cuce insieme» i punti della griglia per modellare lo spazio tra i punti.

  • Nearest-neighbor: usa il valore misurato più vicino.

$$ Interpolazione\ in\ 1\ D $$

Interpolazione in 1D nearest neighbor

Analisi di immagini biomediche in Python

Interpolazione

  • «Cuce insieme» i punti della griglia per modellare lo spazio tra i punti.

  • Nearest-neighbor: usa il valore misurato più vicino.

    • order = 0
  • Interpolazione B-spline: modella lo spazio tra i punti con funzioni spline di ordine specificato.

    • order è tra 1 e 5

$$ Interpolazione\ in\ 1\ D $$

Interpolazione B-spline

Analisi di immagini biomediche in Python

Interpolazione in 2D

im=np.arange(100).reshape([10,10])

Immagine giocattolo a colori crescenti

zm1=ndi.zoom(im, zoom=10, order=0)
zm2=ndi.zoom(im, zoom=10, order=2)
zm3=ndi.zoom(im, zoom=10, order=4)

Immagine a colori crescente multi-ordine

Analisi di immagini biomediche in Python

Esercitiamoci!

Analisi di immagini biomediche in Python

Preparing Video For Download...