trackingSensorConfiguration

Представляйте настройку датчика для отслеживания

Описание

Объект trackingSensorConfiguration создает настройку для датчика, используемого с Системой trackerPHD object™. Это позволяет вам задавать параметры датчика, такие как плотность помехи, пределы датчика, разрешение датчика. Можно также задать, как средство отслеживания чувствует обнаружения из свойств использования датчика, таких как FilterInitializationFcn, SensorTransformFcn и SensorTransformParameters. Смотрите Создают Настройку Датчика Отслеживания для получения дополнительной информации. Объект trackingSensorConfiguration позволяет средству отслеживания выполнить три основных стандартных операции:

  • Оцените вероятность обнаружения в точках в пространстве состояний.

  • Инициируйте компоненты в плотности гипотезы вероятности.

  • Получите плотность помехи датчика.

Создание

Синтаксис

config = trackingSensorConfiguration(SensorIndex)
config = trackingSensorConfiguration(SensorIndex,Name,Value)

Описание

config = trackingSensorConfiguration(SensorIndex) создает объект trackingSensorConfiguration с заданным индексом датчика, SensorIndex и значениями свойств по умолчанию.

пример

config = trackingSensorConfiguration(SensorIndex,Name,Value) позволяет вам устанавливать свойства с помощью одной или нескольких пар "имя-значение".

Свойства

развернуть все

Уникальный идентификатор датчика, заданный как положительное целое число. Это свойство отличает обнаружения, которые прибывают из различных датчиков в системе мультидатчика. При создании объекта trackingSensorConfiguration необходимо задать SensorIndex как первый входной параметр в синтаксисе создания.

Пример 2

Типы данных: double

Укажите на состояние создания отчетов обнаружения датчика, заданного как false или true. Установите это свойство на true, когда датчик должен будет сообщить об обнаружениях в своих пределах датчика средству отслеживания. Если дорожка или цель, как предполагалось, были обнаружены датчиком, но датчик не сообщил ни о каких обнаружениях, то эта информация используется, чтобы говорить против вероятности существования дорожки, когда свойство isValidTime установлено в true.

Типы данных: логический

Отфильтруйте функцию инициализации, заданную как указатель на функцию или как вектор символов, содержащий имя допустимой функции инициализации фильтра. Функция инициализирует фильтр PHD, используемый trackerPHD. Функция должна поддержать следующие синтаксисы:

filter = filterInitializationFcn()
filter = filterInitializationFcn(detections)
filter является допустимым фильтром PHD с компонентами для новорожденных целей, и detections является массивом ячеек objectDetection. Первый синтаксис позволяет вам задавать прогнозирующую плотность рождения в фильтре PHD, не используя обнаружения. Второй синтаксис позволяет фильтру инициализировать адаптивную плотность рождения с помощью информации об обнаружении. Дополнительную информацию см. в свойстве BirthRate trackerPHD. Если вы создаете свой собственный FilterInitilizationFcn, необходимо также предоставить функции преобразования использование свойства SensorTransformFcn. Кроме фильтра по умолчанию инициализация функционирует initcvggiwphd, можно также использовать initctggiwphd и initcaggiwphd в Sensor Fusion and Tracking Toolbox™.

Типы данных: function_handle | char

Датчик преобразовывает функцию, заданную как указатель на функцию или как вектор символов, содержащий имя допустимого датчика, преобразовывает функцию. Функция преобразовывает состояние дорожки в состояние обнаружения датчика. Например, функция преобразовывает состояние дорожки в сценарий Декартов кадр к сферическому кадру датчика. Можно создать собственный датчик, преобразовывают функцию, но это должно поддержать следующий синтаксис:

detStates = SensorTransformFcn(trackStates,params)
params является параметрами, сохраненными в свойстве SensorTransformParameters. Заметьте, что подпись функции подобна функции измерения. Поэтому можно использовать функцию измерения (такую как cvmeas, ctmeas или cameas) как SensorTransformFcn.

