Table Of ContentCopyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Ярославский государственный университет им. П.Г. Демидова
Кафедра вычислительных и программных систем
Кафедра дифференциальных уравнений
Кафедра теории функций и функционального анализа
Обработка информации
в управляющих системах
Часть 2
Методические указания
к лабораторным работам
Рекомендовано
Научно-методическим советом университета
для студентов специальности и направления
Прикладная математика и информатика
Ярославль 2005
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
УДК 002.372.8
ББК В182я73
О 23
Рекомендовано
Редакционно-издательским советом университета
в качестве учебного издания. План 2005 года
Рецензент
кафедра теоретической информатики
Ярославского государственного университета им. П.Г. Демидова
Составители А.К. Карлин, А.Д. Пендюр, Н.А. Стрелков
О 23 Обработка информации в управляющих системах.
Ч. 2: Метод. указания / Сост. А.К. Карлин, А.Д. Пендюр,
Н.А. Стрелков; Яросл. гос. ун-т.– Ярославль: ЯрГУ, 2005.–
46 с.
Содержатся основные теоретические положения и
предлагаются лабораторные работы для их освоения и
экспериментального подтверждения на программных мо-
делях.
Указания предназначены для студентов, обучающихся
по дисциплине “Обработка информации в управляющих
системах”, специальность 010200 Прикладная математика
и информатика и направлению 510200 Прикладная мате-
матика и информатика (блок ДС), очной формы обучения.
Могут быть использованы при выполнении расчетных,
курсовых и дипломных работ.
УДК 002.372.8
ББК В182я73
© Ярославский государственный университет, 2005
© А.К. Карлин, А.Д. Пендюр, Н.А. Стрелков, 2005
2
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Лабораторная работа № 5
Нормализация изображений
Целью данной работы является ознакомление с методом про-
странственной нормализации изображений, используемым на этапе
предварительной обработки алгоритмами распознавания.
Задача нормализации изображений (т. е. некоторой стандарти-
зации) возникает в тех случаях, когда поступающие на автоматиче-
скую обработку изображения объектов сняты в меняющихся усло-
виях наблюдения. Например, могут меняться освещенность объек-
та и фона; положение объекта в поле обзора оптической системы;
расстояние до объекта, т. е. его масштаб в кадре и т. п.
Рассмотрим наиболее часто встречающийся случай – нормали-
зацию положения объекта в кадре [1]. В качестве стандартного
примем такое положение объекта в кадре, при котором его главные
оси параллельны координатным осям кадра. Главными осями бу-
дем считать прямоугольную систему координат, связанную с объ-
ектом и расположенную так, что относительно одной из осей мо-
мент инерции изображения максимален (или минимален).
Объектом будем считать связное множество светлых элемен-
тов (пятно), где
светлые элемен-
ты А и В при-
надлежат одно-
му пятну, если
из А в В можно
попасть, двига-
ясь только по
смежным свет-
лым элементам
Рис. 1. Пример связной компоненты
(смежным к эле-
менту матрицы
считается соседний к нему элемент, выбранный в одном из восьми
возможных направлений дискретной решетки) (см. рис. 1).
3
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Моментом инерции M системы материальных точек относи-
l
тельно прямой l называется [2]
M = ∑m R , (1)
l i i
где m – масса i-й точки;
i
R – расстояние i-й точки до прямой l, а суммирование ведется
i
по всем точкам системы.
Рассмотрим ситуацию, изображенную на рис. 2.
Пусть m – код яркости i-го элемента пятна. Моменты инерции
i
пятна относительно осей cU и cV равны:
M = ∑mv ; (2)
U i i
M = ∑mu ,
V i i
где суммирование ведется по всем элементам пятна.
Координатные системы,
изображенные на рисунке, свя-
заны следующими соотноше-
ниями:
u = x′cosϕ+ y′sinϕ ;
i i i
v = −x′sinϕ+ y′cosϕ ; (3)
i i i
x′ = x −a ;
i i 0
y′ = y −b .
i i 0
Подставляя уравнения (3) в
Рис. 2. Расположение
(2), окончательно получим:
координатных систем
M = B sin2 ϕ− B sin(2ϕ)+ B cos2 ϕ; (4)
U 1 2 3
M = B cos2 ϕ+ B sin(2ϕ)+ B sin2 ϕ ;
V 1 2 3
где
B = ∑m x −a ∑m x ;
1 i i 0 i i
B = ∑m x y −b ∑m x ;
2 i i i 0 i i
B = ∑m y2 −b ∑m y ;
3 i i 0 i i
a = (∑m x )/∑m ;
0 i i i
b = (∑m y )/∑m ;
0 i i i
- суммирование везде ведется по всем элементам пятна.
4
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Значение угла ϕ найдем из условия экстремума значения M
U
(или M ):
V
dM
U = 0. (5)
dϕ
Подставляя уравнение (4) в (5), получим
2B
tg(2ϕ) = 2 , (6)
B − B
1 3
откуда
1 2B
ϕ = arctg( 2 )+ kπ, k = 0,1,2,... (7)
2 B − B
1 3
- четные значения k соответствуют одному экстремальному
значению момента M (например, максимальному значению M ),
U U
а нечетные – второму (соответственно, минимальному значению).
Замечания
1. Для симметричного (с центральной симметрией) пятна вы-
ражение (7) становится неопределенным. Действительно, как сле-
дует из выражений (4), для такого пятна B = 0 и B = B (хотя точ-
2 1 3
ные значения встречаются редко). Этот факт следует учитывать
при написании программы алгоритма, чтобы избежать аварийной
ситуации.
2. Для угла поворота ϕ = π/4 B = B и B ≠ 0 (если фигура не
1 3 2
симметрична), что также следует предусмотреть в программе как
особый случай.
Приведенные выше соотношения позволяют сформулировать
следующий алгоритм по определению угла поворота изображения
связной фигуры и ее перемещения для придания стандартного по-
ложения в кадре.
Алгоритм
Для определения угла поворота и перемещения изображения
связной компоненты по мере поступления кодов яркости m эле-
i
ментов изображения и их координат x , y накапливаются следую-
i i
щие суммы:
5
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
α = ∑m ; α = ∑m x ; α = ∑m x2 ; (8)
i x i i xx i i
α = ∑m y ; α = ∑m y2 ; α = ∑m x y ;
yx i i yy i i xy i i i
где суммирование ведется по всем элементам, принадлежащим
пятну.
После того как все элементы пятна будут исчерпаны, вычис-
ляются вспомогательные значения B ,B ,B и координаты центра
1 2 3
тяжести a ,b :
0 0
B = α −a α ; B = α −b α ; B = α −b α ; (9)
1 xx 0 x 2 xy 0 x 3 xy 0 y
a = α /α ; b = α /α .
0 x 0 y
При B − B < ε и B < ε, где ε – положительная константа,
1 3 2
такая, что значения меньше ε можно считать машинным нулем для
данной задачи, пятно объявляется центрально-симметричным и
угол поворота принимается равным ϕ=0.
При B − B < ε и B ≥ ε угол поворота принимается равным
1 3 2
ϕ = π/4.
В остальных случаях вычисляется угол поворота ϕ:
1 2B
ϕ = arctg( 2 ). (10)
2 B − B
1 3
Затем выполняется перенос изображения и его поворот для
придания стандартного положения (аффинные преобразования
смещения и поворота необходимо выполнить по правилам выпол-
нения этих преобразований для дискретной решетки, так как без
учета дискретности решетки на изображении образуются пропуски).
Содержание работы
Сформировать изображение: две буквы – одна располагается в
первом квадранте и затем поворачивается на (-30) градусов (т.е.
координатные оси поворачиваются на 30 градусов), вторая – рас-
полагается во втором квадранте и поворачивается на 20 градусов.
Обработка: выделить связные компоненты (буквы). Для каж-
дой связной компоненты определить центр тяжести и направление
оси, момент инерции относительно которой максимален.
6
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Варианты заданий:
1. Ж М (рус.) 2. И К (рус.) 3. У Х (рус.)
4. Х Ш (рус.) 5. Ю И (рус.) 6. Н М (рус.)
7. W Y (лат.) 8. U Y (лат.) 9. M U (лат.)
На рис. 3 приведен пример визуализации:
Рис. 3. Пример визуализациии
Лабораторная работа № 6
Статистические модели
Данная лабораторная работа направлена на освоение приемов
составления программ, связанных с разработкой и исследованием
статистических моделей.
Особенностью составления программ, связанных со статисти-
ческим моделированием, является неизвестное заранее число экс-
периментов на модели, которое необходимо проделать для дости-
жения необходимой точности в определении статистических пара-
метров. Поэтому программы статистического моделирования
7
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
ориентированы на бесконечное число экспериментов и выход из
программы выполняется пользователем при достижении необхо-
димой точности.
Второй заметной особенностью программ статистического мо-
делирования является необходимость двух режимов работы про-
грамм: отладочного, при котором визуализируется максимальное
число промежуточных результатов с целью контроля правильности
логики работы программы и рабочего, при котором отменяется ви-
зуализация промежуточных результатов, замедляющая ход вычис-
лительного процесса.
Содержание работы
Лабораторная работа состоит из трех пунктов: исследование
датчика псевдослучайных чисел с равномерным распределением;
разработка процедуры-функции датчика псевдослучайных чисел с
нормальным распределением; разработка и исследование програм-
мы генерации пуассоновского поля точек.
1. Разработать программу модели для испытания датчика псев-
дослучайных чисел с равномерным распределением на отрезке
[0,1] Random. Построить ряд распределения (гистограмму) с шагом
∆, выполнить его вывод на экран через каждые n экспериментов.
1
Выполнить оценку математического ожидания M*и дисперсии
D* для этого датчика по формулам [3]:
1 N
M* = ∑x ; (1)
i
N
i=1
N 1 N
D* = ( ∑x2 −(M*)2), (2)
N −1 N i
i=1
где x ,x ,...,x – значения, полученные от датчика псевдослучай-
1 2 N
ных чисел; N – общее число экспериментов.
Построить графики оценок M*(N), D*(N) с шагом N , указав
T
на экране теоретические значения математического ожидания и
дисперсии.
8
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Предлагаемые значения параметров:
Параметр Значения
∆ 0.01, 0.02, 0.05
n 1000, 5000, 10000
1
N 2, 5
T
Возможный вид графического вывода иллюстрируется
рис. 1 и 2.
Р ис. 1. Гистограмма при росте числа экспериментов
Рис. 2. Оценка математического ожидания
при увеличении числа экспериментов
2. Разработать программу процедуры-функции датчика псевдо-
случайных чисел с нормированным нормальным распределением.
Выполнить оценку математического ожидания и дисперсии для
разработанного датчика аналогично пункту 1. Построить и срав-
нить графики реализаций от датчика с равномерным и от датчика с
9
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
нормальным распределением при одинаковом значении дисперсии
(длину реализации взять, например, равной 150).
Для получения значений псевдослучайных чисел с нормаль-
ным распределением можно воспользоваться следующим функ-
циональным преобразованием:
12
y = ∑x −6, (3)
j i
i=1
где
x – значения от датчика Random с равномерным распределе-
i
нием;
y , j =1,2,... – псевдослучайные числа, распределение кото-
j
рых, согласно центральной предельной теореме, близко к нормаль-
ному.
Вычисляя математическое ожидание левой и правой части вы-
ражения (3) получим, что M = 0 и аналогично D =1, т. е. датчик,
y y
функционирующий согласно выражению (3), дает псевдослучай-
ные числа с нормированным нормальным распределением.
3. Разработать процедуру генерации пуассоновского поля то-
чек размером NxN пиксел (кадр) с плотностью λ точек на кадр.
Вывести построенный кадр
на экран.
Получение пуассонов-
ского поля (см. [3]) можно
выполнить двумя путями:
1) в каждом пикселе кадра
выполняется независимое
испытание с вероятностью
успеха p = λ/ N2. В случае
успеха в данном пикселе
ставится точка; 2) от датчика
с нормальным распределе-
нием с математическим Рис. 3. Пример визуализации
ожиданием λ и дисперсией
λ выбрасывается число точек в кадре. Затем от датчика с равно-
мерным распределением на отрезке [0,N] выбрасываются пары
значений, которые интерпретируются как координаты этих точек в
кадре. Пример визуализации приведен на рис. 3.
10