Выравнивание гистограммы без экстремальных значений - PullRequest
1 голос
/ 21 ноября 2019

Можно ли сделать выравнивание гистограммы без крайних значений 0 и 255?

В частности, у меня есть изображение, в котором много пикселей равны нулю. Более половины всех пикселей равны нулю. Поэтому, если я выполняю выравнивание гистограммы, я в основном сдвигаю значение 1 до значения 240, что в точности противоположно тому, что я хочу сделать с выравниванием гистограммы. Так есть ли метод для расчета только выравнивания гистограммы между значениями 1 и 254?

На данный момент мой код выглядит следующим образом:

flat = image.flatten()

# get image histogram
image_histogram, bins = np.histogram(flat, bins=range(0, number_bins), density=True)

cdf = image_histogram.cumsum() # cumulative distribution function
cdf = 255 * cdf /cdf.max() # normalize
cdf = cdf.astype('uint8')

# use linear interpolation of cdf to find new pixel values
image_equalized = np.interp(flat, bins[:-1], cdf)

image_equalized =  image_equalized.reshape(image.shape), cdf

Спасибо

...