Выравнивание гистограммы изображения. Базовые операции обработки изображений. Импортируйте, экспортируйте, и преобразование

СРАВНЕНИЕ АЛГОРИТМОВ ЭКВАЛИЗАЦИИ

ГИСТОГРАММ ПОЛУТОНОВЫХ ИЗОБРАЖЕНИЙ

1 "2 Александровская А.А. , Маврин Е.М.

1 Александровская Анна Андреевна - студент магистратуры; Маврин Евгений Михайлович - студент магистратуры, кафедра информационных систем и телекоммуникаций,

факультет информатики и систем управления, Московский государственный технический университет им. Н.Э. Баумана, г. Москва

Аннотация: в данной статье проводится сравнение алгоритмов обработки цифровых изображений, а именно алгоритмов гистограммной эквализации. Рассматриваются три алгоритма: глобальной гистограммной эквализации (НЕ), адаптивной гистограммной эквализации (АНЕ), адаптивной эквализации гистограммы с ограничением контрастности (СЬАНЕ). Результат работы, описанной в статье -визуальное сравнение работы алгоритмов на одинаковых изображениях.

Ключевые слова: гистограмма изображения, гистограммная эквализация изображений, ЦОИ, компьютерное зрение, АНЕ, СЬАНЕ.

Для повышения качества изображения необходимо увеличить яркостный диапазон, контрастность, резкость, четкость . В совокупности эти параметры может улучшить эквализация гистограммы изображения. При определении контуров объектов в большинстве случаев достаточно данных, которые содержатся в полутоновом изображении. Полутоновое изображение - изображение, содержащее информацию только о яркости, но не о цвете пикселей. Соответственно, построение гистограммы целесообразно проводить для полутонового изображения.

Пусть рассматриваемое изображение состоит из п пикселей с интенсивностью (яркостью) г в диапазоне от 0 до 2Ьрр, где Ьрр - количество бит, выделенное для кодирования яркости одного пиксела. В большинстве цветовых моделей для кодирования

яркости одного цвета одного пиксела требуется 1 байт. Соответственно, интенсивность пикселя определена на множестве от 0 до 255 . График зависимости количества пикселей на изображении с интенсивностью г к самой интенсивности называется гистограммой изображения. На рис. 1 представлен пример тестовых изображений и гистограмм, построенных на основе этих изображений:

Рис. 1. Тестовые изображения и их гистограммы

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

Алгоритмы эквализации гистограммы являются популярными алгоритмами для улучшения обрабатываемого полутонового изображения. В целом, HE-алгоритмы (Histogram Equalization) имеют сравнительно невысокую вычислительную стоимость и при этом показывают высокую эффективность. Суть работы данного типа алгоритмов заключается в регулировании уровней полутонового изображения в соответствии с функцией распределения вероятности данного изображения (1) и, как следствие, увеличивается динамический диапазон распределения яркости. Это приводит к улучшению визуальных эффектов,

таких как: яркостный контраст, резкость, четкость.

p(i) = -, i = 0. .255, п

где p(i) - вероятность появления пикселя яркостью i, нормализованная функция гистограммы исходного изображения, к- координаты пикселя обрабатываемого изображения, g(k) - эквализированное изображение .

Алгоритмы эквализации гистограммы разделяют на два типа: локальная (адаптивная) эквализация гистограммы и глобальная эквализация гистограммы. В глобальном методе строится одна диаграмма и производится эквализация гистограммы всего изображения целиком (рис. 3 а). В локальном методе (рис. 3б) производится построение большого количества гистограмм, где каждая гистограмма соответствует лишь части обрабатываемого изображения. При таком методе улучшается локальный контраст

изображения, что позволяет в целом получить лучшие результаты обработки.

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

Рис. 2. Иллюстрация работы различных типов алгоритмов локальной обработки изображения: а) перекрывающиеся блоки локальной обработки, б) неперекрывающиеся блоки локальной обработки, в) частично перекрывающиеся блоки локальной обработки

Алгоритм перекрывающих блоков дает наилучший результат обработки, но является самым медленным среди перечисленных. Алгоритм неперекрывающихся блоков -наоборот, требует меньшее время на обработку при прочих равных, но так как обрабатываемые блоки не накладываются друг на друга, возможны резкие перепады яркостей на итоговом изображении. Компромиссным решением является алгоритм частично перекрывающихся блоков. К недостаткам адаптивных алгоритмов эквализации гистограмм относится сверхусиление (over-amplification) параметров изображения и возможное за счет этого увеличение шумов на итоговом изображении .

