Xinyu-Yi/PIP

Issue about the joint velocity

daip13 opened this issue · 4 comments

Hi, thanks a lot for your great job on sparse IMU-based human tracking.
I'm quite interested in your physics-aware motion optimizer. And I tried to use this part in the following way:

  1. I replace the model inferred joint velocity with GT data (First, get the GT joint position in the global space; Second, use finite difference to compute the velocity; Third, transform the velocity to the root space.)
  2. All the other inputs (pose, contact, acc) are the same.

However, I find that the tracking results after optimization become much worse than using the joint velocity inferred by model. It should be better in theory, right? I am quite curious about the root case of this issue. Could you plz help to take a look?

Hope to hear your response.
Thanks.

Hi. You should get better results if you replace the joint velocity estimation with the ground truth values. Maybe you can check the estimated velocity v.s. the ground truth, e.g., are they in the same scale?

TowoC commented

Hi, thanks a lot for your great job on sparse IMU-based human tracking. I'm quite interested in your physics-aware motion optimizer. And I tried to use this part in the following way:

  1. I replace the model inferred joint velocity with GT data (First, get the GT joint position in the global space; Second, use finite difference to compute the velocity; Third, transform the velocity to the root space.)
  2. All the other inputs (pose, contact, acc) are the same.

However, I find that the tracking results after optimization become much worse than using the joint velocity inferred by model. It should be better in theory, right? I am quite curious about the root case of this issue. Could you plz help to take a look?

Hope to hear your response. Thanks.

@daip13 Hello, I have met the same problem. Do you solve this problem? Thanks!

Hi, thanks a lot for your great job on sparse IMU-based human tracking. I'm quite interested in your physics-aware motion optimizer. And I tried to use this part in the following way:

  1. I replace the model inferred joint velocity with GT data (First, get the GT joint position in the global space; Second, use finite difference to compute the velocity; Third, transform the velocity to the root space.)
  2. All the other inputs (pose, contact, acc) are the same.

However, I find that the tracking results after optimization become much worse than using the joint velocity inferred by model. It should be better in theory, right? I am quite curious about the root case of this issue. Could you plz help to take a look?
Hope to hear your response. Thanks.

@daip13 Hello, I have met the same problem. Do you solve this problem? Thanks!

Hi, I think I have solved this problem. Actually, I found the estimated velocity is not very accurate. And it seems like the accuracy of the foot-contact-floor has a much bigger impact on the final results. After I improve the performance of the foot-contact-floor, the final results look reasonable now.

TowoC commented

Hi, thanks a lot for your great job on sparse IMU-based human tracking. I'm quite interested in your physics-aware motion optimizer. And I tried to use this part in the following way:

  1. I replace the model inferred joint velocity with GT data (First, get the GT joint position in the global space; Second, use finite difference to compute the velocity; Third, transform the velocity to the root space.)
  2. All the other inputs (pose, contact, acc) are the same.

However, I find that the tracking results after optimization become much worse than using the joint velocity inferred by model. It should be better in theory, right? I am quite curious about the root case of this issue. Could you plz help to take a look?
Hope to hear your response. Thanks.

@daip13 Hello, I have met the same problem. Do you solve this problem? Thanks!

Hi, I think I have solved this problem. Actually, I found the estimated velocity is not very accurate. And it seems like the accuracy of the foot-contact-floor has a much bigger impact on the final results. After I improve the performance of the foot-contact-floor, the final results look reasonable now.

Thanks for your reply.

Another small question about your GT joint velocity calculation
Do you divide the delta t when calculating the GT velocity?

And, are you trying to implement the training part?
In my situation, the accumulated error is bigger than the paper result.
I think that may comes from the problem of estimating linear velocity.

Maybe we can talk about the training code implementating more?

Really thanks for your response.