Функция преобразования модели для
объектtrackingIMM
преобразует x
= switchimm(modelType1
,x1
,modelType2
)State
или StateCovariance
свойства trackingIMM
объект из modelType1
определение состояния в modelType2
определение состояния.
modelType1
-- Задает строковое имя текущей модели движения.
x1
-- Задает State
или StateCovariance
соответствующий modelType1
.
modelType2
-- Задает строковое имя модели движения, которому x1
необходимо преобразовать.
Кроме того, можно задать размер и тип выхода. Когда не указано, x
= switchimm(___,x2
)x
имеет совпадающий тип данных и размерность, что и x1
.
x2
задает State
или StateCovariance
соответствующий modelType2
.
Преобразуйте состояние из модели постоянного ускорения в модель постоянной скорости с помощью switchimm
функция.
Инициализация
Установите текущую модель равной 'constacc'
и модель назначения, для 'constvel'
. Переменная x1
определяет состояние в текущей модели.
modelType1 = 'constacc'; modelType2 = 'constvel'; x1 = single([1;2;3;4;5;6]);
Преобразование
The switchimm
функция преобразует 2-D вход состояния постоянного ускорения в 2-D выход состояния постоянной скорости. Выход имеет ту же размерность и тип данных, что и вход x1
.
x = switchimm(modelType1,x1,modelType2)
x = 4x1 single column vector
1
2
4
5
Преобразуйте состояние из модели постоянного ускорения в модель постоянного поворота с помощью switchimm
функция. Задайте x2
как параметр входа.
Инициализация
Установите текущую модель равной 'constacc'
и модель назначения, для 'constturn'
. Переменная x1
определяет состояние в текущей модели. Размер и тип данных выхода определяется необязательным входом x2
.
modelType1 = 'constacc'; modelType2 = 'constturn'; x1 = [1;2;3;4;5;6]; x2 = [0;0;0;0;0;0;0];
Преобразование
The switchimm
функция преобразует 2-D вход состояния постоянного ускорения в 3-D выход модели постоянного поворота. Выходы имеют тот же размер и тип данных, что и входные x2
.
x = switchimm(modelType1,x1,modelType2,x2)
x = 7×1
1
2
4
5
0
0
0
modelType1
- Модель движения тока'constvel'
| 'constacc'
| 'constturn'
Модель токового движения, заданная как:
'constvel'
- Модель движения с постоянной скоростью.
'constacc'
- Модель движения с постоянным ускорением.
'constturn'
- Модель движения с постоянной скоростью поворота.
x1
- Ковариация состояния или состояния текущей моделиВектор состояния или ковариационная матрица состояния, соответствующая текущей модели в modelType1
, заданный как L -by-1 вектор действительных чисел или L -by L действительная матрица.
Размер вектора состояния должен соответствовать модели движения. Для примера, если modelType
является 'constvel'
вектор состояния должен иметь размер 2, 4 или 6. Точно так же, если modelType
является 'constacc'
вектор состояния должен иметь размер 3, 6 или 9. Если на modelType
является 'constturn'
вектор состояния должен иметь размер 5, 7, 10, 15, 14 или 21. Отношение между типом модели, размером состояния и размерностью пространства определяется следующей таблицей:
modelType1 | Поддерживаемая размерность пространства | Размер состояния |
---|---|---|
'constvel' | 1-D, 2-D, 3-D | 2 ✕ Пространственная размерность |
'constacc' | 1-D, 2-D, 3-D | 3 ✕ Пространственная размерность |
'constturn' | 2-D и 3-D | 5 для 2-D пространства и 7 для трехмерные пространства |
The 'constturn'
тип модели поддерживает только 2-D и трехмерные пространства, поскольку поворот не может быть выполнен в 1-D пространстве. Если размерность пространства вычисляется как 1-D, то есть размер состояния равен 5 или 7, функция обрабатывает выходную размерность как 2, и значения, соответствующие второму измерению, устанавливаются равными 0. Например, выполните следующее в MATLAB® командная строка:
switchimm('constvel',rand(2,1),'constturn')
Типы данных: single
| double
modelType2
- Модель движения, к которой x1
необходимо преобразовать'constvel'
| 'constacc'
| 'constturn'
Модель движения, к которой
необходимо преобразовать, задав как: x1
'constvel'
- Модель движения с постоянной скоростью.
'constacc'
- Модель движения с постоянным ускорением.
'constturn'
- Модель движения с постоянной скоростью поворота.
x2
- Задайте размер и тип выходного состояния или ковариации состоянияНеобязательный вход x2
имеет тот же размер и тип данных, что и вектор выходного состояния или ковариационная матрица состояния, x
. Переменная x2
не содержит фактическую информацию о состоянии выхода, но содержит только размер и тип данных выходов состояния. Для примера, когда x2
задано значение [0; 0; 0; 0; 0; 0; 0], функция определяет выходной вектор состояния как вектор размера 7 с типом данных double.
Размер вектора состояния должен соответствовать модели движения. Для примера, если modelType
является 'constvel'
вектор состояния должен иметь размер 2, 4 или 6. Точно так же, если modelType
является 'constacc'
вектор состояния должен иметь размер 3, 6 или 9. Отношение между типом модели, размером состояния и размерностью пространства определяется следующей таблицей:
modelType1 | Поддерживаемая размерность пространства | Размер состояния |
---|---|---|
'constvel' | 1-D, 2-D, 3-D | 2 ✕ Пространственная размерность |
'constacc' | 1-D, 2-D, 3-D | 3 ✕ Пространственная размерность |
'constturn' | 2-D и 3-D | 5 для 2-D пространства и 7 для трехмерные пространства |
Пример: [0; 0; 0; 0; 0; 0; 0]
Типы данных: single
| double
x
- Ковариация состояния или состояния, соответствующая modelType2
Вектор состояния или ковариационная матрица состояния, соответствующая модели движения, заданной в modelType2
.
Отношение между типом модели, размером состояния и размерностью пространства определяется следующей таблицей:
modelType1 | Поддерживаемая размерность пространства | Размер состояния |
---|---|---|
'constvel' | 1-D, 2-D, 3-D | 2 ✕ Пространственная размерность |
'constacc' | 1-D, 2-D, 3-D | 3 ✕ Пространственная размерность |
'constturn' | 2-D и 3-D | 5 для 2-D пространства и 7 для трехмерные пространства |
Если x2
не задан:
Заданные modelType1
и x1
функция определяет размерность входа состояния на основе зависимости, указанной в таблице. Для примера, если modelType1
является 'constvel'
, и x1
является вектором 4 на 1, размерность входного состояния задается 4/2, что равняется 2.
Если modelType1
является 'constacc'
и x1
является вектором 6 на 1, размерность входного состояния задается 6/3, что равняется 2.
В этом случае, когда x2
не задан, выходной x
имеет тот совпадающий тип данных что и x1
и размерность вычисляется с помощью modelType1
и x1
.
Если x2
задается:
Функция вычисляет выход пространство размерности используя modelType2
и x2
. Для примера, если modelType2
является 'constacc'
и x2
является вектором 6 на 1, размерность выходного состояния задается 6/3, что равняется 2.
Область выхода x
имеет совпадающий тип данных и размерность, что и x2
.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.