Aan de slagBegin gratis

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

Bekijk cursus

Oefeninstructies

  • Gebruik ndi.zoom() om im twee keer te upsamplen van vorm 128, 128 naar 512, 512. Gebruik eerst een interpolatie-order van 0 en stel daarna order in op 5.
  • Print de arrayvormen van im en up0.
  • Plot close-ups van de beelden. Gebruik het indexbereik 128:256 langs 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()
Code bewerken en uitvoeren