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

Настройка маски

Несовершенные маски можно улучшить, добавляя или удаляя пиксели. В SciPy для этого есть несколько удобных методов:

  • binary_dilation: добавляет пиксели вдоль краёв
  • binary_erosion: удаляет пиксели вдоль краёв
  • binary_opening: сначала сужает, затем расширяет — «открывает» области вблизи краёв
  • binary_closing: сначала расширяет, затем сужает — «заполняет» отверстия

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

Для оставшихся упражнений мы уже выполнили следующий импорт:

import scipy.ndimage as ndi

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

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

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

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

  • Создайте маску костей, выбрав из im пиксели со значением, большим или равным 145.
  • С помощью ndi.binary_dilation() увеличьте размер mask_bone. Установите параметр iterations равным 5, чтобы выполнить расширение несколько раз.
  • С помощью ndi.binary_closing() заполните отверстия в mask_bone. Установите параметр iterations равным 5, чтобы закрыть отверстия шириной до 10 пикселей.
  • Отобразите исходную и скорректированную маски.

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

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

# Create and tune bone mask
mask_bone = ____
mask_dilate = ndi.binary_dilation(____, ____)
mask_closed = ____

# Plot masked images
fig, axes = plt.subplots(1,3)
axes[0].imshow(mask_bone)
axes[1].imshow(mask_dilate)
____
format_and_render_plot()
Редактировать и запускать код