- •Содержание.
- •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.3. Описание процедуры моделирования движения сложного фона.
3.6.3.1. Функциональное назначение.
Процедура моделирования движения сложного фона является вспомогательной процедурой в составе подпрограммы формирования модели изображения очередного кадра «Screen» и предназначена для определения координат очередного отсчета той или иной функции яркости, формирующей изображение, взятого на поле наблюдения.
При определении координат учитываются следующие исходные данные:
исходное расположение сетчатки в плоскости аргументов данной функции яркости;
направление и скорость равномерного движения сетчатки в плоскости аргументов данной функции яркости;
скорость равномерного вращательного движения поля рецепторов относительно собственного центра;
интервал времени между соседними кадрами;
номер моделируемого кадра.
В результате, данная процедура осуществляет преобразование координат смещенной, двигающейся и вращающейся системы отсчета сетчатки в координаты неподвижной системы отсчета данной функции яркости.
Таким образом данная процедура совместно с процедурой формирования модели изображения очередного кадра и функциями яркости позволяет имитировать на поле наблюдения сложную картину движения функций яркости в виде одновременного их перемещения из различных мест по различным направлениям и с различными скоростями поступательного прямолинейного и вращательного движений.
Далее приводится описание вычислений координат неподвижной системы отсчета данной функции яркости, которые программно реализованы в процедуре «Movement». Обращение к данной процедуре осуществляется из процедуры формирования модели изображения очередного кадра строкой вида:
Movement ( ArrayDataF’i [q’i, 1], ArrayDataF’i [q’i, 2], ArrayDataF’i [q’i, 3], ArrayDataF’i [q, 4], ArrayDataF’i [q’i, 5], ArrayDataF’i [q’i, 6], ArrayDataF’i [q’i, 7], ArgumentX, ArgumentY), ãäå:
ArrayDataF’i - один из массивов параметров однотипных функций яркости «ArrayDataF1», «ArrayDataF2», ..., «ArrayDataF9».
q’i - один из номеров однотипных функций яркости q1, q2, ..., q9, определяющий конкретную реализацию функции «ArrayDataF’i» среди множества однотипных функций яркости, участвующих в моделировании изображения.
Соответственно строка описания процедуры «Movement» со списком формальных параметров имеет вид:
Movement ( x0, y0, q0, v, vq, dx, dy : real;
Var ArgumentX, ArgumentY : real).
3.6.3.2. Описание идентификаторов и назначение переменных и массивов.
3.6.3.2.1. Входные данные.
LenthX,
LenthY - числа рецепторов или ячеек по ширине и высоте поля наблюдения соответственно по осям 0X и 0Y.
ScreenNumber - номер моделируемого кадра.
TimeBetwenScreen - интервал времени между соседними кадрами.
Примечание: описаные ниже идентификаторы и назначение формальных параметров (x0, y0, q0, v, vq, dx, dy) используются только при описании данной процедуры. Соответствующие им фактические входные параметры сведены в массивы параметров однотипных функций яркости «ArrayDataF1», «ArrayDataF2», ..., «ArrayDataF9», определенные для нескольких реализаций каждой из 9-ти типов функций яркости. Соответствие между формальным параметром и фактическим, записанным в ячейке с указанным номером в конкретной строке массива данной функции яркости, определено сразу для всех функций в скобках после описания формального параметра. Так, например, для формального параметра v фактическими параметрами будут являться 4-ые элементы массивов «ArrayDataF1», «ArrayDataF2», ..., «ArrayDataF9».
x0,
y0 - смещения сторон сетчатки при расположении их в исходном состоянии параллельно соответственно осям 0X è 0Yаргументов данной функции яркости (соответственно ArrayDataF’i [q’i, 1] è ArrayDataF’i [q’i, 2] ).
q0 - угол между направлением движения сетчатки (когда осуществляется перенос ее сторон параллельно осям аргументов функции яркости) и положительным направлением оси аргумента 0Y данной функции яркости (ArrayDataF’i [qi, 3] ).
v - скорость направленного прямолинейного равномерного движения сетчатки в плоскости аргументов данной функции яркости (ArrayDataF’i [q’i, 4] ).
vq - угловая скорость равномерного вращения плоскости сетчатки относительно собственного центра, определенная для данной функции яркости (ArrayDataF’i [q’i, 5] ).
dx,
dy - интервалы дискретизации аргументов данной функции яркости при переходе от ячейки к ячейке сетчатки, стороны которой соответственно параллельны осям аргументов 0X и 0Y - масштабы аргументов данной функции яркости (соответственно ArrayDataF’i [q’i, 6] è ArrayDataF’i [q’i, 7] ).