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

Гистограммы

Гистограммы показывают распределение значений в изображении: каждый пиксель относится к определённому диапазону интенсивности, и для каждого диапазона подсчитывается количество таких пикселей.

Площадь под гистограммой называется функцией кумулятивного распределения. Она показывает, насколько часто встречаются пиксели с тем или иным диапазоном интенсивности.

В этом упражнении вы опишете распределение интенсивностей в массиве im: вычислите гистограмму и функцию кумулятивного распределения, а затем отобразите их вместе на одном графике.

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

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

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

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

  • Импортируйте scipy.ndimage как ndi.
  • Постройте гистограмму массива im с 256 интервалами, охватывающую весь диапазон значений типа np.uint8.
  • Вычислите функцию кумулятивного распределения для im. Сначала найдите кумулятивную сумму hist, затем разделите её на общее количество пикселей в hist.
  • Постройте hist и cdf на отдельных подграфиках. Этот шаг уже выполнен за вас.

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

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

# Import SciPy's "ndimage" module
import ____ as ____ 

# Create a histogram, binned at each possible value
hist = ____

# Create a cumulative distribution function
cdf = hist.cumsum() / ____

# Plot the histogram and CDF
fig, axes = plt.subplots(2, 1, sharex=True)
axes[0].plot(hist, label='Histogram')
axes[1].plot(cdf, label='CDF')
format_and_render_plot()
Редактировать и запускать код