Инновационные технологии
УДК 51.74 DOI: 10.6060/rqj.2020644.13
ПРИМЕНЕНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ПРИ АДАПТИВНОМ ВЫБОРЕ ФИЛЬТРОВ В СИСТЕМАХ СПЕЦИАЛЬНОГО НАЗНАЧЕНИЯ
Ф. Н. Бузылев, С. Н. Щербакова
ФЕДОР НИКОЛАЕВИЧ БУЗЫЛЕВ - к.т.н, доцент РТУ МИРЭА. E-mail: [email protected].
СВЕТЛАНА НИКОЛАЕВНА ЩЕРБАКОВА - старший преподаватель РТУ МИРЭА. E-mail: [email protected].
119454 г. Москва, Проспект Вернадского, д. 78, Федеральное государственное бюджетное образовательное учреждение высшего образования «МИРЭА - Российский технологический университет» (РТУ МИРЭА).
В статье предлагается обзор адаптивных методов фильтрации изображений, получаемых в системах специального назначения (рентгеновские и тепловизионные) на базе классической и современной математики, приведены их сильные и слабые стороны, рассмотрена возможность применения генетических алгоритмов для обработки изображений, приведен пример адаптивного фильтра на базе генетического алгоритма.
Ключевые слова: Нечеткая логика, генетические алгоритмы, цифровая обработка изображений, адаптивная фильтрация.
USING GENETIC ALGORITHMS BASED ADAPTIVE FILTER IN SPECIAL-PURPOSE SYSTEMS
F. N. Buzylev, S. N. Shcherbakova
78 Vernadsky Avenue, Moscow 119454. MIREA - Russian Technological University (RTU - MIREA).
The article offers an overview of adaptive methods for filtering images obtained in special-purpose systems (X-ray and thermal imaging) based on classical and modern mathematics, presents their strengths and weaknesses, considers the possibility of using genetic algorithms for image processing, provides an example ofan adaptive filter based on a genetic algorithm.
Keywords: Fuzzy logic, genetic algorithms, digital image processing, adaptive filtering.
За последние десятилетия было изобретено множество новых методов оптимизации, концептуально отличающихся от традиционных.
Традиционные методы решения опираются на точные математические модели, их правильность и эффективность при решении различных задач давно доказана.
Эвристические же методы оптимизации часто противопоставляются классическим, так как основаны на подсознательном мышлении и характеризуются неосознанным (интуитивным) способом действий для достижения осознанных целей. Эвристические методы еще называют методами инженерного (изобретательного) творчества. Одним из таких методов являются генетические алгоритмы.
Генетические алгоритмы - это молодой современный метод решения задач оптимизации, заимствованный у природы. Метод генетических алгоритмов возник в результате наблюдения и попыток копирования природных процессов, происходящих в мире живых организмов, таких как естественный отбор и эволюция.
Общая схема реализации генетических алгоритмов представлена на рис. 1.
На нулевом этапе задаётся начальная популяция решений, или особей, с числом решений N.
Это определённое количество различных решений, сгенерированных случайным образом. Каждая особь представляется хромосомой (А) - набором генов (х1, х2, х3, х4, ...).
Затем проверяется степень пригодности (приспособленности особи популяции) каждого решения, на сколько каждое ир них приближено к оптимальному. Форма функции пригодности может иметь различные формы и зависит от характера решаемой задачи.
Следующим этапом проверяем, не выполнен ли критерий останова. Определение условия остановки генетического алгоритма зависит от его конкретного применения. Остановка генетического алгоритма может произойти по нахождении оптимального решения; в случае, когда его выполнение не приводит к улучшению уже достигнутого значения; по истечении определенного времени выполнения либо после выполнения заданного количества итераций.
Если критерий останова выполнен, то производится переход к завершающему этапу выбора оптимального решения. Иначе необходимо переходить к созданию нового поколения решений.
Селекция заключается в выборе (по рассчитанным на втором этапе значениям функции приспособленности) тех особей, которые будут участвовать
Рис. 1. Блок-схема реализации генетического алгоритма
Ф. Н. Бузылев, С. Н. Щербакова
в создании потомков для следующей популяции, т.е. для очередного поколения. Такой выбор производится согласно принципу естественного отбора, по которому наибольшие шансы на участие в создании новых особей имеют особи с наибольшими значениями функции приспособленности.
В генетическом алгоритме используются два основных оператора: оператор скрещивания и оператор мутации. При этом вероятность скрещивания достаточно велика, тогда как мутация происходит с достаточно низкой вероятностью, так как считается, что в генетическом алгоритме она играет второстепенную роль.
При скрещивании родительских особей, в зависимости от прописанного принципа работы, определённая часть первой родительской хромосомы смешивается (замещается) с определённой частью второго родительской хромосомы, в результате чего получается дочерняя особь для нового поколения.
Оператор мутации же в соответствии с заложенным механизмом заменяет в одном выбранном родительском решении определённую часть, таким образом получая новую особь.
В результате действия вышеописанных операторов ГА формируется новая популяция, состоящая из родительских и дочерних особей.
Заведомо плохие (максимально удалённые от оптимальных) родительские решения исключаются из новой популяции, а для дочерних определяется степень пригодности. После проверки критерия останова вновь происходит селекция, при которой в популяции остаётся N лучших решений, к которым вновь применяются операторы генетического алгоритма, и так до выполнения критерия останова.
В практике использования генетических алгоритмов возможны случаи вырождения популяции.
Самым распространенным случаем такого вырождения является популяция, почти все особи которой находятся в области нестрогого или локального максимума (или минимума). Их скрещивание уже не даёт должного отличия новых особей от родительских. Мутация в таких случаях тоже может быть малоэффективна. Тогда можно произвести встряску по аналогии с природными катаклизмами. Значительная часть особей (возможно практически все) популяции уничтожаются и заменяются новыми, сгенерированными случайным образом [1, 2].
В работе представлена методика построения медианного фильтра с адаптивным выбором весовых коэффициентов. В качестве хромосомы ГА будет использоваться вектор коэффициентов медианного фильтра, а критерием оценки выступит соотношение сигнал-шум выходного изображения.
Для выделения особей, из которых будет формироваться следующее поколение, выбран метод усечения в силу отсутствия локальных экстремумов поставленной задачи. Лучшие особи образуют промежуточную родительскую популяцию.
Родительские пары выбираются панмиксией, то есть случайно из промежуточной популяции.
Выбранные родительские особи автоматически проходят в новую популяцию. Одноточечное с «плавающей» точкой скрещивание случайных пар приводит к появлению пары потомков, которые мутируют с определённой вероятностью и также записываются в новое поколение. Скрещивание родительских пар прекращается по заполнению новой популяции постоянного размера родителями и их потомками. То есть все родители и все потомки формируют новую популяцию.
При мутации два случайных гена (два весовых коэффициента ядра фильтра) заменяются на новые значения из заданного диапазона.
Рис. 2. Тестовое изображение,
слева - исходное; справа - зашумленное
Рис. 3. Результат обработки,
слева - предложенным методом, справа - классическим
В качестве демонстрационного примера было выбрано и зашумлено сильноструктурированное изображение (рис. 2).
После применения предложенного алгоритма и классического медианного фильтра были получены следующие результаты (рис. 3):
Сравнивая результаты работы предложенного фильтра с классическими аналогами следует положительно отметить визуально более качественное выходное изображение. Минусом метода является рост времени вычислений для всех типов (общие, инфракрасные, рентгеновские) исследован-
ных изображений. Последнее налагает ограничение на применение предложенного метода в системах реального времени.
Литература
1. Батищев Д.И., Неймарк Е.А. Применение генетических алгоритмов к решению задач дискретной оптимизации. - Н. Новгород, 2007. 85 с.
2. Джоши Пратик. Искусственный интеллект с примерами на Python. - Пер. с англ. - СПб.: ООО «Диалектика», 2019. 448 с.