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

OctreeManager and vector operations #17

Merged
merged 55 commits into from
Nov 16, 2023

Conversation

true-real-michael
Copy link
Collaborator

@true-real-michael true-real-michael commented Nov 9, 2023

This PR removes MultiPoseOctree and introduces OctreeManager, which replaces its functionality.
This PR introduces optimisations of point distribution on the stage of distribution into Grid voxels and on the stage of moving points from one OctreeNode the child OctreeNodes

The class diagram is here
and PNG is inserted below
class diagram

Impact of these optimisatons is displayed below (left is the solution in main, right is the solution in this branch)

First point clouds insertion stage
min  | 2.285s  | 1.278s
max  | 2.401s  | 1.296s
mean | 2.326s  | 1.286s
std  | 0.039s  | 0.006s

Subdividers stage
min  | 6.836s  | 5.728s
max  | 8.561s  | 5.84s 
mean | 7.094s  | 5.765s
std  | 0.495s  | 0.036s

Distribution stage
min  | 17.124s | 2.509s
max  | 17.605s | 2.604s
mean | 17.334s | 2.548s
std  | 0.15s   | 0.026s

Segmenters stage
min  | 10.126s | 6.388s
max  | 10.976s | 7.046s
mean | 10.27s  | 6.605s
std  | 0.243s  | 0.274s

Backend stage
min  | 0.08s   | 0.01s 
max  | 0.126s  | 0.012s
mean | 0.088s  | 0.011s
std  | 0.014s  | 0.001s

@true-real-michael true-real-michael changed the title MultiPoseManager OctreeManager and vector opreations Nov 10, 2023
@true-real-michael true-real-michael requested review from pmokeev and removed request for pmokeev November 12, 2023 12:29
octreelib/grid/grid.py Outdated Show resolved Hide resolved
octreelib/grid/grid.py Outdated Show resolved Hide resolved
octreelib/grid/grid.py Outdated Show resolved Hide resolved
octreelib/grid/grid_base.py Outdated Show resolved Hide resolved
octreelib/octree/octree.py Show resolved Hide resolved
test/grid/test_grid.py Outdated Show resolved Hide resolved
test/grid/test_grid.py Outdated Show resolved Hide resolved
@true-real-michael true-real-michael merged commit 63c8a0e into main Nov 16, 2023
3 checks passed
@true-real-michael true-real-michael deleted the octree-manager-and-vector-operations branch November 21, 2023 16:13
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.

2 participants