Улучшенным вариантом вышерассмотренного алгоритма является алгоритм адаптивной эквализации гистограммы с ограничением контрастности (contrast limited adaptive histogram equalization - CLAHE) (рис. 4в). Главной особенностью данного алгоритма является ограничение

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

где add - коэффициент приращения значения функции гистограммы, пс - количество пикселей, превышающих пороговое значение. Иллюстрация изменения гистограммы приведена на рисунке 3.

Рис. 3. Ограничение диапазона гистограммы в алгоритме CLAHE

Стоит отметить, что в классическом алгоритме СЬЛИБ используется билинейная интерполяция для устранения границ между обрабатываемыми блоками.

Рис. 4. Результаты работы алгоритмов эквализации гистограмм: а) глобальная эквализация гистограммы (НЕ), б) адаптивная эквализация гистограммы (АНЕ), в) адаптивная эквализация гистограммы с ограничением контрастности (СЬАНЕ)

При визуальном сравнении результатов обработки наилучшим методом является CLAHE (рис. 3в). На изображении, обработанном данным методом, меньше шума, чем на изображении, обработанным методом AHE, а также яркостная контрастность более естественна. По сравнению с изображением, обработанным методом глобальной эквализации, метод CLAHE повышает четкость мелких и размытых деталей обрабатываемого изображения, а также повышает контрастность, но не так утрированно, как в случае выполнения метода AHE. Также ниже приведена таблица оценки времени выполнения рассматриваемых методов в среде программирования MATLAB 2016.

Таблица 1. Оценка времени выполнения рассматриваемых

Время выполнения

Название программы с Время выполнения

метода рассматриваемым методом, c метода, c

CLAHE 0.609 0.519

Список литературы

1. Чичварин Н.В. Обнаружение и распознавание сигналов // Национальная библиотека им. Н.Э. Баумана [Электронный ресурс] 2016, Режим доступа: https://ru.bmstu.wiki/Коррекция_яркости_и_контрастности_ изображений (дата обращения: 03.05.2019).

2. Гонзалез Р.К. , Вудс Р.Е. . Digital Image Processing, 3-e издание, Нью-Джерси: Пирсон Эдьюкейшн, 2008. 950 c.

3. Гупта С. , Каур Ю. . Review of Different Local and Global Contrast Enhancement Techniques for a Digital Image // International Journal of Computer Applications [Электронный ресурс] 2014, URL: https://pdfs.semanticscholar.org/7fb1/bf8775a1a1eaad9b3d1f4 5bc85adc5c3212f.pdf (Дата обращения: 3.05.2019).

4. Ма Дж. , Фан Кс. , Янг С. Кс. , Занг Кс. , Зцу Кс. . Contrast Limited Adaptive Histogram Equalization Based Fusion for Underwater Image Enhancement // Preprints [Электронный ресурс] 2017, URL: https: //www. preprints. org/manuscript/201703.0086/v 1 (Дата обращения: 3.05.2019).

Существует три основных метода повышения контраста изображения:

  • линейная растяжка гистограммы (линейное контрастирование),
  • нормализация гистограммы,
  • выравнивание (линеаризация или эквализация, equalization) гистограммы.

Линейная растяжка сводится к присваиванию новых значений интенсивности каждому пикселю изображения. Если интенсивности исходного изображения изменялись в диапазоне от до , тогда необходимо линейно "растянуть" указанный диапазон так, чтобы значения изменялись от 0 до 255. Для этого достаточно пересчитать старые значения интенсивности для всех пикселей согласно формуле , где коэффициенты просто вычисляются, исходя из того, что граница должна перейти в 0, а – в 255.

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

Выравнивание гистограмм – это один из наиболее распространенных способов. Цель выравнивания состоит в том, чтобы все уровни яркости имели бы одинаковую частоту, а гистограмма соответствовала равномерному закону распределения. Допустим, что задано изображение в оттенках серого, которое имеет разрешение пикселей. Количество уровней квантования яркости пикселей (число бинов) составляет . Тогда в среднем на каждый уровень яркости должно выпадать пикселей. Базовая математика лежит в сопоставлении двух распределений. Пусть – случайные величины, описывающие изменение интенсивности пикселей на изображениях, – плотность распределения интенсивности на исходном изображении, – желаемая плотность распределения. Необходимо найти преобразование плотностей распределения , которое позволило бы получить желаемую плотность:

