Процесс настраивающих значений интенсивности может быть сделан автоматически с помощью коррекции гистограммы. Коррекция гистограммы включает преобразование значений интенсивности так, чтобы гистограмма выходного изображения приблизительно совпадала с заданной гистограммой. По умолчанию функция коррекции гистограммы, histeq, пытается совпадать с плоской гистограммой 64 интервалам, но можно задать различную гистограмму вместо этого.
Заметьте, как эта кривая отражает гистограммы в предыдущей фигуре с входными значениями в основном между 0,3 и 0.6, в то время как выходные значения распределяются равномерно между 0 и 1.
Этот пример показывает, как использовать коррекцию гистограммы, чтобы настроить контраст полутонового изображения. Оригинальное изображение имеет низкий контраст с большинством пиксельных значений посреди области значений интенсивности. histeq производит выходное изображение с пиксельными значениями, равномерно распределенными в области значений.
Считайте изображение в рабочую область.
I = imread('pout.tif');Отобразите изображение и его гистограмму.
figure subplot(1,2,1) imshow(I) subplot(1,2,2) imhist(I,64)

Настройте контраст с помощью коррекции гистограммы. В этом примере функция коррекции гистограммы, histeq, пытается совпадать с плоской гистограммой 64 интервалам, которая является поведением по умолчанию. Можно задать различную гистограмму вместо этого.
J = histeq(I);
Отобразите контрастное откорректированное изображение и его новую гистограмму.
figure subplot(1,2,1) imshow(J) subplot(1,2,2) imhist(J,64)

Этот пример показывает, как построить кривую преобразования для коррекции гистограммы. histeq может возвратиться 1 256 вектор, который показывает, для каждого возможного входного значения, получившегося выходного значения. (Значения в этом векторе находятся в области значений [0,1], независимо от класса входного изображения.) Можно отобразить эти данные на графике, чтобы получить кривую преобразования.
Считайте изображение в рабочую область.
I = imread('pout.tif');Настройте контраст с помощью коррекции гистограммы, с помощью функции histeq. Задайте полутоновое возвращаемое значение преобразования, T, который является вектором, который сопоставляет graylevels в интенсивности, отображает I к уровням серого в J.
[J,T] = histeq(I);
Постройте кривую преобразования. Заметьте, как эта кривая отражает гистограммы в предыдущей фигуре с входными значениями в основном между 0,3 и 0.6, в то время как выходные значения распределяются равномерно между 0 и 1.
figure plot((0:255)/255,T);
