А.Н. Каркищенко, А.Г. Броневич, Н.С. Зюзерова
Черно-белое изображение, хранимое в ЭВМ в цифровой форме, можно описать с помощью функции от двух переменных. Пара целых чисел определяет координаты элемента изображения (ЭИ), а значение функции характеризует яркость данного ЭИ. Поскольку цифровая форма представления изображения - это лишь аппроксимация реального изображения, которая получается как квантованием по значениям координат элементов изображения, так и по значениям яркости, введем в рассмотрение функцию от действительных аргументов и , которую будем называть функцией яркости реального изображения.
Будем считать, что функции и связаны между собой соотношением
.
Здесь ? - случайная составляющая, учитывающая оптические помехи; функция определяет сглаживающие свойства оптической системы и, как правило, аппроксимируется плотностью сферического нормального распределения
=.
Можно получить более сложную формулу, если учитывать квантование значений функции .
Функция, описывающая реальные изображения, может иметь достаточно произвольный характер: на реальном изображении могут быть разные перепады яркости, что будет нарушать гладкость, функция может иметь различное расположение точек минимума и максимума и пр.
В связи с этим возникает задача выбора наиболее оптимального описания функции яркости изображения. Следует отметить, что традиционные подходы, основанные на двумерном преобразовании Фурье , на аппроксимации сплайнами , могут не привести к желаемому результату. При обработке изображений, как показал опыт многих исследований, необходимо придерживаться идеологии искусственного интеллекта: преобразования изображений должны быть понятными человеку в той степени, чтобы он распознавал последовательность получаемых абстрагированных изображений и мог манипулировать ими; данную интеллектуальную деятельность человека должна воспроизводить система анализа изображений.
Изучение вопроса о восприятии изображения человеком дает основание говорить о том, что наиболее информативными признаками при распознавании объектов являются контуры - линии, вдоль которых наблюдаются значительные перепады яркости изображения.
На языке математики - это кривые, состоящие из особых точек функции, где функция не дифференцируема или имеет большой модуль градиента.
В статье рассматривается вариационный подход к выбору аналитического описания функции яркости. Его идея состоит в следующем: поскольку точные значения функции неизвестны, то в качестве оптимального аналитического описания функции яркости следует выбирать наиболее простое из всех возможных. С точки зрения информативности это будет наиболее гладкая функция, имеющая наименьшее число особых точек и небольшие значения модуля градиента. Для определения гладкости функции яркости вводится функционал. Это позволяет сформулировать вариационную задачу нахождения наиболее гладкой функции из множества всех возможных. При практической реализации данного метода частные производные функции яркости аппроксимируются конечными разностями на сетке изображения, что позволяет перейти к конечной оптимизационной задаче и решать ее методом градиента.
В процессе решения оптимизационной задачи автоматически вычисляются координаты точек контуров (в данных точках функция не удовлетворяет требуемым критериям гладкости), а также координаты других особых точек, позволяющих оптимальным образом кодировать изображение.
Пусть - оценка истинной функции яркости, которая подвержена сглаживающему преобразованию оптической системы. Поскольку ошибки при получении оценки , как правило, носят интервальный характер, можно с достаточной уверенностью считать, что:
| - | ?.
Здесь? - область определения функции . Приведенное условие, что значения функции и могут отличаться друг от друга не более, чем на значение порога ?.
Далее степень гладкости функции в точке можно оценить по величине квадрата модуля градиента:
.
С учетом этого можно ввести в рассмотрение следующий функционал по критерию гладкости:
.
Будем считать, что значения функции известны только в целочисленных точках , = , =. Тогда необходимо найти значения наиболее «гладкой» функции в узлах сетки , которая удовлетворяет условию:
|- | ?, =1,2,...,N1, =1,2,...,. (1)
Нетрудно получить дискретный аналог () функционала гладкости , если аппроксимировать квадрат модуля градиента конечными разностями:
|-, |? -,
|.
Заменяя интегрирование конечной суммой, получаем:
. (2)
Далее необходимо решить задачу на условный экстремум - минимизировать функционал при условии (1). Это можно сделать методом сопряженных градиентов.
Минимизация функционала с помощью метода сопряженных градиентов
Нетрудно заметить, что функционал можно рассматривать как векторную функцию от аргумента . Поэтому, учитывая условие (1), функционал необходимо минимизировать в области
.
Рассмотрим практическую реализацию метода сопряженных градиентов.
В качестве начального приближения выбирается исходное черно-белое изображение, т.е. = .
Пусть на шаге мы имеем сглаженное изображение . Тогда направление минимизации в методе сопряжения градиентов следует выбрать из условия:
+ . (3)
Таким образом, направление минимизации зависит от предыдущего направления минимизации . Мы считаем, что =0. При вычислении направления следует учитывать, что точка может лежать на границе области , т.е. для некоторых значений и будет выполняться равенство
= ? (знак «+» или «-»).
Тогда координату вектора следует обнулить, если минимизация вдоль этого направления в любом случае приводит к перемещению точки за пределы области допустимых значений ? .
При программной реализации положение точки удобно закодировать:
Тогда координату следует обнулить, если выполняется условие:
> 0.
После того, как вычислено направление минимизации , функционал минимизируется вдоль данного направления. Для этого необходимо решить оптимизационную задачу
относительно параметра. Учитывая, что - это полином второй степени от многих переменных (положительно определенная квадратичная форма), раскрывая скобки и приводя подобные, получим многочлен второй степени относительно?:
.
Нетрудно заметить, что последняя оптимизационная задача имеет явное решение:
= -.
Из логики предлагаемого метода следует, что значение должно быть положительным. Сглаженное изображение на следующем итерационном шаге определяем по формуле:
. (4)
Однако непосредственно формулу (4) использовать нельзя, поскольку точка может попасть за пределы области допустимых значений. С учетом этого следует корректировать координаты вектора по формуле:
Сходимость данного алгоритма следует оценивать по модулю градиента , при этом модуль следует рассчитывать только по тем координатам, которые не находятся на границе области (в этом случае ). Аналогично рассчитывается модуль градиента и в формуле (3).
5. Выделение контуров и характерных точек изображения будем называть характерными те точки изображения, которые являются наиболее информативными, т.е. по которым можно восстановить с некоторой точностью исходное изображение. Нетрудно заметить, что предлагаемый метод сглаживания позволяет выделить характерные точки. Это точки с координатами , которые являются граничными в том смысле, что. Данные точки должны определять согласно решению оптимизационной задачи положение всех нехарактерных точек.
Нетрудно заметить, что граничными точками будут также точки, определяющие контуры края изображения. В этих точках является большим значение модуля градиента, поэтому в окрестности этих точек не удастся сгладить изображение и значения яркости в этих точках сглаженного изображения окажутся на границе допустимых значений.
Предлагаемая процедура сглаживания позволяет улучшить качественные характеристики методов предварительной обработки изображений, использующих градиент изображения. Отметим в заключение, что предлагаемый метод сглаживания особенно эффективно фильтрует ошибки, возникающие при оцифровке реальных изображений.
Lee D. Coping with discontinuities in Computer Vision: Their Detection, Classification and Measurement// IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.12, № 4, 1990.
Дуда Р.,. Харт П. Распознавание образов и анализ сцен. - М. : Мир, 1976.
Павлидис Т. Алгоритмы машинной графики и обработки изображений. - М.: Радио и связь, 1986.