Обозначим через и интегральные законы распределения случайных величин и . Из условия вероятностной эквивалентности следует, что . Распишем интегральный закон распределения по определению:

Отсюда получаем, что

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

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

В библиотеке OpenCV реализована функция equalizeHist , которая обеспечивает повышение контрастности изображения посредством выравнивания гистограммы [ , ]. Прототип функции показан ниже.

void equalizeHist(const Mat& src, Mat& dst)

Функция работает в четыре этапа:

Далее приведем пример программы, обеспечивающей выравнивание гистограммы. Приложение принимает в качестве аргумента командной строки название исходного изображения. После выполнения операции выравнивания гистограммы выполняется отображение исходного изображения 1 Использовано изображение, входящее в состав базы PASACL VOC 2007. , переведенного в оттенки серого (рис. 7.11 , слева), и изображения с выровненной гистограммой (рис. 7.11 , справа).

#include #include using namespace cv; const char helper = "Sample_equalizeHist.exe \n\ \t - image file name\n"; int main(int argc, char* argv) { const char *initialWinName = "Initial Image", *equalizedWinName = "Equalized Image"; Mat img, grayImg, equalizedImg; if (argc < 2) { printf("%s", helper); return 1; } // загрузка изображения img = imread(argv, 1); // преобразование в оттенки серого cvtColor(img, grayImg, CV_RGB2GRAY); // выравнивание гистограммы equalizeHist(grayImg, equalizedImg); // отображение исходного изображения и гистограмм namedWindow(initialWinName, CV_WINDOW_AUTOSIZE); namedWindow(equalizedWinName, CV_WINDOW_AUTOSIZE); imshow(initialWinName, grayImg); imshow(equalizedWinName, equalizedImg); waitKey(); // закрытие окон destroyAllWindows(); // осовобождение памяти img.release(); grayImg.release(); equalizedImg.release(); return 0; }


Рис. 7.11.

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

Среди дефектов цифрового изображения можно выделить следующие виды:

  • Цифровой шум
  • Цветовые дефекты (недостаточные или избыточные яркость и контраст, неправильный цветовой тон)
  • Размытость (расфокусировка)

Методы предварительной обработки изображений зависят от задач исследований и могут включать следующие виды работ:

Фильтрация зашумленных изображений

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

Линейное усреднение точек по соседям - самый простой вид алгоритмов удаления шума. Основная идея их в том чтобы брать среднее арифметическое значение точек в некоторой окрестности в качестве нового значения точки.

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

Пример:

div – это коэффициент нормирования, для того чтобы средняя интенсивность оставалась не изменой. Он равен сумме коэффициентов матрицы, в примере div = 6.

Размытие по Гауссу (разновидность линейного свертывания) реализуется с помощью обхода пикселей изображения матрицей свертки, имеющей такой вид:

Матрица 5×5 заполняется по нормальному (гауссовому закону). Ниже приведена та же матрица, где коэффициенты уже являются нормированными, так что div для этой матрицы равен одному.

От размера матрицы зависит сила размытия.

У верхнего левого пикселя не существует «соседей» слева и сверху, следовательно, нам не на что умножать коэффициенты матрицы!

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

width + 2 gap / 2, height + 2 gap / 2, где

width и height – ширина и высота фильтруемого изображения,

gap – размерность матрицы свертки.

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

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

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

Медианный фильтр обычно используется для уменьшения шума или «сглаживания» изображения.

Для улучшения четкости изображения используется следующий фильтр (div=1):

Морфологические преобразования

Морфологическая фильтрация используется для расширения (дилактации) или сужения (эрозии) элементов бинарного изображения.

Дилатация (морфологическое расширение) – свертка изображения или выделенной области изображения некоторым шаблоном. Шаблон может иметь произвольную форму и размер. При этом в нем выделяется единственная ведущая позиция (anchor), которая совмещается с текущим пикселем при вычислении свертки.

Бинарное изображение – упорядоченный набор (упорядоченного множества) черно-белых точек (пикселей). Максимум интенсивности пикселей изображения равен единице, а минимум – нулю.

