Kom igångKom igång gratis

Interpolation

Interpolation är metoden för att uppskatta nya pixelintensiteter när en bildtransformation tillämpas. I SciPy implementeras detta med hjälp av en uppsättning splinefunktioner.

Att ändra interpolationens order när du använder en funktion som ndi.zoom() påverkar den resulterande uppskattningen: högre ordning ger mer flexibla uppskattningar men tar längre tid att beräkna.

I den här övningen ska du sampla upp im och undersöka hur olika interpolationsordningar påverkar den resulterande bilden.

Den här övningen är en del av kursen

Biomedicinsk bildanalys i Python

Visa kurs

Övningsinstruktioner

  • Använd ndi.zoom() för att sampla upp im från formen 128, 128 till 512, 512 två gånger. Använd först interpolationsordningen order 0, och sätt sedan order till 5.
  • Skriv ut arraysformerna för im och up0.
  • Plotta närbild på bilderna. Använd indexintervallet 128:256 längs varje axel.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Upsample "im" by a factor of 4
up0 = ndi.zoom(____, zoom=____, order=____)
up5 = ____

# Print original and new shape
print('Original shape:', ____)
print('Upsampled shape:', ____)

# Plot close-ups of the new images
fig, axes = plt.subplots(1, 2)
axes[0].imshow(up0[128:256, 128:256])
axes[1].imshow(____)
format_and_render_plots()
Redigera och kör kod