Comments (11)
Yes, PBA does not use inverse compositional algorithm.
from dsol.
thanks!
CalcJacGeo func in adjust.cpp
p1' = R10 * n0 + t10 * q0; R10 = R^w_1.inv * R^w_0; t10 = R^w_1.inv * (t^w_0 - t^w_1)
when i calculate the jacobian of warp function to T^w_1 and T^w_0, the jacobian to R^w_1 and R^w_0 is same as the code;
but diff when i calculate dp1_dt1 and dp1_dt0
i thought that dp1_dt1 = partial t10*q0 / partial t^w_1 = -R^w_1.inv q0
dp1_dt0 = R^w_1.inv q0
but in code, dp1_dt1 = -q0 identity
dp1_dt0 = R10q0
from dsol.
The function is not computing jacobian wrt t^w_1, but wrt delta t^w_1, which is the error state.
from dsol.
i don't understand this error state, does it means the error function is: I1(W(x,T^w_1,T^w_0,dT^w_1,dT^w_0,q0))-I0(x)?
so the T10 = (T^w_1* dT^w_1).inv * (T^w_0*dT^w_0)
then i need to compute jacobian of warp to dT?
from dsol.
Yes
from dsol.
Thank u so much! i got the same as code.
from dsol.
But still i have a question : why not compute jacobian to T^w_1 T^w_0 directly, instead compute jacobian to delta
from dsol.
Because that's how nonlinear least squares works: you linearize at some nominal state x_0 using first order Taylor approximation, f(x) = f(x_0) + f'(x_0) dx. Therefore, the quantity you solve for is dx, which is the error/delta state.
from dsol.
Oh, i see. now i understand. thanks a lot! By the way, the code is beautiful!
from dsol.
Thanks for your open source, why not use inverse compositional algorithm in PBA? It's a lot fast.
from dsol.
Because inverse depth is a variable to be optimized. If I use inverse compositional, then the jacobian wrt inverse depth is zero.
from dsol.
Related Issues (19)
- Advanced feature HOT 4
- fmt format error HOT 2
- cannot run dsol HOT 1
- photometric error jacobian w.r.t host frame idepth HOT 2
- affine-related poor running result HOT 9
- How to decrease the cache occupation?
- Catkin_make fail with absl and hash problem HOT 5
- Does it support monocular?
- faster using quoternion?
- About the selection of weighting function
- About calibration file for example data HOT 2
- compile error HOT 1
- Why not turn on marginalization?
- Monocular version HOT 1
- DSOL running slower than expected HOT 3
- Keyframe selection HOT 2
- catkin_make fail HOT 3
- which opencv version do you use? HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dsol.