Interpolatie
Interpolatie bepaalt hoe nieuwe pixelintensiteiten worden geschat wanneer je een beeldtransformatie toepast. In SciPy is dit geïmplementeerd met reeksen splinefuncties.
Door de interpolatieparameter order te wijzigen bij een functie zoals ndi.zoom() verandert de schatting: hogere orders geven flexibelere schattingen, maar kosten meer rekentijd.
Upsample in deze oefening im en onderzoek het effect van verschillende interpolatie-orders op het resulterende beeld.
Deze oefening maakt deel uit van de cursus
Biomedische beeldanalyse met Python
Oefeninstructies
- Gebruik
ndi.zoom()omimtwee keer te upsamplen van vorm128, 128naar512, 512. Gebruik eerst een interpolatie-ordervan 0 en stel daarnaorderin op 5. - Print de arrayvormen van
imenup0. - Plot close-ups van de beelden. Gebruik het indexbereik
128:256langs elke as.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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()