Reamostragem e interpolação

Análise de Imagens Biomédicas em Python

Stephen Bailey

Instructor

Reamostrar muda o formato do array

amostragens-diferentes

Análise de Imagens Biomédicas em Python

Downsampling

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

cérebro-original

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

cérebro-com-downsampling

Análise de Imagens Biomédicas em Python

Upsampling

  • Reamostrar para uma grade maior

  • Não é o mesmo que coletar dados de maior resolução

  • Útil para padronizar taxas de amostragem desiguais

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

cérebro-original

Análise de Imagens Biomédicas em Python

Interpolação

  • "Costura" pontos da grade para modelar o espaço entre eles.

$$ Interpolação\ em\ 1\ D $$

Interpolação em 1D

Análise de Imagens Biomédicas em Python

Interpolação

  • "Costura" pontos da grade para modelar o espaço entre eles.

  • Vizinhos mais próximos: usa o valor medido mais próximo.

$$ Interpolação\ em\ 1\ D $$

Interpolação em 1D por vizinho mais próximo

Análise de Imagens Biomédicas em Python

Interpolação

  • "Costura" pontos da grade para modelar o espaço entre eles.

  • Vizinhos mais próximos: usa o valor medido mais próximo.

    • order = 0
  • Interpolação B-spline: modela o espaço entre pontos com splines de ordem definida.

    • order vai de 1 a 5

$$ Interpolação\ em\ 1\ D $$

Interpolação B-spline

Análise de Imagens Biomédicas em Python

Interpolação em 2D

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

Imagem de brinquedo com cores ascendentes

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

Imagem com cores ascendentes em múltiplas ordens

Análise de Imagens Biomédicas em Python

Vamos praticar!

Análise de Imagens Biomédicas em Python

Preparing Video For Download...