MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем

Обработка сигналов и изображений\image Processing Toolbox

И.М.Журавель "Краткий курс теории обработки изображений"

В оглавление \ К следующему разделу \ К предыдущему разделу

Реализация некоторых методов видоизменения гистограмм в системе Matlab

Как уже не раз отмечалось, одной из важнейших характеристик изображения является гистограмма распределения яркостей его элементов. Ранее мы уже кратко рассматривали теоретические основы видоизменения гистограмм, поэтому в этой работе больше внимания уделим практическим аспектам реализации некоторых методов преобразования гистограмм в системе Matlab. При этом отметим, что видоизменение гистограмм является одним из методов улучшения визуального качества изображений.

Содержание:

Шаг 1: Считывание исходного изображения.

Шаг 2: Равномерное преобразование гистограммы.

Шаг 3: Экспоненциальное преобразование гистограммы.

Шаг 4: Преобразование гистограммы по закону Рэлея.

Шаг 5: Преобразование гистограммы по закону степени .

Шаг 6: Гиперболическое преобразование гистограммы.

Шаг 1: Считывание исходного изображения.

Считаем из файла исходное изображение в рабочее пространство Matlab и выведем его на экран монитора.

L=imread('lena.bmp');

figure, imshow(L);

Так как исследуемое исходное изображение полутоновое, то будем рассматривать только одну составляющую многомерного массива .

Рис. 1. Исходное изображение.

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

H=imhist(L);

Рис.2. Гистограмма исходного изображения.

Шаг 2: Равномерное преобразование гистограммы.

Равномерное преобразование гистограммы осуществляется по формуле

, (1)

где , - минимальное и максимальное значения элементов массива интенсивностей исходного изображения;

- функция распределения вероятностей исходного изображения, которая аппроксимируется гистограммой распределения . Другими словами, речь идет о кумулятивной гистограмме изображения.

В среде Matlab это можно реализовать следующим образом. Вычисляем кумулятивную гистограмму исходного изображения

CH=cumsum(H)./(N*M);

* - вектор значений гистограммы исходного изображения, а , - размеры данного изображения, которые определяются с помощью функции size

[N M]=size(L);

Далее, согласно формуле (1), определяем значения интенсивностей пикселей результирующего изображения.

L1(i,j)=CH(ceil(255*L(i,j)+eps));

figure, imshow(L1);

Значение eps используется вместе с функцией ceil для того, чтобы избежать присвоения индексам кумулятивной гистограммы нулевых значений. Результат применения метода равномерного преобразования гистограммы представлен на рис. 3.

Рис. 3. Исходное изображение, обработанное методом равномерного преобразования гистограммы.

Гистограмма, преобразованного согласно формуле (1) изображения, представлена на рис. 4. Она действительно занимает почти весь динамический диапазон и является равномерной.

Рис. 4. Гистограмма изображения, представленного на рис. 3.

О равномерной передаче уровней интенсивностей элементов изображения свидетельствует также и его кумулятивная гистограмма (рис. 5).

Рис.5. Кумулятивная гистограмма изображения, представленного на рис. 3.

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

Шаг 3: Экспоненциальное преобразование гистограммы.

Экспоненциальное преобразование гистограммы осуществляется по формуле

, (2)

где - некоторая константа, характеризующая крутизну экспоненциального преобразования.

В Matlab преобразования по формуле (2) можно реализовать следующим образом.

L2(i,j)=-(1/alfa1)*log10(1-CH(ceil(255*L(i,j)+eps)));

figure, imshow(L2);

Рис. 6. Исходное изображение после обработки методом экспоненциального преобразования гистограммы.

Гистограмма изображения, обработанного методом экспоненциального преобразования, представлена на рис. 7.

Рис. 7. Гистограмма изображения, обработанного методом экспоненциального преобразования.

Наиболее четко экспоненциальный характер преобразований проявляется на кумулятивной гистограмме обработанного изображения, которая представлена на рис. 8.

Рис. 8. Кумулятивная гистограмма изображения, обработанного методом экспоненциального преобразования.

Шаг 4: Преобразование гистограммы по закону Рэлея.

Преобразование гистограммы по закону Рэлея осуществляется согласно выражению

, (3)

где - некоторая константа, характеризующая гистограмму распределения интенсивностей элементов результирующего изображения.

Приведем реализацию данных преобразований в среде Matlab.

L3(i,j)=sqrt(2*alfa2^2*log10(1/(1-CH(ceil(255*L(i,j)+eps)))));

figure, imshow(L3);

Рис. 9. Исходное изображение, обработанное методом преобразования гистограммы по закону Рэлея.

Гистограмма изображения, обработанного методом преобразования по закону Рэлея, представлена на рис. 10.

Рис. 10. Гистограмма изображения, обработанного методом преобразования по закону Рэлея.

Кумулятивная гистограмма изображения, обработанного методом преобразования по закону Рэлея, представлена на рис. 11.

Рис. 11. Кумулятивная гистограмма изображения, обработанного методом преобразования по закону Рэлея.

Шаг 5: Преобразование гистограммы по закону степени .

Преобразование гистограммы изображения по закону степени реализуется согласно выражению

. (4)

В среде Matlab этот метод можно реализовать следующим образом.

L4(i,j)=(CH(ceil(255*L(i,j)+eps)))^(2/3);

figure, imshow(L4);

Рис. 12. Исходное изображение, обработанное методом преобразования гистограммы по закону степени .

Гистограмма распределения интенсивностей элементов обработанного изображения представлена на рис. 13.

Рис. 13. Гистограмма изображения, обработанного методом преобразования гистограммы по закону степени .

Кумулятивная гистограмма обработанного изображения, которая наиболее четко демонстрирует характер передачи уровней серого, представлена на рис. 14.

Рис. 14. Кумулятивная гистограмма изображения, обработанного методом преобразования по закону степени .

Шаг 6: Гиперболическое преобразование гистограммы.

Гиперболическое преобразование гистограммы реализуется согласно формуле

, (5)

где - некоторая константа, относительно которой осуществляется гиперболическое преобразование гистограммы. Фактически параметр равен минимальному значению интенсивности элементов изображения.

В среде Matlab этот метод может быть реализован следующим образом

L5(i,j)=.01^(CH(ceil(255*L(i,j)+eps))); % в данном случае А=0,01

figure, imshow(L5);

Рис. 15. Исходное изображение, обработанное методом гиперболического преобразования.

Гистограмма распределения интенсивностей элементов обработанного таким образом изображения представлена на рис. 16.

Рис. 16. Гистограмма изображения, обработанного методом гиперболического преобразования.

Кумулятивная гистограмма, форма которой соответствует характеру проводимых преобразований, представлена на рис. 17.

Рис. 17. Кумулятивная гистограмма изображения, обработанного методом гиперболического преобразования.

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

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

В оглавление \ К следующему разделу \ К предыдущему разделу


Поиск по сайту:

Система Orphus

Яндекс.Метрика