Added second stage of WIP patch. Changes: - Switched H, F refining to normalized space. ...
12 years, 1 month ago
(2013-02-27 09:04:00 UTC)
#3
Added second stage of WIP patch.
Changes:
- Switched H, F refining to normalized space. Pixel space gave issues with F.
Didn't have time to fully solve this, but wanted to move on, so TEMPORARY
switched back to refining in normalzied space
- Added base skeleton of reconstruction variance, currently done:
* Camera matricies estimations
* Points reconstruction
* Bundling
* Jacobian computation
The part with Jacobian is REALLY temporary, just was studying how evaluate API
works. And this is actually incorrect to do (J^T*J)+ here, we need to estimate
Sigma_P. However, pseudoInverse seems to be working, so if we'll need it here it
is :)
What to do:
- Estimate covariance matrix
- Extract Sigma_P from covariance matrix and J
- ...
Changes: - Made it more generic way of getting minimizer's information from BA (like number ...
12 years, 1 month ago
(2013-03-06 18:30:25 UTC)
#7
Changes:
- Made it more generic way of getting minimizer's information from BA (like
number of cameras, points, jacobians and so)
- Moved Sigma_P computation to keyframe_selection
- In fact, we need to use num_points*3 x num_poitns*3 right bottom corner of
J^T*J
- Also inversion of this matrix is not needed. I've wrote small unittest for
libmv which demonstrates this.
Basically, for simple cases this criteria seems to be working. However, there're
some fuzziness:
- Error expecation is REALLY high. Like, error expectation of
573570874672.050293 does not look healthy.
- Error expectation could be negative..
- Currently using dense matrix for jacobian, we'd better switch to sparse before
final commit.
On 2013/03/06 18:30:25, sergey.vfx wrote: > Changes: > - Made it more generic way of ...
12 years, 1 month ago
(2013-03-06 18:44:00 UTC)
#8
On 2013/03/06 18:30:25, sergey.vfx wrote:
> Changes:
> - Made it more generic way of getting minimizer's information from BA (like
> number of cameras, points, jacobians and so)
> - Moved Sigma_P computation to keyframe_selection
> - In fact, we need to use num_points*3 x num_poitns*3 right bottom corner of
> J^T*J
> - Also inversion of this matrix is not needed. I've wrote small unittest for
> libmv which demonstrates this.
>
> Basically, for simple cases this criteria seems to be working. However,
there're
> some fuzziness:
> - Error expecation is REALLY high. Like, error expectation of
> 573570874672.050293 does not look healthy.
> - Error expectation could be negative..
> - Currently using dense matrix for jacobian, we'd better switch to sparse
before
> final commit.
One more thing to be mentioned. I've currently switched from ITERATIVE_SCHUR to
DENSE_SCHUR because iterative one seemed to behaving fuzzy. But that could have
been a result of experiments while debugging isApprox crash..
Comparing to previous patchset: - Better epsilon handing in pseudoInverse function. Now it uses the ...
11 years, 12 months ago
(2013-04-23 20:38:30 UTC)
#11
Comparing to previous patchset:
- Better epsilon handing in pseudoInverse function. Now it uses the same
tolerance as NumPy does.
- Made it better covariance matrix estimation, using generalized inverse with N
eigen values zeroed (N=7 in our case).
- Made it return single keyframe pair, which is detecting based on
reconstruction estimation. Previous code to do full reconstruction of 2 frames
didn't work well. Also, apparently average reprojection error could be the same
for bad and good keyframe pair.
- Made it so EuclideanIntersect returns false in case point is behind the
camera.
Seems to behave better than bare GRIC, but still need to do:
- Make solution "permanent" size -- that thing to eliminate scale indeterminacy.
- Use sparse matrix for bundler evaluation and pseudo-inverse. Shall give some
boost.
I'm actually pretty much close to commit this stuff to tomato branch.
Issue 7306106: Recontruction variance on top of GRIC
(Closed)
Created 12 years, 2 months ago by sergey.vfx
Modified 11 years, 6 months ago
Reviewers: mierle
Base URL: https://svn.blender.org/svnroot/bf-blender/trunk/blender/
Comments: 4