Обратите внимание на то, что SensorTransformFcn по умолчанию является датчиком, преобразовывают функцию фильтра, возвращенного FilterInitilizationFcn. Например, функция initicvggiwphd возвращает cvmeas по умолчанию, тогда как initictggiwphd и функции initicaggiwphd возвращают ctmeas и cameas, соответственно.

Типы данных: function_handle | char

Параметры для датчика преобразовывают функцию, возвращенную как структура или массив структур. Если только необходимо преобразовать состояние однажды, задайте его как структуру. Если необходимо преобразовать времена n состояния, задайте его как n-by-1 массив структур. Например, чтобы преобразовать состояние из сценария структурируют к кадру датчика, обычно необходимо сначала преобразовывать состояние из сценария прямоугольный кадр на платформу прямоугольный кадр, и затем преобразовывать состояние с платформы прямоугольный кадр к датчику сферический кадр. Поля структуры:

Поле Описание
Frame

Тип кадра координаты нижестоящего элемента, заданный как 'Rectangular' или 'Spherical'.

OriginPosition

Дочерняя позиция источника кадра выражена в Родительском кадре, заданном как вектор 3 на 1.

OriginVelocity

Дочерняя скорость источника кадра выражается в родительском кадре, заданном как вектор 3 на 1.

Orientation

Относительная ориентация между кадрами, заданными как 3х3 матрица вращения. Если свойство IsParentToChild установлено в false, то задайте Orientation как вращение от дочернего кадра до родительского кадра. Если свойство IsParentToChild установлено в true, то задайте Orientation как вращение от родительского кадра до дочернего кадра.

IsParentToChild

Отметьте, чтобы указать на направление вращения между родительским и дочерним кадром, заданным как true или false. Значением по умолчанию является false. См. описание поля Orientation для деталей.

HasAzimuth

Указывает, содержат ли выходные параметры компоненты азимута, заданные как true или false.

HasElevation

Указывает, содержат ли выходные параметры компоненты повышения, заданные как true или false.

HasRange

Указывает, содержат ли выходные параметры компоненты области значений, заданные как true или false.

HasVelocity

Указывает, содержат ли выходные параметры скоростные компоненты, заданные как true или false.

Обратите внимание на то, что здесь кадр сценария является родительским кадром кадра платформы, и кадр платформы является родительским кадром кадра датчика.

Значения по умолчанию для SensorTransformParameters 2 1 массив структур как:

Поля Struct 1Struct 2
Кадр'Spherical''Rectangular'
OriginPosition[0;0;0][0;0;0]
OriginVelocity[0;0;0][0;0;0]
Ориентацияeye(3)eye(3)
IsParentToChildfalsefalse
HasAzimuthtruetrue
HasElevationtruetrue
HasRangetruetrue
HasVelocityfalsetrue

В этой таблице Struct 2 составляет преобразование из сценария прямоугольный кадр на платформу прямоугольный кадр, и Struct 1 составляет преобразование с платформы прямоугольный кадр к датчику, сферический кадр, учитывая свойство isParentToChild установлен в false.

Типы данных: struct

Пределы обнаружения датчика, заданные как N-by-2 матрица, где N является выходной размерностью датчика, преобразовывают функцию. Матрица должна описать более низкие и верхние пределы обнаружения датчика в том же порядке, как выходные параметры датчика преобразовывают функцию.

Если вы используете cvmeas, cameas или ctmeas, когда датчик преобразовывает функцию, то необходимо обеспечить пределы датчика по порядку как:

Описание этих пределов и их значений по умолчанию дано в следующей таблице. Обратите внимание на то, что значения по умолчанию для SensorLimits 3 2 матрица включая лучшие шесть элементов в таблице. Кроме того, если вы используете эти три функции, можно задать матрицу, чтобы быть в других размерах (1 2, 2 на 2, или 3 на 4), но необходимо задать эти пределы в последовательности, показанной в матрице SensorLimits.

ПределыОписаниеЗначения по умолчанию
minAz

Минимальный обнаруживаемый азимут в градусах.

-10
maxAz

