Comments (3)
Unless there is a memory leak, the memory should be reclaimed when starting a new scan. However if on iOS it is like on unix system, the RAM may appear not released though it is. For example, if the second scan is smaller than the first one, the memory usage may remain at 1000 after mapping.
from rtabmap.
Thank You for the reply.
I tried to run the application in Xcode Instruments, and when I pop the scan view controller from the navigation stack I have 9 memory leaks. This is the leaks output, don't know if can be of any help
Leaked Object Count Address Size Responsible Library Responsible Frame
Malloc 64 Bytes 2 < multiple > 128 Bytes RTABMapApp rtabmap::Memory::Memory(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>> const&)
Malloc 32 Bytes 2 < multiple > 64 Bytes RTABMapApp cv::aruco::DetectorParameters::create()
Malloc 32 Bytes 2 < multiple > 64 Bytes RTABMapApp rtabmap::Rtabmap::parseParameters(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>> const&)
Malloc 32 Bytes 2 < multiple > 64 Bytes RTABMapApp cv::Ptr<cv::aruco::Dictionary> cv::makePtr<cv::aruco::Dictionary, cv::aruco::Dictionary>(cv::aruco::Dictionary const&)
Malloc 208 Bytes 2 < multiple > 416 Bytes RTABMapApp rtabmap::Rtabmap::parseParameters(std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>> const&)
Malloc 176 Bytes 2 < multiple > 352 Bytes RTABMapApp cv::aruco::DetectorParameters::create()
Malloc 144 Bytes 2 < multiple > 288 Bytes RTABMapApp void std::__1::vector<double, std::__1::allocator<double>>::__assign_with_size[abi:ue170006]<double*, double*>(double*, double*, long)
Malloc 128 Bytes 2 < multiple > 256 Bytes RTABMapApp rtabmap::Optimizer::create(rtabmap::Optimizer::Type, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>> const&)
Malloc 112 Bytes 2 < multiple > 224 Bytes RTABMapApp cv::Ptr<cv::aruco::Dictionary> cv::makePtr<cv::aruco::Dictionary, cv::aruco::Dictionary>(cv::aruco::Dictionary const&)
from rtabmap.
Total of bytes is around 1.5MB. Most of these functions are called only once, so maybe not the source of the huge memory usage you are seeing. A cv::Ptr
is a smart pointer, not sure it shows up as a "leak".
from rtabmap.
Related Issues (20)
- What represents pose in signature and where are global poses are stored? HOT 4
- VelodyneLaserScan: PointCloud2 missing one or more required fields! (x,y,ring) after run rtabmap with localization HOT 1
- localization delay time too long when moving. how to increase the publish frequency. please help me !!!! HOT 11
- it is possible to increase the frequency of map -> icp_odom/odom to 200 or more!!! or increase the frequency of localization. i can't do path follow on the correct path. HOT 2
- what is the best mono-vio in rtabmap for indoor environment recently? HOT 2
- Rtabmap on Android devices HOT 3
- Build error eigen Plugins HOT 1
- GTSAM’s Dogleg optimizer does not correct loop closing errors.
- [Feature-Request] VDBFusion Integration HOT 2
- Export 3D clouds as obj crash HOT 1
- Docker container libs updated without rtabmap rebuild HOT 6
- How can I train an incremental BoW vocabulary offline? HOT 3
- iOS: RTABMap along Apple RoomPlan HOT 2
- Could not find .cpp files of src folder in docker image HOT 2
- Docker Jammy build error HOT 1
- No color images, only grayscale images HOT 4
- Export silently crashes while writing the OBJ (windows 0.21.4 and 0.21.0 binaries)
- Refine previously detected Loop Closures only HOT 1
- iOS: Add option to export in LAS format
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rtabmap.