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

Feature/lifelong compression #2

Open
wants to merge 83 commits into
base: foxy-devel
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
e1cc2ac
[DOC]: Initial commit and loop for grid calculation
kmilo7204 Oct 22, 2021
f986ba7
[WIP]: Initial test for gris position mapping
kmilo7204 Oct 25, 2021
47b6098
[WIP]: Adding new functions for ray tracing, and probability calculation
kmilo7204 Oct 26, 2021
95de0b4
[WIP]: Adding tools for measuring distances to cells
kmilo7204 Oct 28, 2021
7aa82b9
[WIP]: Updating function to calculate intersection of beams and cells
kmilo7204 Oct 29, 2021
80bc5eb
[WIP]: Cleaning comments
kmilo7204 Nov 2, 2021
d07ddeb
[FIX]: Adding last cell to the calculation so we get the whole distance
kmilo7204 Nov 2, 2021
579c562
[WIP]: Distance to each cell is being calculated. This is not working…
kmilo7204 Nov 2, 2021
2fa788a
[ADD]: Probabilities calculation
kmilo7204 Nov 3, 2021
d91e4c7
[FIX]: RBT transformation for getting the final point
kmilo7204 Nov 4, 2021
c3f4155
[FEAT]: Finally getting the cutting points to each individual cell
kmilo7204 Nov 5, 2021
33bc43c
[FIX]: Probability function update
kmilo7204 Nov 5, 2021
a012859
[WIP]: Probability calculation is reliable
kmilo7204 Nov 8, 2021
a2c83e0
[WIP]: Adding inverseModel function to detect cell occupancy, adding …
kmilo7204 Nov 10, 2021
d6f6db1
[WIP]: Logs calculation
kmilo7204 Nov 10, 2021
f294d0d
[WIP]: Getting probability from log-odds
kmilo7204 Nov 10, 2021
c08fd69
[WIP]: Adding map entropy calculation
kmilo7204 Nov 11, 2021
e66435c
[ADD]: Adding algorithm 1 base, it is in adaptation process
kmilo7204 Nov 22, 2021
eb2c754
[ADD]: Algorithm 1 MVP (Currently working), but testing is required
kmilo7204 Nov 23, 2021
6cab676
[WIP]: Algorithm 1 completed. Adding now new poses and scans
kmilo7204 Nov 29, 2021
285d07e
[WIP]: Adding conditions for some cells. New intersections are handle…
kmilo7204 Nov 29, 2021
ec51e0b
[FIX]: Handling cells seen by Bresenham but without intersections
kmilo7204 Nov 30, 2021
116abf7
[WIP]: Final adjustments
kmilo7204 Nov 30, 2021
5f88cd6
[ADD]: Adding measurement outcome entropy (3.12) calculation
kmilo7204 Dec 7, 2021
b507842
[ADD]: Map mutual information calculation and code structure, it is w…
kmilo7204 Dec 9, 2021
384a0b5
[WIP]: Adding new robot pose for mutual information verification
kmilo7204 Dec 10, 2021
c825cc6
[WIP]> Notations and calculations improvements
kmilo7204 Dec 10, 2021
ea9ef27
[ADD]: New theoretical information object
kmilo7204 Dec 14, 2021
488868b
[WIP]: Completing theoretical information object
kmilo7204 Dec 15, 2021
64b8756
[WIP]: Completing theoretical information object, removing old code a…
kmilo7204 Dec 15, 2021
86910b8
[RMV]: Removing unused dependencies
kmilo7204 Dec 15, 2021
36f2fa9
[FIX]: Floating point absolute value changed in cell limits
kmilo7204 Dec 16, 2021
7980579
[WIP]: Changes in measurement outcomes computations and code structure
kmilo7204 Dec 17, 2021
89664a2
[WIP]: Functions reordering to improve readability
kmilo7204 Dec 20, 2021
dc970e0
[WIP]: Adding new functions for readability
kmilo7204 Dec 21, 2021
e2a13ef
[WIP]: Changes in algorithm 1
kmilo7204 Dec 22, 2021
43ce3bf
[WIP]: Function return values modifications to match Karto
kmilo7204 Dec 23, 2021
71f5930
[WIP]: Integration of new elements
kmilo7204 Dec 27, 2021
ed0f586
[WIP]: Replacing data types from double to kt_double
kmilo7204 Dec 28, 2021
542b239
[WIP]: Functions modification. At this point we now have an utils fil…
kmilo7204 Dec 28, 2021
340f6d5
[ADD]: Adding utils namespace
kmilo7204 Dec 28, 2021
e5ac4e5
[INT]: Utils integration
kmilo7204 Dec 29, 2021
6869573
[WIP]: Changing main function arguments
kmilo7204 Dec 29, 2021
b2cac9f
[WIP]: More modification to make the code clear
kmilo7204 Dec 30, 2021
8ba213b
[ADD]: Eigen addition and matrix replacement
kmilo7204 Dec 31, 2021
88d3561
[DOC]: Adding code documentation
kmilo7204 Jan 4, 2022
93a1809
[ADD]: Adding basic test logic
kmilo7204 Jan 7, 2022
899607f
[ADD]: Adding tests for Information Estimates and Utils
kmilo7204 Jan 8, 2022
1b432f3
[WIP]: Adding more test cases
kmilo7204 Jan 10, 2022
b5752c7
[WIP]: Tests updating
kmilo7204 Jan 12, 2022
8148fed
[WIP]: Renaming functions, updating tests and replacing some data str…
kmilo7204 Jan 13, 2022
296d191
[WIP]: Updating mutual information calculation
kmilo7204 Jan 19, 2022
c2e7c5c
[WIP]: Removing unused code
kmilo7204 Jan 20, 2022
8752e3e
[ADD]: Function for mutual information calculation
kmilo7204 Jan 23, 2022
969a3a7
[WIP]: Dynamic grid resizing
kmilo7204 Feb 10, 2022
a39954d
[RMV]: Unused function and adding transformations
kmilo7204 Feb 10, 2022
b799cb8
[WIP]: Returning values modification
kmilo7204 Feb 21, 2022
2825ef9
[WIP]: Replacing vectors for karto wrappers
kmilo7204 Feb 21, 2022
83203d9
[WIP]: Comparing probabilities from the same scans
kmilo7204 Feb 21, 2022
c87c408
[WIP]: Integration to lifelong mapping loop
kmilo7204 Mar 6, 2022
b3baea5
[ADD]: New logic for Algrotihm 1 implementation
kmilo7204 Apr 2, 2022
e40b217
[RMV]: Removing basic functions
kmilo7204 Apr 2, 2022
f0654c0
[ADD]: Adding base logic for new loop calculation
kmilo7204 Jun 23, 2022
d40c125
[WIP]: First complete pass on the new function
kmilo7204 Aug 2, 2022
8c206a8
[ADD]: Adding cell angle functionality. Still under testing
kmilo7204 Sep 9, 2022
75d20f6
[WIP]: Calculations up to entropy are now correct
kmilo7204 Oct 11, 2022
e2a99fc
Fully functional loop
kmilo7204 Oct 18, 2022
91bd220
Complete main function update
kmilo7204 Oct 21, 2022
bf2ede3
Checkpoint for code refactoring
kmilo7204 Oct 24, 2022
60930e3
Add new function for separaitng the jobs
kmilo7204 Oct 26, 2022
c7d6116
Code refactoring phase 1
kmilo7204 Oct 31, 2022
156be31
Remove undesired folders
kmilo7204 Oct 31, 2022
002345b
Updating test for mutual information
kmilo7204 Nov 4, 2022
656206c
[ADD]: Test cases
kmilo7204 Nov 8, 2022
97b45af
Improving redability, addition of segment and box structures, adding …
kmilo7204 Nov 14, 2022
85674bf
[RMV]: Revert test changes in the main file
kmilo7204 Dec 10, 2022
be2197a
[UPDT]: Update C++ STD version to use optional function
kmilo7204 Dec 10, 2022
be745b7
[WIP]: Structures modification to simplify readability
kmilo7204 Dec 10, 2022
89a8a18
[RMV]: Reverting changes in main file
kmilo7204 Dec 10, 2022
5ef8011
[WIP]: Remove not necessary PI addition to cell angle
kmilo7204 Dec 10, 2022
582eda9
[ADD]: Addition of new map dimensions structures to improve readability
kmilo7204 Dec 12, 2022
54ecdc1
[WIP]: Typedef for probaility map
kmilo7204 Dec 12, 2022
82a2141
[WIP]: Updating exponential distribution rate and deleting unused at…
kmilo7204 Dec 13, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions include/slam_toolbox/experimental/slam_toolbox_lifelong.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,17 @@ class LifelongSlamToolbox : public SlamToolbox
void updateScoresSlamGraph(const double & score, Vertex<LocalizedRangeScan> * vertex);
void checkIsNotNormalized(const double & value);

/*****************************************************************************/
/*******************************Implementation********************************/
std::vector<int> getGridPosition(float x, float y, float resolution);
std::vector<float> getLaserHit(std::vector<float> const& robot_pose, float distance, float angle);
std::pair<std::vector<int>, std::vector<int>> Bresenham(int x_1, int y_1, int x_2, int y_2);
int getSign(int n_1, int n_2);
float calculateProbability(float range);
float calculateDistance(float x_1, float y_1, float x_2, float y_2);
void scannerTest();
/*****************************************************************************/

bool use_tree_;
double iou_thresh_;
double removal_score_;
Expand Down
Loading