Skip to content

Conversation

@AyushP123
Copy link
Collaborator

No description provided.

@AyushP123 AyushP123 requested a review from as821 December 4, 2022 01:51
as821 added a commit that referenced this pull request Dec 4, 2022
… support intermediate keyframe marginalization
as821 added a commit that referenced this pull request Dec 4, 2022
as821 added a commit that referenced this pull request Dec 8, 2022
* use custom D3VO edge (copy of EdgeProjectPSI2UV)

* bring over simple optimizer changes from optimizer branch

* move d3vo class into separate file, silence verbose warnings

* custom d3vo point depth vertex

* move d3vo python binding into separate file

* cache

* fix d3vo types, python bindings functional now

* placeholder frame type

* Frame type now has pixel intensities, incorporate pybind numpy types

* fix frame shape

* edge error calculation works! pixel intensity in C++ matches python values so indexing is working

* start on jacobian for edge, calculated image gradient

* jacobians propagate to the correct objects

* depth jacobian

* pose jacobians calculated, not clear if poses being updated correctly though

* clean up jacobian calculation

* clean up more

* minor clean up of optimizer

* make feature extractor work again, optimization disabled

* fix issues with frame/image dimensions and associated problems with invalid reprojections and feature matching problems

* switch to exponential map (SE3Quat) rather than Isometry3D for frame pose vertex, better theoretical support and more stable optimization

* cache mid-debugging attempt to incorporate 8-pixel pattern. Python component is correct, but C++ side fails silently during first optimizer() call

* only use 8d in error calculation, 1d for estimate and jacobian

* use depth initializations, but still 1d jacobian

* remove sparse optimizer debug output

* use 8-dim jacobian, add global pose evaluation

* cache changes

* remove global evaluation, have been evaluating global this whole time

* revert to single point version, commit 8290d55

* fix read/write error

* switching host adjoint to identity helps drastically

* uncertainty weighting

* basic, inefficient keyframe processing + marginalization

* kitti evaluation scripts from Huangying-Zhan/kitti-odom-eval

* fix evaluation code, add trajectory plotting from third party library

* evaluation

* recompute poses for evaluation every iteration. allows bundle adjustment changes to propagate through

* use global poses for optimization and evaluation, falls apart around frame 300

* global pose evaluation of relative pose d3vo

* clean up evaluation code, recompute global pose before every evaluation

* oops, remove debug

* incorporate keyframe selection from PR #7, backend needs some work to support intermediate keyframe marginalization

* fix pose/intrinsic dimension mix up

* bring over changes from PR #7

* compute global poses for keyframe selection, fails after a few frames due to marginalization limitations of backend

* remove points from marginalized frames

* clean up, documentation for python code

* comments for C++ code

* clean up
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

Successfully merging this pull request may close these issues.

1 participant