Управление поворотными устройствами (PTZ Controller)
Материал из Integra-S Wiki
Содержание
Назначение
- Поворот устройства PTZDevice в расположение(position) наблюдаемой точки, в указанные Панорамирование(pan), Наклон датчика(tilt) и Зум(zoom) либо по номеру preset.
- Поворот устройства PTZDevice в расположение(position) датчика.
- Поворот устройства PTZDevice за подвижной целью MoveableObject, находящейся в зоне.
- Создание фотоснимка цели после позиционирования на ней и запись его в trace_snapshot.
Настройка
- У компьютера/сервера должен быть настроен параметр сетевой адрес (ip).
- Параметры PTZController:
- Включен (enabled) - задействовать триггер.
- Настройки (settings) - настройки скрипта имеют следующие параметры:
- url - адрес веб-сервиса IntegraVideo7, например: http://localhost:1986/axis2/services/Iv7Server;
- tracer - настройки слежения:
- enabled - задействовать автоматическое слежение;
- iterations - количество итераций алгоритма расcчитывающего положение движущейся цели в будущем, например: 10.
- snapshot - настройки фотоснимка:
- width - ширина фотоснимка в пикселях, например: 320;
- height - высота фотоснимка в пикселях, например: 240.
- update - настройки обновления параметров:
- trace_time - обновлять параметр Время на позиционирование, сек (trace_time) поворотной камеры;
- point_ptz - обновлять параметры Панорамирование(pan), Наклон датчика(tilt) и Зум(zoom) поворотной точки;
- device_ptz - обновлять параметры pan, tilt и zoom поворотной камеры.
Замечания
- Для поворота камеры необходимо чтобы был запущен клиент Интегра-Видео и acuariomanager на одной физической машине.
- Камера должна быть подключена к корректно настроенной зоне Zone:
- area - область обслуживания;
- area_heights - высота области;
- trace_factor - дополнительный делитель числового приоритета для зоны.
- У поворотного устройства PTZDevice должны быть корректно настроены следующие параметры:
- trace_enabled - флаг выключения автоматики оператором;
- geo_position - географические координаты;
- geo_height - географическая высота;
- calibrationMatrix - калибровочная матрица;
- url - сетевой адрес камеры в формате IntegraVideo7;
- min_zoom_distance - дистанция до цели, менее которой приближение камеры будет всегда минимальным;
- min_zoom_limit_factor - коэффициент ограничивающий минимальное приближение камеры, от 0.0 (0%) до 1.0 (100%);
- max_zoom_distance - дистанция до цели, более которой приближение камеры будет всегда максимальным;
- max_zoom_limit_factor - коэффициент ограничивающий максимальное приближение камеры, от 0.0 (0%) до 1.0 (100%);
- focus_time - время необходимое на фокусировку в секундах;
- zoom_time - время необходимое на полное приближение в секундах;
- pan_speed - скорость горизонтального поворота в градусах в секунду;
- tilt_speed - скорость вертикального поворота в градусах в секунду;
- parallel_ptz - флаг указывающий на возможность одновременного поворота, приближения и фокусировки;
- pan_error - максимальная допустимая разница между параметрами pan камеры и точки;
- tilt_error - максимальная допустимая разница между параметрами tilt камеры и точки;
- zoom_error - максимальная допустимая разница между параметрами zoom камеры и точки;
- trace_types - список типов целей на которые данному устройству разрешено поворачиваться (пустой список означает, что разрешены все типы целей);
- trace_time - среднее время на позиционирование в секундах, начальное значение необходимо указать пользователю, затем если в настройках включено update_trace_time, то скрипт будет пересчитывать данное значение.
- У самой же цели MoveableObject должны быть корректно настроены следующие параметры:
- position - расположение;
- trace_zones - список идентификаторов зон, в которые входит цель в данный момент;
- trace_order - числовой приоритет цели, чем меньше тем выше, но отрицательные значения исключают цель из слежения.
- У наблюдаемой точки(ObservablePoint) должен быть корректно настроен параметр расположение(position).
- Наблюдаемая точка должна быть подключена к поворотной камере.
- Если preset больше или равно 0, то выполняется поворот по пресету. Калибровка не нужна. pan, tilt и zoom не заполняются.
- Если preset меньше 0, а pan, tilt и zoom не равно 0, то выполняется поворот по pan, tilt и zoom.
- Если preset меньше 0, а pan, tilt и zoom равно 0, но точка имеет position и altitude и камера откалибрована (т.е. имеет calibrationMatrix), то выполняется расчет и запись pan, tilt и zoom по позиции точки.
- При изменении параметров pan, tilt, zoom поворотной камеры проставляется флаг observed той ее поворотной точке, которая указывает приблизительно в тоже место с допусками указанными в pan_error, tilt_error и zoom_error поворотной камеры.