MATLAB интерпретация Xcorr2 - PullRequest
       19

MATLAB интерпретация Xcorr2

0 голосов
/ 15 февраля 2011

У меня есть два вектора совпадающих длин.Это показания от двух разных датчиков (один от смартфона, а другой от wiimote) одного и того же движения руки.Я пытаюсь найти временное смещение между ними, чтобы синхронизировать показания для дальнейшей обработки.Показания, которые я получаю, имеют формат (значение времени (мс)) для ускорений в направлениях X, Y и Z.

Для синхронизации я построил функцию взаимной корреляции xcorr2() между двумя наборами,Я получаю тот же график (странный треугольный пик и прямую линию внизу) для ускорений в направлениях x, y и z (что, я думаю, хорошо), но я не знаю, как его интерпретировать.Что представляют собой оси на графике?

Может ли кто-нибудь объяснить мне, что означает xcorr2() в качественном смысле.Как определить смещение из функции корреляции (т. Е. На сколько секунд датчик 1 находится за датчиком 2)?

enter image description here

1 Ответ

0 голосов
/ 16 февраля 2011

Я согласен с комментарием, сделанным выше Predictor. Чтобы выровнять временные ряды друг с другом, я бы выбрал xcorr() без 2. Рассмотрим корреляцию только величин ускорения. Например:

a_mag_wii = sqrt(a_x_wii.^2 + a_y_wii.^2 + a_z_wii.^2);
a_mag_phone = sqrt(a_x_phone.^2 + a_y_phone.^2 + a_z_phone.^2);
res = xcorr(a_mag_wiimote, a_mag_smartphone);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...