НачатьНачать бесплатно

Интерполяция

Интерполяция — это метод оценки интенсивностей новых пикселей при применении преобразования изображения. В SciPy она реализована с помощью наборов сплайн-функций.

Изменение порядка интерполяции order при использовании такой функции, как ndi.zoom(), влияет на результат: более высокие порядки обеспечивают более гибкие оценки, но требуют больше времени на вычисление.

В этом упражнении выполните повышение дискретизации (upsampling) изображения im и изучите влияние различных порядков интерполяции на результат.

Это упражнение является частью курса

Анализ биомедицинских изображений на Python

Посмотреть курс

Инструкции к упражнению

  • Используйте ndi.zoom(), чтобы дважды выполнить повышение дискретизации im с размером 128, 128 до 512, 512. Сначала задайте порядок интерполяции order равным 0, затем установите order равным 5.
  • Выведите форму массивов im и up0.
  • Постройте увеличенные фрагменты изображений. Используйте диапазон индексов 128:256 по каждой оси.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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()
Редактировать и запускать код