Гістограми
Гістограми показують розподіл значень в зображенні: кожен елемент потрапляє до біну за своєю інтенсивністю, а далі вимірюється розмір кожного біну.
Площа під гістограмою називається функцією кумулятивного розподілу. Вона відображає, як часто трапляється заданий діапазон інтенсивностей пікселів.
У цій вправі опиште розподіл інтенсивностей у im: обчисліть гістограму та функцію кумулятивного розподілу й відобразьте їх разом.
Ця вправа є частиною курсу
Біомедична обробка зображень у Python
Інструкції до вправи
- Імпортуйте
scipy.ndimageякndi. - Згенеруйте гістограму з 256 бінів для
im, що охоплює весь діапазон значень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()