Максимальный обнаруживаемый азимут в градусах.

10
minEl

Минимальное обнаруживаемое повышение в градусах.

-2.5
maxEl

Максимальное обнаруживаемое повышение в градусах.

2.5
minRng

Минимальная обнаруживаемая область значений в метрах.

0
maxRng

Максимальная обнаруживаемая область значений в метрах.

1000
minRr

Минимальный обнаруживаемый уровень области значений в метрах в секунду.

Нет данных
maxRr

Максимальный обнаруживаемый уровень области значений в метрах в секунду.

Нет данных

Типы данных: double

Разрешение датчика, заданного как N - элемент вектор с положительным знаком, где N является количеством параметров, заданных в свойстве SensorLimits. Если вы хотите присвоить только одну ячейку разрешения для параметра, просто задайте его разрешение как различие между максимальным пределом и минимальным пределом параметра.

Типы данных: double

Максимальное количество обнаружений датчик может сообщить на объект, заданный как положительное целое число.

Пример 3

Типы данных: double

Ожидаемое количество ложных предупреждений на единичный объем от датчика, заданного как положительная скалярная величина.

Пример: 2e-3

Типы данных: double

Вероятность обнаружения цели, которая, как оценивают, была за пределами пределов датчика, заданных как положительная скалярная величина. Это свойство позволяет объекту trackerPHD полагать, что предполагаемая цель, которая является вне пределов датчика, может быть обнаруживаемой.

Пример: 0.03

Типы данных: double

Примеры

свернуть все

Рассмотрите радар со следующими пределами датчика и разрешением датчика.

  azLimits = [-10 10];
  elLimits = [-2.5 2.5];
  rangeLimits = [0 500];
  rangeRateLimits = [-50 50];
  sensorLimits = [azLimits;elLimits;rangeLimits;rangeRateLimits];
  sensorResolution = [5 2 10 3];

Определение датчика преобразовывает функцию, которая преобразовывает Декартовы координаты [x; y;; vy] в сценарии структурируют к сферическим координатам [азимут; el; область значений;] в кадре датчика. Можно использовать функцию измерения cvmeas, когда датчик преобразовывает функцию.

  transformFcn = @cvmeas;

Чтобы задать параметры, требуемые для cvmeas, используйте свойство SensorTransformParameters. Здесь, вы принимаете, что датчик смонтирован в центре платформы и платформы, расположенной в [100; 30; 20] перемещается со скоростью [-5; 4; 2] модули в секунду в кадре сценария.

Первая структура задает местоположение датчика, скорость и ориентацию в кадре платформы.

  params(1) = struct('Frame','Spherical','OriginPosition',[0;0;0],...
                   'OriginVelocity',[0;0;0],'Orientation',eye(3),'HasRange',true,...
                   'HasVelocity',true);

Вторая структура задает местоположение платформы, скорость и ориентацию в кадре сценария.

  params(2) = struct('Frame','Rectangular','OriginPosition',[100;30;20],...
                    'OriginVelocity',[-5;4;2],'Orientation',eye(3),'HasRange',true,...
                    'HasVelocity',true);

Создайте настройку.

  config = trackingSensorConfiguration('SensorIndex',3,'SensorLimits',sensorLimits,...
                                       'SensorResolution',sensorResolution,...
                                       'SensorTransformParameters',params,...
                                       'SensorTransformFcn',@cvmeas,...
                                       'FilterInitializationFcn',@initcvggiwphd)
config = 

  trackingSensorConfiguration with properties:

                  SensorIndex: 3
                  IsValidTime: 0

                 SensorLimits: [4x2 double]
             SensorResolution: [4x1 double]
           SensorTransformFcn: @cvmeas
    SensorTransformParameters: [1x2 struct]

      FilterInitializationFcn: @initcvggiwphd
          MaxNumDetsPerObject: Inf

               ClutterDensity: 1.0000e-03
         DetectionProbability: 0.9000
      MinDetectionProbability: 0.0500

Больше о

развернуть все

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| | | |

Введенный в R2019a