Применение дилатации сводится к проходу шаблоном по всему изображению и применению оператора поиска локального максимума интенсивности пикселей изображения, которые накрываются шаблоном. Если максимум равен 1, то точка, в которой находится анкор шаблона будет белая. Такая операция вызывает рост светлых областей на изображении На рисунке серым цветом отмечены пиксели, которые в результате применения дилатации будут белыми.

Эрозия (морфологическое сужение) – операция, обратная дилатации. Действие эрозии подобно дилатации, разница лишь в том, что используется оператор поиска локального минимума. Если минимум равен 0, то точка, в которой находится анкор шаблона, будет черная. На рисунке справа серым цветом отмечены пиксели, которые станут черными в результате эрозии.

Операция «Дилатация » – аналог логического «или», операция «Эрозия » – аналог логического «и».

Результат морфологических операций во многом определяется применяемым шаблоном (структурным элементом). Выбирая различный структурный элемент можно решать разные задачи обработки изображений:

  • Шумоподавление.
  • Выделение границ объекта.
  • Выделение скелета объекта.

Коррекция яркости и контраста изображений

Яркость представляет собой характеристику, определяющую то, на сколько сильно цвета пикселей отличаются от чёрного цвета. Например, если оцифрованная фотография сделана в солнечную погоду, то ее яркость будет значительной. С другой стороны, если фотография сделана вечером или ночью, то её яркость будет невелика.

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

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

Определение вероятностных характеристик изображений, прошедших нелинейную обработку, является прямой задачей анализа. При решении практических задач обработки изображений может быть поставлена обратная задача: по известному виду плотности вероятности p f (f ) и желаемому виду p g (g ) определить требуемое преобразование g = ϕ(f ), которому следует подвергнуть исходное изображение. В практике цифровой обработки изображений часто к полезному результату приводит преобразование изображения к равновероятному распределению. В этом случае

где g min и g max – минимальное и максимальное значения яркости преобразованного изображения. Определим характеристику преобразователя, решающего данную задачу. Пусть f и g связаны функцией g (n , m ) = j(f (n , m )), а P f (f ) и Pg (g ) – интегральные законы распределения входной и выходной яркостей. Учитывая (6.1), находим:

Подставляя это выражение в условие вероятностной эквивалентности

после простых преобразований получаем соотношение

представляющее собой характеристику g (n , m ) = j(f (n , m )) в решаемой задаче. Согласно (6.2) исходное изображение проходит нелинейное преобразование, характеристика которого P f (f ) определяется интегральным законом распределения исходного изображения. После этого результат приводится к заданному динамическому диапазону при помощи операции линейного контрастирования.

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



На первом этапе измеряется гистограмма исходного изображения. Для цифрового изображения, шкала яркостей которого, например, принадлежит целочисленному диапазону , гистограмма представляет собой таблицу из 256 чисел. Каждое из них показывает количество точек в изображении (кадре), имеющих данную яркость. Разделив все числа этой таблицы на общий размер выборки, равный числу отсчетов в изображении, получают оценку распределения вероятностей яркости изображения. Обозначим эту оценку qp f (f q ), 0 ≤ f q ≤ 255. Тогда оценка интегрального распределения получается по формуле:

На втором этапе выполняется само нелинейное преобразование (6.2), обеспечивающее необходимые свойства выходного изображения. При этом вместо неизвестного истинного интегрального распределения используется его оценка, основанная на гистограмме. С учетом этого все методы поэлементного преобразования изображений, целью которых является видоизменение законов распределения, получили название гистограммных методов. В частности, преобразование, при котором выходное изображение имеет равномерное распределение, называется эквализацией (выравниванием) гистограммы.

Отметим, что процедуры преобразования гистограмм могут применяться как к изображению в целом, так и к отдельным его фрагментам. Последнее может быть полезным при обработке нестационарных изображений, характеристики которых существенно различаются в различных областях. В этом случае лучшего эффекта можно добиться, применяя гистограммную обработку к отдельным участкам – областям интереса. Правда, при этом изменятся значения отсчетов и всех других областей. На рисунке 6.1 приведен пример эквализации, выполненной в соответствии с изложенной методикой.

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

Рисунок 6.1 – Пример эквализации гистграммы изображения: а) исходное изображение и его гистограмма в); б) преобразованное изображение и его гистограмма г)

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