- •Содержание.
- •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.8. Процедура инициализации графического режима.
3.6.8.1. Функциональное назначение.
Данная процедура является вспомогательной в данной цифровой модели и предназначена для ввода ряда переменных, обуславливающих вывод результатов работы модели изображения и распознавания в графическом виде, а так же для инициализации графического режима, соответствующего имеющемуся типу монитора.
В частности, в процедуре организовано задание пользователем режима вывода изображения на экран и типа выводимого изображения: либо очередного кадра, либо разностной картины. Для определения указанных режимов вывода в цифровой модели введены две логические переменные:
PriznOutScreen, определяющей либо графический режим вывода результатов работы модели изображения («true»), либо вывод только текстовой информации («false»);
ModeOutScreen, определяющей тип выводимого изображения («true» - выводится изображение, моделирующее очередной кадр, «flase» - выводится разностная картина предыдущего и текущего кадров).
Кроме того в процедуре предусмотрено задание пользователем размеров рецептора поля наблюдения по осям 0X è 0Y, записываемые в переменные SizePointX è SizePointY, которые в дальнейшем совместно с величиной MaxBrightness будут определять уровень дискретизации яркости рецептора поля наблюдения при выводе изображения на экран в процедуре OutScreen.
При условии, что ключ, определяющий вывод изображения на экран PriznOutScreen = «true», процедура выполняет перевод монитора в графический режим, соответствующий VGA - адаптеру. Данная цифровая модель позволяет так же использовать и любой другой тип видеоадаптера, но режим вывода изображение на экран рекомендуется организовывать при видеоадаптерах типа EGA è âûøå.
В завершении процедуры вычисляются координаты окон вывода сообщений и изображения и заносятся в массив окон. Координаты окна вывода сообщений определяются исходя из высоты выводимых текстовых символов в графическом режиме, а координаты окна вывода изображения вычисляются исходя из следующих параметров:
количества рецепторов по оси 0X поля наблюдения LenthX;
количества рецепторов по оси 0Y поля наблюдения LenthY;
размера рецептора по оси 0X поля наблюдения SizePointX;
размера рецептора по оси 0Y поля наблюдения SizePointY.
Данная процедура вызывается из основной программы один раз при начале работы цифровой модели строкой вида:
InitGraphMode.
3.6.8.2. Описание идентификаторов переменных и массивов.
3.6.8.2.1. Входные данные.
LenthX,
LenthY - число рецепторов поля наблюдения соответственно по осям координат 0X è 0Y. Длина и ширина поля наблюдения.
3.6.8.2.2. Вспомогательные переменные.
GraphDriver - переменная, задающая тип используемого видеоадаптера (VGA = 9, EGA = 3, автоопределение - 0). Задается перед вызовом стандартной функции инициализации графического режима языка Pascal - InitGraph.
GraphMode - переменная, определяющая режим работы видеоадаптера при заданном значении переменной GraphDriver. Задается перед вызовом стандартной функции инициализации графического режима языка Pascal - InitGraph.
H - промежуточная переменная при определении значений логических переменны PriznOutScreen è ModeOutScreen, задающих режим вывода изображения на экран.
H - высота строки при выводе текстовых сообщений в графическом режиме. Определяет координаты окна вывода текстовых сообщений.
X1,
X2,
Y1,
Y2 - координаты окон вывода сообщения и изображения, рассчитываемые в процедуре и записываемые в массив координат окон ArrayWindows [1..2, 1..2, 1..2].