2011-01-21 5 views
3

두 개의 서로 다른 센서의 데이터를 두 개의 별도 벡터에로드했습니다. 이 센서는 동일한 가속도를 측정하므로 패턴이 동일합니다. 그러나 측정 소음 때문에 두 값 모두 값이 약간 다를 수 있습니다. 또한 다른 샘플링 주파수와 지연 등으로 인해 하나의 벡터의 길이는 다른 벡터의 길이보다 커집니다.MATLAB에서 길이가 다른 두 벡터 벡터 맞추기

내 질문은, 어떻게이 두 벡터를 동일시하는 것입니까? 즉, vectorB의 특정 읽기에 해당하는 vectorA의 읽기를 찾아야합니다. 나는 findpeaks() 함수를 사용하여 극한치를 비교하려고 시도했으나 정확히 어떻게 움직일 지 확신하지 못합니다.

감사합니다.

+6

일부 설명은 다른 벡터와 동일한 샘플링 빈도로 벡터 중 하나를 보간하고 동일한 길이로 자르고 교차 상관 함수의 피크를 찾아 상대를 얻습니다. 오프셋. 이 오프셋을 원래의 샘플링 주파수로 다시 조정하십시오. –

+0

답장을 보내 주셔서 감사합니다. 그래도 질문이 있는데, 센서의 샘플링 빈도를 모른다면 어떻게해야합니까? 나는 WM +와 스마트 폰의 나침반을 사용하고 있으며 샘플링 빈도를 정확하게 측정 할 수는 없습니다. 나는 그들이 특정한 시간에 표본의 수 때문에 다른 주파수를 가지고 있다는 것을 알고 있습니다. 또한 평균 샘플링 기간 분석을 수행하면 네트워크/프로세스 지연 등으로 인한 오류를 설명 할 수 없습니다. 원본 샘플링 빈도를 제공하지 않고 다른 벡터에 맞게 벡터를 확장 할 수있는 MATLAB 함수가 있습니까? – Imelza

+0

은 일정한 주파수의 각 센서 샘플링입니까? – Jonas

답변

3

원본 샘플 속도없이 "일치"할 수있는 방법이 없습니다. 이것은 실제로 데이터가 시간과 크기이기 때문입니다. 시간을 남겨두면 샘플이 언제 생겼는지 알 수 없으므로 다른 샘플과 다른지 알 수 없습니다 (다른 시간에 발생했을 수 있음).

데이터가 상대적으로 가까운 경우 샘플 주파수에서 상대적으로 다른 값을 추정하여이를 재 샘플링 할 수 있지만 샘플링의 정확도에 따라 잘 작동하지 않을 수 있습니다.

샘플 속도가 비슷하고 거의 일정하다고 가정 할 수 있습니까? R 이상 -

은 무엇 당신이 할 찾고있는 기능을

INT (g (t) ||^2 || f를 (r에 *의 t))를 최소화한다.

기본적으로 f의 시간 축을 g의 "일치"까지 확장합니다. 같은 비율이 일정하지 않다면 r은 t의 함수입니다. 이것은 min이 고유하지 않기 쉽기 때문에 문제를 다루기 어렵게 만든다.

예를 들어, 다양한 r에 대한 해당 식을 계산하고 r 범위에 대한 최소값을 찾으려고 할 수 있습니다. 표현식이 어느 범위 내에 있지 않으면 "일치"로 거부 할 수 있습니다.

칼만 필터를 사용하는 등 고급 기능을 사용하면 결과를 더욱 좁힐 수 있습니다.

데이터가 얼마나 정확하고 결과를 원하는지 정확히 의존 할 것입니다 (누군가를 죽이는 거짓 긍정입니까?).

같은 데이터라고 가정하기 때문에 시작점과 시작점이 같으므로 위의 최소화 문제에서 고유 한 r을 얻을 수 있습니다. 샘플 속도가 거의 일정하다고 가정해야합니다 (또는 최소화 문제를 적용하십시오).

아마도 더 좋은 방법은 대신 샘플링 속도/시간대를 얻는 것입니다. (그러면 문제는 거의 사소해진다).

3

일부 데이터를 수집 할 수 있다고 가정하면 두 센서의 샘플링 주파수를 보정 할 수 있습니다. 두 개의 가속도계의 경우, 전화기를 양동이의 안쪽 벽에 테이핑 한 다음 바닥을 따라 굴리는 것과 같은 이상한 작업을 의미 할 수 있습니다. 결과 데이터를 보면 두 센서의 상관 신호가 있어야합니다. 두 세트의 센서 데이터 모두 FFT를 사용하면 샘플링 속도가 어떻게 일치하는지 확인할 수 있습니다. 전화를 베개 나 접힌 담요 위에 떨어 뜨리는 것과 같이 급격한 가속 이벤트가 발생하면 기간의 오프셋을 계산할 수 있습니다.

두 센서의 샘플링 주파수가 보정되면 두 센서 사이의 샘플링 주파수를 일치시켜 벡터를 일치시킬 수 있습니다. 유감스럽게도, 센서가 서로에 대해 임의의 방식으로 초기화되는 경우에는 도움이되지 않습니다. 독립적 인 주변 장치를 갖춘 멀티 태스킹 OS에서이 접근법은 두 개의 흔적 사이에 오프셋을 얻는 데 그리 유익하지 않을 수 있습니다. 그러나 적어도 각 센서의 샘플링 속도를 아는 것은 도움이됩니다. 신호가 동일한 비율로 리샘플링되면 컨볼 루션을 취하면 (위에서 설명한 것처럼) 수집 된 데이터에서 실시간으로 오프셋을 확인할 수 있습니다.