Перейти к содержимому
Compvision.ru

Recommended Posts

Добрый день! У меня тут появился вопрос.. в примерах фильтра Калмана обычно рассматривают предсказание и или (сглаживание) 2d точек, каким образом изменится матрица перехода если у нас точки 3-хмерные

....
KalmanFilter KF(6,3,0);//x,y,z,dx,dy,dz
KF.transitionMatrix = *(Mat_<float>(6, 6) << 1,0,1,0,1,0   0,1,0,1,0,1,  0,0,1,0,1,0,  0,0,0,1,0,1, 0,0,0,0,1,0, 0,0,0,0,0,1);
....

матрица KF.transitionMatrix должна иметь такой блочный вид или она должна быть просто единичной?..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Эта матрица зависит от модели движения и может быть, в принципе, произвольной.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Эта матрица зависит от модели движения и может быть, в принципе, произвольной.

а как её задавать тогда?... для 2-х мерной точки вроде бы ничего сложного не было просто писал

...
KalmanFilter KF(4,2,0);//x,y,dx,dy
KF.transitionMatrix = *(Mat_<float>(4, 4) << 1,0,1,0,   0,1,0,1,  0,0,1,0,  0,0,0,1);
...

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну, для Вашего фрагмента все просто, хотя как Nuzhny сказал, здесь может быть все что угодно, зависит от модели динамики объекта.

Ваша матрица не что иное как:

x=1*x+0*y+1*dx+0*dy

y=0*x+1*y+0*dx+1*dy

dx=0*x+0*y+1*dx+0*dy

dy=0*x+0*y+0*dx+1*dy

Что вполне соответствует линеаризованной модели движения с управлением скоростью, и дискретой времени dt = 1.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Когда речь заходит о Калмановском сглаживании в 3D пространстве применительно к компьютерному зрению, нужно не забывать, что операция триангуляции в 3-х мерном Евклидовом пространстве имеет анизатропную ошибку, соответственно для того, чтобы применить opencv'шный Линейный Калман Фильтр, придется линеаризовать модель, или, в случае когда модель линеаризовать не представляется возможным, переходить на использование чего-то типа Unscented Kalman Filter.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×