Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is the ARAP Constraint in SpatialTracker disabled? #36

Open
Jafonso-sudo opened this issue Sep 26, 2024 · 1 comment
Open

Is the ARAP Constraint in SpatialTracker disabled? #36

Jafonso-sudo opened this issue Sep 26, 2024 · 1 comment

Comments

@Jafonso-sudo
Copy link

Hi SpatialTracker team,

First of all, thank you for the fantastic work on this project! I’m currently exploring SpatialTracker to track rigid objects and was particularly interested in applying the ARAP (As-Rigid-As-Possible) constraint. Specifically, I was trying to "hack" the ARAP constraint by forcing all queried points to have the same ARAP embedding.

However, in the process, I noticed that the ARAP constraint might not be active in the current main commit. I’m hoping to clarify whether my understanding is correct. Here's why I believe ARAP might be disabled in the model:

What I’ve Found:

  1. __init__ Function:

    • There’s an argument for enabling/disabling ARAP (self.args.if_ARAP), but the only place where this is referenced is in the forward_iteration function:
      image
    • Interestingly, the ARAP-related code in the forward_iteration function is commented out:
      image
  2. neural_arap Function:

    • When searching for references to the neural_arap function, it appears this function isn't called anywhere else in the code:
      image
    • I also tested commenting it out, and the model still runs without issues.
  3. self.embed_traj Initialization:

    • There’s a TODO in the __init__ function to optimize ARAP, which further suggests that ARAP might not be fully implemented:
      image
    • The variable self.embed_traj (initialized here) is only used within the neural_arap function, which as mentioned, isn’t called anywhere else, so this initialization can also be commented out without breaking the model.
  4. Traj_arap in forward:

    • In the forward function, the variable Traj_arap, returned by self.prepare_tracks, is declared but never used (as it appears greyed out in VSCode):
      image
    • Additionally, within self.prepare_tracks, the Traj_arap doesn’t seem to influence anything further in the code.

My Question:

I might be misunderstanding how ARAP is intended to be used here, but from what I can tell, the ARAP embeddings don’t seem to have an effect. Is it possible that ARAP isn’t fully implemented or has been temporarily disabled? Or could there be an updated commit that hasn't yet been pushed to this repository?

ARAP seems like a very exciting feature, and it's core to the application I'm trying to use SpatialTracker for, so I'd love to understand its current status.

Thanks so much for any clarification or insights you can provide! I really appreciate your time, and I’m eager to continue working with SpatialTracker.

Best regards,
João Mendonça

@Jafonso-sudo
Copy link
Author

Jafonso-sudo commented Sep 26, 2024

I think I now understand that the ARAP embedding is only used during training to come up with the ARAP loss, but not directly during inference as well. I'm still not sure due to the commented out code saying: "refine the track with arap".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant