- •Содержание.
- •1. Введение.
- •1.1. Содержательная постановка задачи.
- •1.2. Терминологические соглашения.
- •2. Постановка задачи.
- •Общие сведения о моделировании систем.
- •2.2. Основание для разработки.
- •2.3. Назначение.
- •2.4. Требования к программному обеспечению.
- •2.5. Входные и выходные данные.
- •2.6. Условия эксплуатации.
- •3. Описание программного обеспечения.
- •3.1. Выбор языка программирования для реализации цифровой модели.
- •3.2. Функциональное назначение цифровой модели.
- •3.3. Описание идентификаторов процедур и функций, входящих в состав цифровой модели.
- •3.4. Описание идентификаторов переменных и массивов, используемых в цифровой модели.
- •3.5. Описание алгоритма цифровой модели.
- •3.6. Описание процедур и функций, реализующих цифровую модель.
- •3.6.1. Процедура расчета коэффициентов.
- •3.6.1.1. Функциональное назначение.
- •Integral ( X : real ).
- •3.6.1.2. Описание идентификаторов переменных и массивов.
- •3.6.1.2.1. Входные данные.
- •3.6.1.2.2. Вспомогательные переменные.
- •3.6.1.2.3. Выходные данные.
- •3.6.1.3. Описание логики.
- •3.6.2. Процедура формирования модели изображения очередного кадра.
- •3.6.2.1. Функциональное назначение.
- •3.6.2.2. Описание идентификаторов и назначения переменных и массивов.
- •3.6.2.2.1. Входные данные.
- •3.6.2.2.2. Вспомогательные переменные.
- •3.6.2.2.3. Выходные данные.
- •3.5.2.3. Описание логики.
- •3.6.3. Описание процедуры моделирования движения сложного фона.
- •3.6.3.1. Функциональное назначение.
- •Var ArgumentX, ArgumentY : real).
- •3.6.3.2. Описание идентификаторов и назначение переменных и массивов.
- •3.6.3.2.1. Входные данные.
- •3.6.3.2.2. Вспомогательные переменные.
- •3.6.3.2.3. Выходные данные.
- •3.6.3.3. Описание логики.
- •3.6.4. Описание функций яркости.
- •3.6.4.1. Функциональное назначение.
- •3.6.4.2. Описание идентификаторов и назначения переменных.
- •3.6.4.2.1. Входные данные.
- •3.6.4.2.2. Выходные данные.
- •3.6.4.3. Описание подпрограмм-функций. Функция яркости с поверхностью типа «плоскость».
- •Функция яркости с поверхностью типа «усеченная плоскость».
- •Функция яркости с поверхностью типа «дважды усеченная плоскость».
- •Функция яркости с поверхностью типа «эллипсоид вращения».
- •Функция яркости с поверхностью типа «эллиптический цилиндр».
- •Функция яркости с поверхностью типа «параболический цилиндр».
- •Функция яркости с поверхностью типа «однополостной гиперболоид».
- •Функция яркости с поверхностью типа «гиперболический параболоид».
- •Функция яркости с поверхностью типа «волнистая поверхность».
- •3.6.5. Процедура ввода параметров функций, участвующих в моделировании изображения.
- •3.6.5.1. Функциональное назначение.
- •3.6.5.2. Описание идентификаторов и назначения используемых переменных и массивов.
- •3.6.5.2.1. Вспомогательные переменные.
- •3.6.5.2.2. Выходные данные.
- •3.6.5.3. Описание логики.
- •3.6.6. Процедура формирования разностного изображения с помощью операции временного дифференцирования.
- •3.6.6.1. Функциональное назначение.
- •3.6.6.2. Описание идентификаторов переменных и массивов.
- •3.6.6.2.1. Входные данные.
- •3.6.6.2.2. Вспомогательные переменные.
- •3.6.6.2.3. Выходные данные.
- •3.6.6.3. Описание логики.
- •3.6.7. Процедура задания начальных значений.
- •3.6.7.1. Функциональное назначение.
- •3.6.7.2. Описание идентификаторов переменных и массивов.
- •3.6.7.2.1. Вспомогательные переменные.
- •3.6.7.2.2. Выходные данные.
- •3.6.7.3. Описание логики.
- •3.6.8. Процедура инициализации графического режима.
- •3.6.8.1. Функциональное назначение.
- •InitGraphMode.
- •3.6.8.2. Описание идентификаторов переменных и массивов.
- •3.6.8.2.1. Входные данные.
- •3.6.8.2.2. Вспомогательные переменные.
- •3.6.8.2.3. Выходные данные.
- •3.6.8.3. Описание логики.
- •3.6.9. Процедура распознавания.
- •3.6.9.1. Функциональное назначение.
- •3.6.9.2. Содержательная постановка задачи автоматического распознавания подвижных точечных объектов.
- •3.6.9.3. Описание алгоритмов распознавания подвижных точечных объектов.
- •3.6.9.3.1. Описание детерминированного алгоритма распознавания подвижных точечных объектов.
- •3.6.9.3.2. Описание вероятностного алгоритма распознавания подвижных точечных объектов.
- •3.6.9.3.3. Описание комбинированного алгоритма распознавания подвижных точечных объектов.
- •3.6.9.3.4. Описание вероятностного и комбинированного алгоритмов распознавания подвижных точечных объектов с усеченной выборкой.
- •3.6.9.4. Описание идентификаторов переменных и массивов.
- •3.6.9.4.1. Входные данные.
- •3.6.9.4.2. Вспомогательные переменные.
- •3.6.9.4.3. Выходные данные.
- •3.6.9.5. Описание логики.
- •3.6.10. Процедура определения массива направлений.
- •3.6.10.1. Функциональное назначение.
- •3.6.10.2. Выходные данные.
- •3.6.10.3. Описание логики.
3.6.10. Процедура определения массива направлений.
3.6.10.1. Функциональное назначение.
Главной и единственной целью данной процедуры является определение массива направлений «ArrayWays [1..2, 1..8]», предназначенного для определения координат при перемещении из данной ячейки поля наблюдения в соседние.
Координаты соседних рецепторов поля наблюдения, в которые возможно перемещение объекта, определяются с помощью массива направлений «ArrayWays [1..2, 1..8]». Число столбцов в этом массиве равняется восьми - по числу элементов поля квадратной формы, окружающего данную ячейку. Число строк в массиве равняется двум - по числу координат любого рецептора на плоскости поля наблюдения. здесь принято, что за время между соседними кадрами при движении объекта с допустимыми скоростями возможно его перемещение не далее, чем на площадь одного из соседних рецепторов поля наблюдения. При таком условии могут иметь место только единичные приращения координат траектории, отмечаемые в соответствующих ячейках массива направлений единицами (возможно со знаком минус), или - их отсутствие, отмечаемое в массиве нулями. Положительное приращение координаты по осям координат 0X è 0Y имеет место при переходе в сторону рецептора с большим номером по данной координатной оси поля наблюдения, отрицательное приращение возникает при перемещении в противоположном направлении.
Если данную ячейку отметить нулем, то номером «1» обозначен тот из окружающих ее соседних рецепторов, который соответствует приращению координат DX = 1, DY = 0; номером «2» обозначен рецептор с приращениями координат DX = 1, DY = 1; остальные ячейки обозначены номерами в порядке возрастания для выбранного направления обхода данной (нулевой) ячейки. Далее для всех ячеек поля наблюдения принят обход против часовой стрелки, как показано на рисунке ¹ 3.1.
0 |
|
|
|
Y |
|
6 |
5 |
4 |
|
|
7 |
0 |
3 |
|
|
8 |
1 |
2 |
|
X |
|
|
|
|
рисунок ¹ 3.1.
Следовательно, массив направлений «ArrayWays [1..2, 1..8] сформирован в виде, представленном в таблице ¹ 3.1.
Таблица ¹ 3.1.
¹ |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
DX |
+1 |
+1 |
0 |
-1 |
-1 |
-1 |
0 |
+1 |
DY |
0 |
+1 |
+1 |
+1 |
0 |
-1 |
-1 |
-1 |
Таким образом, в восьми столбцах массива «ArrayWays [1..2, 1..8]» содержатся восемь пар минимальных приращений координат, или восемь единичных векторов, соответствующих направлениям всех элементарных переходов из данной ячейки поля наблюдения в соседние.
3.6.10.2. Выходные данные.
ArrayWays [1..2, 1..8] - массив направлений. Содержит восемь пар приращений координат 0X è 0Y при перемещении из жанной ячейки поля наблюдения в соседние.
3.6.10.3. Описание логики.
Значения массива направлений «ArrayWays [1..2, 1..8]» - это восемь пар приращений координат 0X è 0Y при перемещении из данной нулевой ячейки поля наблюдения в соседние. Элементы массива направлений определяются в соответствии с правилами, описанными выше и сведенными в таблицу ¹ 3.1.
Значения элементов массива направлений полностью соответствуют записям в данной таблице. Приращение координаты X соответствует элементам массива «ArrayWays [1, 1..8]», а приращение координаты Y соответствует элементам массива «ArrayWays [2, 1..8]». Второй параметр определяется номером ячейки в которую произошло перемещение сигнала из данной согласно рисунку ¹ 3.1.