Hello, guys.
Congratulations on your work! I'm testing the available corridor dataset for the first time. I'm running two inertial leg-odometry inference methods based on the works of Hartley and Bloesch, respectively. Here are my results. Although the yaw angle is not observable, this rotation relative to the ground truth made me suspicious. I'm wondering whether you have observed similar results when using only inertial leg odometry. I'm fairly confident that my implementations are correct, as I have tested them on other datasets. As a last resort, I'm wondering whether the following way of parsing the dataset in MATLAB might be incorrect.
bag = rosbag("corridor.bag");
joint_state = select(bag,"Topic","/high_state");
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Export Proprioceptive data
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
filename = "legkilo_go1_corridor.csv";
if ~isfile(filename)
fid = fopen(filename, 'w');
end
txt = fileread(filename);
if isempty(txt)
msgs_joint = readMessages(joint_state);
n = size(msgs_joint , 1);
time = zeros(n, 1);
gyros = zeros(n, 3);
accels = zeros(n, 3);
q = zeros(n, 12);
dq = zeros(n, 12);
f = zeros(n, 12);
for i = 1:n
msg = msgs_joint{i};
time_joint = double(msg.Stamp.Sec) + double(msg.Stamp.Nsec) * 1e-9;
gyros(i, 1:3) = msg.Imu.Gyroscope';
accels(i, 1:3) = msg.Imu.Accelerometer';
time(i) = time_joint;
fi = [];
for j = 1:4
fi = [fi, [0,0,msg.FootForce(j)]];
end
f(i, 1:12) = fi;
qi = [msg.MotorState.Q];
q(i, 1:12) = qi(1:12)';
dqi = [msg.MotorState.Dq];
dq(i, 1:12) = dqi(1:12)';
end
writematrix([time, accels, gyros, q, dq, f], filename);
end
Hello, guys.
Congratulations on your work! I'm testing the available corridor dataset for the first time. I'm running two inertial leg-odometry inference methods based on the works of Hartley and Bloesch, respectively. Here are my results. Although the yaw angle is not observable, this rotation relative to the ground truth made me suspicious. I'm wondering whether you have observed similar results when using only inertial leg odometry. I'm fairly confident that my implementations are correct, as I have tested them on other datasets. As a last resort, I'm wondering whether the following way of parsing the dataset in MATLAB might be incorrect.
Thank you very much for your help!