ПочатиПочніть безкоштовно

Застосуйте маску

Хоч маски й бінарні, їх можна застосовувати до зображень, щоб відфільтрувати пікселі, де маска дорівнює False.

Функція NumPy where() — гнучкий спосіб застосування масок. Вона приймає три аргументи:

np.where(condition, x, y)

condition, x і y можуть бути як масивами, так і окремими значеннями. Це дає змогу пропускати вихідні значення зображення та встановлювати замасковані значення в 0.

Попрактикуймося застосовувати маски, вибравши «кісткоподібні» пікселі на рентгенівському знімку кисті (im).

Ця вправа є частиною курсу

Біомедична обробка зображень у Python

Переглянути курс

Інструкції до вправи

  • Створіть булеву маску кісток, вибравши пікселі, більші або рівні 145.
  • Застосуйте маску до зображення за допомогою np.where(). Значення поза маскою мають бути встановлені в 0.
  • Створіть гістограму замаскованого зображення. Щоб обрати лише ненульові пікселі, використайте такі аргументи: min=1, max=255, bins=255.
  • Побудуйте графік замаскованого зображення та гістограми. Це вже зроблено за вас.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Import SciPy's "ndimage" module
____

# Screen out non-bone pixels from "im"
mask_bone = ____
im_bone = np.where(____, ____, ____)

# Get the histogram of bone intensities
hist = ____

# Plot masked image and histogram
fig, axes = plt.subplots(2,1)
axes[0].imshow(im_bone)
axes[1].plot(hist)
format_and_render_plot()
Редагувати та запускати код