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

memory management problem #69

Closed
lynnsky opened this issue Mar 30, 2016 · 7 comments
Closed

memory management problem #69

lynnsky opened this issue Mar 30, 2016 · 7 comments

Comments

@lynnsky
Copy link

lynnsky commented Mar 30, 2016

I use the commands on the Benchmark page.But the time used at each iteration is high,I think memory management is enabled.
1
3

@matlabbe
Copy link
Member

What kind of computer you have? It seems that just SURF extraction take around 600/700 ms, thus triggering memory management even with an empty WM. The benchmark was done on a MacbookPro 2010 with i7 (Arrandale). As you can see on Table III of the referred paper, recall performance will vary depending on the maximum Working Memory size that can be processed online. On that laptop with 700 ms time threshold, the maximum size of WM is 221 locations. On your side the maximum size of WM seems stuck around 20 locations and processing time is already over 1 sec.

@lynnsky
Copy link
Author

lynnsky commented Mar 30, 2016

Is it related to use debug mode rather than release mode?

@matlabbe
Copy link
Member

Try to build the code in Release mode instead of Debug, this generally increase a lot the performance, particularly on Windows.

@lynnsky
Copy link
Author

lynnsky commented Mar 31, 2016

Thanks for your advice.I build the code in Release mode.Then I got a results as following:
_be b xv6bp1faq2 d l f
--- getPrecisionRecall ---
Loading GroundTruth 'E:\vswork\rtabmaprelease\build\tools\ConsoleApp\UdeS_1Hz.png' ...

GT_total_positives =

    2628

False positive! id=3927 with old=1194 (p=0.13997)
False positive accepted! id=3927 with old=1194 (p=0.13997)
False positive! id=579 with old=309 (p=0.12179)
False positive accepted! id=579 with old=309 (p=0.12179)
False positive! id=1010 with old=310 (p=0.098755)
False positive! id=3928 with old=1184 (p=0.09676)
False positive! id=1009 with old=310 (p=0.095884)
False positive! id=1011 with old=310 (p=0.094518)
False positive! id=65 with old=4 (p=0.092973)
False positive! id=1012 with old=310 (p=0.092869)
False positive! id=2622 with old=90 (p=0.09209)
False positive! id=1008 with old=310 (p=0.090816)
False positive! id=3499 with old=743 (p=0.090761)
False positive! id=64 with old=4 (p=0.08766)
False positive! id=2778 with old=2726 (p=0.086346)
False positive! id=3498 with old=743 (p=0.083566)
False positive! id=85 with old=33 (p=0.083521)
False positive! id=511 with old=399 (p=0.082917)
False positive! id=1007 with old=310 (p=0.081828)
False positive! id=197 with old=15 (p=0.080056)
False positive! id=3895 with old=1178 (p=0.079923)
False positive! id=72 with old=21 (p=0.079816)
False positive! id=4193 with old=1509 (p=0.078492)
False positive! id=157 with old=42 (p=0.077738)
False positive! id=63 with old=4 (p=0.076487)
False positive! id=5354 with old=5192 (p=0.075888)
False positive! id=196 with old=15 (p=0.075511)
False positive! id=181 with old=139 (p=0.074966)
False positive! id=73 with old=24 (p=0.07481)
False positive! id=2777 with old=2726 (p=0.07398)
False positive! id=2623 with old=91 (p=0.073908)
False positive! id=3932 with old=1220 (p=0.073788)
False positive! id=3896 with old=1178 (p=0.073484)
False positive! id=4929 with old=2339 (p=0.072982)
False positive! id=79 with old=33 (p=0.072933)
False positive! id=183 with old=138 (p=0.072771)
False positive! id=201 with old=15 (p=0.072714)
False positive! id=3852 with old=1102 (p=0.072387)
False positive! id=3897 with old=1178 (p=0.072042)
False positive! id=3851 with old=1102 (p=0.071948)
False positive! id=3985 with old=1253 (p=0.07177)
False positive! id=3850 with old=1102 (p=0.071707)
False positive! id=172 with old=21 (p=0.071564)
False positive! id=186 with old=72 (p=0.071511)
False positive! id=3849 with old=1102 (p=0.07139)
False positive! id=202 with old=15 (p=0.071375)
False positive! id=184 with old=85 (p=0.071159)
False positive! id=3481 with old=691 (p=0.071008)
False positive! id=3848 with old=1102 (p=0.070946)
False positive! id=3847 with old=1102 (p=0.070281)
False positive! id=3497 with old=809 (p=0.070265)
False positive! id=185 with old=138 (p=0.070222)
False positive! id=178 with old=68 (p=0.070111)
Recall max (Precision=100%) = 45.0913% (p=0.14045), accepted=1185
Recall max accepted (Precision=100%) = 45.0913% (p=0.14045), accepted=1185
ignored = 74

@lynnsky
Copy link
Author

lynnsky commented Mar 31, 2016

Can I ask a question?what can I do with this file rtabmapconsole.db?

@matlabbe
Copy link
Member

Your results are now more similar to the paper. If you were only interested on statistics of loop closure detection, you can delete it. The database contains the graph of the created map (e.g., loop closure links). You can browse images and features saved in it with rtabmap-databaseViewer.exe.

@lynnsky
Copy link
Author

lynnsky commented Apr 1, 2016

It's cool.Thanks for your project.

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

No branches or pull requests

2 participants