Interpolation
Interpolation is how new pixel intensities are estimated when an image transformation is applied. It is implemented in SciPy using sets of spline functions.
Editing the interpolation order when using a function such as ndi.zoom() modifies the resulting estimate: higher orders provide more flexible estimates but take longer to compute.
For this exercise, upsample im and investigate the effect of different interpolation orders on the resulting image.
Cet exercice fait partie du cours
Biomedical Image Analysis in Python
Instructions
- Use
ndi.zoom()to upsampleimfrom a shape of128, 128to512, 512twice. First, use an interpolationorderof 0, then setorderto 5. - Print the array shapes of
imandup0. - Plot close-ups of the images. Use the index range
128:256along each axis.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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()