ut-amrl / ObVi-SLAM

Long-Term Object Visual SLAM
BSD 3-Clause "New" or "Revised" License
105 stars 10 forks source link

question about symforce #72

Open empty-spacebar opened 4 months ago

empty-spacebar commented 4 months ago

Hi,

i noticed that ObVi-SLAM generates a c++ function named ReprojectionresidualWithJacobians012() using symforce but doesn't use it, i wonder why because recently i was accessing if symforce a suitable way for accelerating my code. Doesn't it run faster?

Thanks.

mandi1267 commented 3 months ago

Hi, thanks for checking out my work! Using the symforce Jacobian caused problems with long-term map extraction and Jacobian matrix rank deficiencies (which relies on the symforce generated Jacobian function). At the time of development, I decided that the observed speed-up did not justify additional time spent debugging these problems, so I switched back to autodifferentiatpion for Jacobian computation. I don't specifically recall problems with the online execution (though that was less my focus given the other problems observed), so the issues I found may not be problems for you. If I return to this investigation, I'll provide additional details / updates here.

empty-spacebar commented 3 months ago

Can you explain more about long-term map extraction and Jacobian matrix rank deficiencies? I haven't found the problems you encountered.

Recently I was debuging with Aaron the mantainer of symforce, maybe I could talk with him about it.