Підігнати маску
Недосконалі маски можна поліпшити, додаючи або забираючи пікселі. У 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()