УДК 004.021
ПРИМЕНЕНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ И ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЙ ДЛЯ ПОВЫШЕНИЯ КАЧЕСТВА ИЗОБРАЖЕНИЙ
А.А. Белоусов, В.Г. Спицын, Д.В. Сидоров
Томский политехнический университет E-mail: [email protected].
Разработан двухэтапный метод повышения качества цветных изображений. Разработанный метод позволяет понижать уровень шумов и одновременно оптимизировать яркость и контраст изображения. Для удаления шумов применяется вейвлетная фильтрация, для настройки яркости и контраста - генетический алгоритм.
Введение
Создание цифровых изображений с хорошей яркостью, контрастностью и высоким уровнем детализации является необходимым условием в различных областях науки и техники. Среди них можно выделить: техническое зрение, дистанционное зондирование, биомедицинский анализ изображения, обнаружение неисправностей. Создание естественных изображений или преобразование имеющихся, например, для улучшения восприятия информации в наглядной форме, является одной из важнейших задач обработки изображений. Методы, которые осуществляют такие преобразования, называют методами повышения качества изображения [1].
Большинство методов повышения качества изображения, существующих на данный момент времени - это эмпирические или эвристические методы, зависящие от специфики изображения. Почти все эти методы требуют пользовательского взаимодействия для настройки специальных параметров, что затрудняет их применение в автоматическом режиме. Наконец, существующие методы повышения качества изображения, как правило, подвергают преобразованию все изображение, в то время как во многих случаях необходимо преобразовать лишь какую-то определенную область изображения.
Описанный в [1] метод позволяет повышать качество изображений автоматически, однако не всегда дает хорошие результаты. Кроме того, он применим только к полутоновым изображениям и требует достаточно много времени на обработку.
В данной работе предпринята попытка разработки полностью автоматического метода повышения качества цветных изображений. Данный метод состоит из двух основных стадий, позволяющих исправить основные недостатки цифровых изображений: удаление шумов и оптимизация яркости и контраста.
1. Коррекция яркости и контраста
1.1. Генетический алгоритм
Генетический алгоритм (ГА) представляет собой метод оптимизации, основанный на концепциях естественного отбора и генетики. В этом подходе переменные, характеризующие решение задачи,
представлены в виде генов в хромосоме [2]. ГА, оперируя конечным множеством решений, генерирует новые решения как различные комбинации частей решений популяции используя такие операторы, как отбор (селекция), рекомбинация (крос-синговер), мутация. Новые решения позиционируются в популяции в соответствии с их положением на поверхности исследуемой функции [2]. Базисом ГА являются:
• особь с определенным набором хромосом;
• начальная популяция особей;
• набор операторов для получения новых решений;
• целевая функция для отбора наиболее приспособленных решений.
Основными операторами генетического алгоритма являются:
• селекция (отбор наиболее приспособленных решений на основе целевой функции);
• кроссовер (скрещивание особей для получения новых наборов хромосом);
• мутация (случайное изменение одного или более генов особи).
В разработанном алгоритме каждая особь имеет 4 хромосомы, которые представлены беззнаковыми длинными целыми числами (32 бита).
1.2. Ядро улучшения
Методы локального улучшения основаны на применении функции, зависящей от распределения яркости в окрестности каждой точки изображения. Одним из примеров таких методов является адаптивное выравнивание гистограмм, показавшее хорошие результаты в обработке медицинских изображений. Однако этот метод использует ядро, требующее больших вычислительных затрат.
Ядро улучшения - это преобразование Т, применяемое к каждой точке изображения с координатами (х, у). Входным параметром для этого преобразования является исходная яркость точки полутонового изображенияЛ(х, у), выходное значение -итоговая яркость точки g(x, у). Пусть ^ и Н^ - соответственно вертикальный и горизонтальный размер изображения. Тогда преобразование Т определим следующим образом [1]:
8 (х, у) = Т (/(х, у)) -
М
а( х, у) + Ь
[/(х, у) - ст(х, у)] + т(х, у)а;
х = 0...Н„.„ -1;
дельном наложении этих масок на входное изображение можно получить оценку градиента по каждому из направлений (обозначим их Gx и Gy). Конечное значение градиента получается по формуле
О (х, у ) = ^ 0Х 2(х, у ) + 0у 2( x, у ).
у = 0...^-1,
где g(x,y) и /(х,у) - полученная и исходная яркость точки с координатами (х,у), М - глобальное среднее значение яркости изображения, т(х,у) - среднее значение яркости в окрестности нхн, о(х,у) -значение среднеквадратического отклонения в этой же окрестности. а, Ь, с и к - параметры ядра улучшения, наиболее подходящие значения которых и определяются при помощи генетического алгоритма.
В ходе проведения исследований было выявлено, что применение среднеквадратического отклонения в чистом виде приводит к не очень хорошим результатам, поскольку в однотонных областях его значение близко к нулю, что приводит к сильному осветлению. В итоговом алгоритме при вычислении среднеквадратического отклонения в окрестности нхн к ней добавлялась черная или белая область такого же размера. Добавление черных областей позволяет добиться равномерного осветления слишком темных изображений, добавление белой области - наоборот, позволяет затемнить слишком светлые.
1.3. Критерий улучшения качества изображения
Для автоматизации процесса улучшения качества изображения необходимо определить объективный критерий для оценки качества улучшения изображения. Этот критерий используется для построения целевой функции генетического алгоритма и включает в данном алгоритме 3 составляющих: 1. Количество и интенсивность краевых пикселей.
Улучшенное изображение имеет большее число краевых пикселей с более высокими значениями интенсивностей по сравнению с исходным изображением. Для того, чтобы выявить эти характеристики, применяется так называемый детектор края изображения. В данной работе был применен оператор Собеля [5].
Оператор Собеля [5] производит измерение двумерного пространственного градиента на изображении и выявляет области с большим значением этого параметра. Эти области и соответствуют краям. Как правило, он используется для оценки модуля градиента в каждой точке черно-белого изображения.
Работа этого оператора основана на наложении на каждую точку изображения двух масок вращения. Эти маски представляют собой две ортогональные матрицы размерностью 3х3 (рис. 1). Эти маски выявляют границы, расположенные вертикально и горизонтально на изображении. При раз-
-1 0 +1
-2 0 +2
-1 0 +1
+1 +2 +1
0 0 0
-1 -2 -1
Рис. 1. Маски оператора Собеля
При помощи данного оператора подсчитывает-ся число краевых пикселей п(1)и их суммарная интенсивность Е(1):
Е (I) = ХЕО (х, у);
х у
п(1) = х, у);
х,у
[1,0(х, у) > а
ц(х,у)=
0,0(х, у) < а
здесь а - некое предельное значение. 2. Мера энтропии изображения.
Необходимо оценить, каково количество пикселей с различным уровнем яркости присутствует на изображении.
Для этого необходимо построить гистограмму изображения, количество уровней которой соответствует количеству градаций яркости. Предельные значения уровня с индексом I записываются как А1 и В для /е{0,...,255|. На основе гистограммы вводится мера энтропии улучшения изображения I, как
Н (I) = £и(/);
о(/) =
-V, 1о§2 О,-X V * 0
0, V,. = 0 '
(*)
где VI - частота пикселей, имеющая уровни градаций яркости между граничными значениями А и В. Отметим, что мера в (*) это не реальная энтропия, т. к. V - скорее относительные частоты, чем вероятности.
3. Уровень адаптации к зрению человека по яркости.
Для человеческого зрения наиболее приятны изображение, среднее значение яркости на которых равно середине всего диапазона возможных яркостей [3]. Поэтому в целевую функцию был введен следующий множитель:
т - т /2
ьд = 1 - 0,з-
Ь /2
тах
Здесь Ьшк и Ь - максимальное и среднее значение яркости на изображении.
Таким образом, целевая функция должна быть пропорциональна ц(1), Е(1), Н(1) и Ь£). Была выбрана функция, имеющая следующий вид:
F (x) = ln(ln( E( I)) + e) eH (I> LQ,
size size
где Hsize и Wsize — соответственно вертикальный и горизонтальный размер изображения, e=2,718.
Данная функция очень близка по своему виду к функции, использованной в [1].
1.4. Улучшение цветных изображений
Рассмотренный выше метод позволяет улучшать изображения с одной составляющей яркости - полутоновые изображения. Для повышения качества изображений, имеющих три цветовые составляющих яркости пикселя, они первоначально преобразуются в полутоновые.
После этого все преобразования производятся над черно-белым изображением.
По окончанию работы алгоритма изображение снова переводится в цветное путем умножения каждой компоненты яркости исходного изображения на соответствующий коэффициент.
2. Удаление шумов
2.1. Вейвлет-преобразование
Непрерывное вейвлет-преобразование (Continuous Wavelet Transform, CWT) описывается уравнением (3), где x(t) - анализируемый сигнал, yf(t) - вейвлет-функции, получаемые из материнского вейвлета y/(t) путем сдвига и масштабирования (растяжения или сжатия) [4].
Параметр сдвига т определяет положение вей-влет-функции относительно сигнала, т. е. он является временной характеристикой вейвлет-преобра-зования. Параметр масштабирования 5 несет частотную информацию. Материнский вейвлет, используемый для получения базисных функций, выбирается на основе каких-либо необходимых свойств этих функций. Масштабирование по времени растягивает либо сжимает сигнал. Низкочастотные составляющие несут общую информацию о сигнале, высокочастотные - информацию о деталях сигнала.
Вейвлет-ряды получаются путем дискретизации вейвлет-преобразования по времени, которая позволяет производить вейвлет-преобразование с использованием компьютеров.
Однако, вейвлет-ряды это лишь выборочная версия непрерывного вейвлет-преобразования и их вычисление может требовать больших затрат времени и ресурсов. Дискретное вейвлет-преобразование (Discrete Wavelet Transform, DWT) разработано для быстрого вычисления вейвлет-преобразования. Оно просто в выполнении и позволяет уменьшить время вычисления и количество требуемых ресурсов.
В CWT-преобразовании сигналы анализируются с использованием набора базисных функций, получающихся друг из друга путем сдвига и масштабирования. В случае DWT-преобразования масштабное временное представление сигнала получается путем цифровой фильтрации. Анализируемый сигнал проходит через фильтры, на которых происходит «обрезание» определенных частот с различными масштабами [4].
2.2. Удаление шумов при помощи DWT
Большинство фильтров, основанных на вейвлет-преобразованиях, имеют одинаковую схему (рис. 2).
Рассмотрим все части данной схемы применительно к разработанному алгоритму.
Первоначально изображение, представленное в формате RGB, переводится в цветовое пространство YUV. Компоненты U и V не подвергаются изменению во время фильтрации. Входным сигналом для системы является яркостная составляющая изображения (Y) [7].
Y = 0,299R + 0,578G + 0,114 B;
U = 0,1678R -0,3313G + 0,5B;
V = 0,5R - 0,4187 G + 0,0813 B.
Вейвлет-преобразование в данном случае - это двумерное дискретное вейвлет-преобразование [7], основанное на материнском вейвлете «3-5», имеющем 3 высокочастотных и 5 низкочастотных коэффициентов (рис. 3).
Фильтрация в нашем случае представляет собой удаление из полученного набора вейвлет-коэффи-циентов высокочастотных компонент, которые включают и шумы. Пользователь сам может определить порог при выполнении этой операции.
После обратного вейвлет-преобразования изображение переводится обратно в цветовое пространство RGB по формулам:
R = Y +1,3707-(V-128);
G = Y - 0,3365-(U -128) - 0,6982( V -128);
B = Y +1,7324-(U-128).
x
Рис. 3. Материнский вейвлет, использованный в разработанном алгоритме
Первоначально планировалось производить удаление шумов до коррекции яркости и контраста, поскольку во время этой стадии обработки присутствующие на изображении шумы усиливаются. Однако, как показали исследования, данный вид фильтрации снижает контраст изображения, и при этом могут потеряться какие-то детали, слабо различимые на исходном изображении. Поэтому было решено производить удаление шумов после подстройки яркости и контраста.
3. Результаты работы
Итогом исследований явилось создание приложения, реализующего данный метод улучшения изображений. Это приложение обрабатывает файлы формата *.bmp размером до 512x512 пикселей. Приложение было применено к набору тестовых изображений. Оказалось, что данный метод хорошо проявляет себя на двух классах изображений:
1. Слишком светлые или темные изображения. Данный метод позволяет добиться осветления слишком темных участков и затемнения слишком светлых. Кроме того, он позволяет проявить объекты, которые на исходном изображении были практически неразличимы (рис. 4, 5).
2. Затуманенные изображения. Применение данного метода к затуманенным или нечетким изображениям позволяет повысить их четкость, а также в некоторой мере снять затуманенность (рис. 6, 7). Реализованный генетический алгоритм при размере популяции 20 особей находил достаточно хорошее решение за 5 поколений. При этом обработка изображения в среднем занимает 10...20 с (например, для изображения размером 498x326 пикселей обработка заняла 16 с на компьютере с процессором Intel Pentium 4 2,4 ГГц и ОЗУ объемом 512 Мб).
Заключение
Описанный метод позволяет бороться с основными дефектами изображений - шумами, низким контрастом, неоптимальной яркостью и т. д. Вся обработка происходит в автоматическом режиме и
занимает относительно немного времени по сравнению с другими методами, использующими те же принципы.
Работа поддержана грантом № 06-08-00840 Российского фонда фундаментальных исследований.
Рис. 4. Сопоставление изображений: а) до обработки, b) после
a b
Рис. 5. Сопоставление изображений: а) до обработки, b) после
а Ь
Рис. 6. Сопоставление изображений: a) до обработки, Ь) после
Рис. 7. Сопоставление изображений: a) до обработки, Ь) после
Рис. 8. Использование всех шагов алгоритма для коррекции изображений. Изображение: a) исходное, Ь) зашумленное, с) улучшенное, d) после удаления шумов
СПИСОК ЛИТЕРАТУРЫ
1. Munteanu C., Rosa A. Gray-Scale Image Enhancement as an Automatic Process Driven by Evolution // IEEE Transactions on Systems, Man, and Cybernetics. - 2004. - V. 34. - P. 1292-1298.
2. Батищев Д.И., Исаев С.А. Оптимизация многоэкстремальных функций с помощью генетических алгоритмов // Высокие технологии в технике, медицине и образовании: Межвуз. сб. научных трудов. - Воронеж, 1997. - С. 4-17.
3. http://matlab.exponenta.ru/imageprocess/book2/index.php
4. Воробьев В.И., Грибунин В.Г. Теория и практика вейвлет-пре-образования. - СПб.: Изд-во ВУС, 1999. - 204 с.
5. http://www.cee.hw.ac.uk/hipr/html/sobel.html
6. Белоусов А.А., Спицын В.Г. Применение генетических алгоритмов для повышения качества полутоновых изображений // Молодежь и современные информационные технологии: Сб. статей IV Всеросс. научно-практ. конф. студентов, аспирантов и молодых ученых. - Томск, 2006. - С. 83-85.
7. http://www.cse.msu.edu/~cbowen/docs/yuvtorgb.html
УДК 681.327.1:681.5
ПРИМЕНЕНИЕ ЭВОЛЮЦИОНИРУЮЩЕЙ НЕЙРОННОЙ СЕТИ ДЛЯ УЛУЧШЕНИЯ КАЧЕСТВА ИЗОБРАЖЕНИЙ
А.В. Чернявский, В.Г. Спицын
Томский политехнический университет E-mail: [email protected]
Представлен нейроэволюционный метод улучшения цветных и черно-белых изображений, основанный на локально-адаптивном подходе к обработке изображений. Для улучшения изображения нейронная сеть настраивается при помощи генетического алгоритма с использованием обобщенного критерия оценки качества изображения, опирающегося на уровень контрастности обрабатываемого изображения. Приведены примеры использования метода.
1. Введение
Актуальность задачи улучшения качества изображения обусловлена необходимостью ее решения для обработки данных, получаемых в приборах и устройствах медицинской диагностики, обнаружения мин, распознавания движущихся объектов, дефектоскопии и др. Однако для данной задачи отсутствует объективный общепринятый критерий качества изображения в силу субъективности человеческого восприятия, а также в связи со сложностью анализа его информативности. В большинстве случаев требуется адаптация алгоритма обработки или его параметров под конкретное изображения [1]. Хорошими адаптивными свойствами обладают искусственные нейронные сети (ИНС) [2].
Одним из способов решения задачи повышения качества изображения является улучшение его за счет изменения яркости пикселей. Замечено, что яркостная компонента играет одну из ключевых ролей в восприятии изображения [3], напрямую влияя на его контраст, уровень информативности и визуальное качество. Причинами плохого контраста могут быть низкое качество фотоприемников, аппаратуры, неудовлетворительные условия съемки и др.
Одним из преимуществ использования ИНС является их способность к обучению, которая может реализовываться в виде изменения внутренних свойств ИНС для выполнения требуемых функций. Здесь важную роль играет то, каким образом оценивается качество обучаемой сети. В «классиче-
ском» варианте при ее обучении используют обучающие данные, как правило, представленные в виде множества пар векторов (X, У), где X, У— вектора входных и выходных данных, соответственно. Для оценки качества ИНС используют среднеквадратичную ошибку выхода, пропорциональную отклонению действительных выходных сигналов нейросети от требуемых. Однако, при улучшении качества изображений, появляется трудность определения эталонного изображения для точной оценки эффективности работы ИНС.
Одним из возможных решений данной проблемы является использование неточных оценок ИНС, отражающих качественные, внешние особенности ее функционирования. Например, время поддержания стабильного состояния объекта управления для задачи нейроуправления [4], процент выигранных игр для задачи поиска игровых стратегий [5], качество изображения для задачи обработки изображений [6] и т. д. Такие оценки более естественны и «интуитивны», однако, как следствие, они не могут быть использованы градиентными алгоритмами обучения для подстройки весов связей. Поэтому «подходящий» обучающий алгоритм должен изменять веса связей ИНС, не имея информации о точном значении величины ошибки для каждого выхода этой ИНС.
При использовании неточных оценок работы ИНС, очень трудно (если вообще возможно) создать формализованный метод ее обучения, поэтому выбор нужного, с точки зрения поставленной задачи, набора весов связей ИНС является переборной