Выравнивание гистограммы с помощью SimpleITK - PullRequest
0 голосов
/ 29 января 2020

На этот SO ответ предложите мне этот код:

import SimpleITK as sitk
import numpy as np

# Create a noise Gaussian blob test image
img = sitk.GaussianSource(sitk.sitkFloat32, size=[240,240,48], mean=[120,120,24])
img = img + sitk.AdditiveGaussianNoise(img,10)

# Create a ramp image of the same size
h = np.arange(0.0, 255,1.0666666666, dtype='f4')
h2 = np.reshape(np.repeat(h, 240*48), (48,240,240))
himg = sitk.GetImageFromArray(h2)
print(himg.GetSize())

# Match the histogram of the Gaussian image with the ramp
result=sitk.HistogramMatching(img, himg)

# Display the 3d image
import itkwidgets
itkwidgets.view(result)

Зачем мне нужны два изображения для выравнивания гистограммы?

Поскольку я хочу сделать гистограмму Выравнивание, и это соответствие гистограммы. В этой статье объясняется другое.

1 Ответ

2 голосов
/ 29 января 2020

Это немного обходной путь для достижения выравнивания гистограммы путем сопоставления гистограммы.

'himg' - это линейное изображение, поэтому интенсивности go от 0 до 255. Все значения интенсивности представлены одинаково, поэтому гистограмма плоская.

Итак, мы сопоставляем гистограмма изображения с плоской гистограммой. Результат net - выравнивание гистограммы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...