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

Інтенсивність

У цьому розділі ми працюватимемо з рентгенограмою кисті з конкурсу 2017 року від Radiological Society of North America. Поглинання рентгенівських променів найбільше в щільних тканинах, зокрема в кістках, тож відповідні значення інтенсивності мають бути високими. Завдяки цьому такі зображення можна використовувати для прогнозування «кісткового віку» у дітей.

Почнемо з того, що завантажимо зображення та перевіримо діапазон його інтенсивностей.

Тип даних зображення визначає можливий діапазон інтенсивностей: наприклад, 8-бітні беззнакові цілі (uint8) можуть набувати значень від 0 до 255. Панель кольорів (colorbar) допомагає пов'язати ці значення з відображеним зображенням.

У всіх вправах цього розділу використовуються такі імпорти:

import imageio.v2 as imageio
import numpy as np
import matplotlib.pyplot as plt

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

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

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

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

  • Завантажте зображення "hand-xray.jpg" за допомогою imageio.
  • Виведіть тип даних (dtype), мінімальне (min()) і максимальне (max()) значення інтенсивності зображення.
  • Побудуйте зображення за допомогою plt.imshow(). Явно задайте мінімальне (0) і максимальне (255) значення колірної мапи через аргументи vmin і vmax.
  • Додайте панель кольорів за допомогою plt.colorbar(), потім відобразьте графік за допомогою спеціальної функції format_and_render_plot(). Це вже зроблено для вас.

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

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

# Load the hand radiograph
im = ____
print('Data type:', ____)
print('Min. value:', ____)
print('Max value:', ____)

# Plot the grayscale image
____
plt.colorbar()
format_and_render_plot()
Редагувати та запускати код