Interpolación
La interpolación es cómo se estiman nuevas intensidades de píxel cuando se aplica una transformación a una imagen. En SciPy se implementa usando conjuntos de funciones spline.
Editar el parámetro order de la interpolación al usar una función como ndi.zoom() modifica la estimación resultante: órdenes más altos dan estimaciones más flexibles, pero tardan más en calcularse.
En este ejercicio, sobre-muestrea im y analiza el efecto de distintos órdenes de interpolación en la imagen resultante.
Este ejercicio forma parte del curso
Análisis de imágenes biomédicas en Python
Instrucciones del ejercicio
- Usa
ndi.zoom()para sobre-muestrearimde una forma128, 128a512, 512dos veces. Primero, usa unorderde interpolación de 0 y luego estableceorderen 5. - Imprime las formas de los arrays de
imyup0. - Representa acercamientos de las imágenes. Usa el rango de índices
128:256en cada eje.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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()