Автоматизированная система колоризации полутонового изображения

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

ью, то значение каждой из составляющих R (красный), G (зеленый), B (синий) для полутонового изображения будет одинаковым и любую из составляющих можно использовать как функцию яркости изображения. Будем использовать составляющую R(красный), которая так же изменяется от 0 до 255.

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

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

)Функция Гаусса:

 

,(1.3)

 

где - дисперсия.

2)Линейная функция:

 

,(1.4)

 

где k - тангенс угла наклона функции.

3)Сигмоидальная функция:

 

,(1.5)

 

где k - параметр функции, определяющий ее кривизну.

4)Ступенчатая функция:

 

,(1.6)

 

где a - верхняя граница ступенчатой функции,

b - нижняя граница ступенчатой функции.

5)Тангенциальная функция:

 

,(1.7)

 

где k - параметр функции, определяющий ее кривизну

Оптимальное значение параметров функции активации определяется в ходе анализа результатов.

Обучение нейронной сети может осуществляться c помощью нескольких алгоритмов:

1)LMS (Least Mean Square) - метод минимизации среднеквадратичной ошибки. Наиболее простой в реализации алгоритм. Алгоритм является оптимальным согласно минимаксному критерию [8]. Средний квадрат ошибки (MSE) вычисляется по формуле 1.8:

 

,(1.8)

 

где R - значение на выходе персептрона,

N - размер выборки, Cj - ожидаемое значение.

Далее производится изменение весов персептрона с целью уменьшить среднеквадратичную ошибку (формула 1.9):

 

.(1.9)

 

2)Sigmoid Delta Rule (Дельта-правило) - метод обучения персептрона по принципу градиентного спуска по поверхности ошибки. Дельта-правило развилось из первого и второго правил Хебба [1]. Его дальнейшее развитие привело к созданию метода обратного распространения ошибки [8].

Алгоритм обучения персептрона следующий:

.Присвоить весам некоторые начальные значения. Например, нулю.

.Подать входной образ Х и вычислить выходное значение. Если выходное значение правильное, то переходят к шагу 4. Иначе к шагу 3.

.Применяя дельта-правило (см. ниже) вычислить новые значения весов.

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

Т.о. логика обучения персептрона следующая: если сигнал персептрона при некотором образе верен, то ничего корректировать не надо, если нет - производится корректировка весов. Дельта-правило является математической моделью правил корректировки весов. Введем величину d, которая равна разности между требуемым d и реальным выходом y (формула 1.10):

 

.(1.10)

 

Тогда, веса персептрона после коррекции будут равны (формула 1.11):

 

,(1.11)

 

где i - номер текущей итерации обучения,

h - коэффициент скорости обучения, позволяет управлять средней величиной изменения весов,

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

3)Back Propagation (алгоритм обратного распространения ошибки) - дальнейшее развитие алгоритма дельта-правила. Основная идея этого метода состоит в распространении сигналов ошибки от выходов сети к её входам, в направлении, обратном прямому распространению сигналов в обычном режиме работы. Барцев и Охонин предложили сразу общий метод (принцип двойственности), применимый к более широкому классу систем, включая системы с запаздыванием, распределённые системы, и т.п. [8]. При обучении ставится задача минимизации целевой функции, формируемой, как правило, в виде квадратичной суммы разностей между фактическими и ожидаемыми значениями выходных сигналов, которая для P обучающих выборок определяется по формуле 1.12:

 

,(1.12)

 

где w - значение веса нейрона,

P - количество обучающих выборок,

M - число нейронов,

yi - значение, полученное в результате вычисления сетью,

di - ожидаемое значение.

Корректирующий коэффициент веса нейрона вычисляется аналогично по формуле 1.10.

1)Momentum Back propagation - алгоритм обратного распространения ошибки с использованием момента. В нашем случае это коэффициент, который используется при пересчете значения изменения веса. Правильный подбор параметра позволяет увеличить скорость обучения, однако слишком большое значение момента будет причиной того, что ошибка не будет уменьшаться из-за проскакивания нужного значения. Целевая функция вычисляется по формуле 1.12. Корректирующий коэффициент вычисляется по формуле 1.13:

 

,(1.13)

 

где i - номер текущей итерации обучения,

h - коэффициент скорости обучения, позволяет управлять средней величиной изменения весов,

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

- разница