MATLAB - создать массив данных кватернионов - PullRequest
0 голосов
/ 21 июня 2019

Я хочу создать массив с набором данных кватернионов, и я хочу заполнить массив внутри цикла. Проблема в том, что я не могу поместить данные кватернионов, используя обычный способ для заполнения массива. Как я могу сделать это правильно?

это то, что я пробовал

for ii=1:size(acc,1)
    %  quaternion data
    qahrs = ifilt(acc(ii,:), gyro(ii,:), mag(ii,:));
    %     supposed to be an array of quaternions
    orientation(ii) = qahrs;
end

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

Я решил это, ребята! Вот решение

orientation = zeros('quaternion');
for ii=1:size(accCopy,1)
    qahrs = ifilt(accCopy(ii,:), gyro(ii,:), mag(ii,:));
    orientation(ii,1) = qahrs;
end
0 голосов
/ 21 июня 2019

Это зависит от размеров ваших кватернионных данных. Если один кватернион равен (4x1), то:

orientation = zeros(4,n)
for ii=1:size(acc,1)
    %  quaternion data
    qahrs = ifilt(acc(ii,:), gyro(ii,:), mag(ii,:));
    %     supposed to be an array of quaternions
    orientation(:,ii) = qahrs;
end

и если это (1x4)

orientation = zeros(n,4)
for ii=1:size(acc,1)
    %  quaternion data
    qahrs = ifilt(acc(ii,:), gyro(ii,:), mag(ii,:));
    %     supposed to be an array of quaternions
    orientation(ii,:) = qahrs;
end

Я предположил, что n - это число кватернионов.

...