In order to create a map for unknown environment, we have two solutions:

  1. The size of the area should be given (grid-based maps) so simply we create 2D grid and have our robot to move discrete movement each move represent a cell in the grid and as the robot moves we use it sensors to mark this cell as open or close.
  2. The size of the area is not given (feature-based maps) and so we have to find a way to represent the map.

I am here for the second approach, how to store the map as a programmer? What data structure do I need?

I googled it a lot but I could not find the right answer. I found a similar question, How does a robot efficiently store a map it makes?, but I didn't get what I need.

  • 2
    $\begingroup$ I think you will need to elaborate on what you want in a feature based map more. If you are not finding data structure that suit you in the academic papers, video game mapping techniques may give you some ideas, even though the requirements they have are a bit different than robotics. $\endgroup$
    – hauptmech
    Jun 27 '19 at 20:54
  • $\begingroup$ For now,i would like to know how to store it.i read to many papers they mentioned the overall work not the programming techniques! $\endgroup$
    – The None
    Jun 28 '19 at 8:25
  • $\begingroup$ Welcome to Robotics The None, but I'm afraid that Unbounded Design Questions are off-topic because there are many ways to solve any given design problem. We prefer practical, answerable questions based on actual problems that you face, so questions which ask for a list of approaches or a subjective recommendation on a method (for how to build something, how to accomplish something, what something is capable of, etc.) are off-topic. Please take a look at How to Ask & tour for more information on how stack exchange works. $\endgroup$
    – Mark Booth
    Jul 5 '19 at 12:12
  • $\begingroup$ If you want to narrow down this question to something more practical, it would be a good idea to include details of what you want to achieve, what you tried, what you saw & what you expected to see. If edit your question to make it clearer, we can re-open it for you. In particular, if you could explain why the answers on How does a robot efficiently store a map it makes? don't help, it could make it easier to answer your questions. $\endgroup$
    – Mark Booth
    Jul 5 '19 at 12:15

You may want to use SLAM for this task. A good start can be ORB-SLAM. It's open source and state-of-the-art. The ORB-SLAM code can give good idea about data structure required to store maps.


Not the answer you're looking for? Browse other questions tagged or ask your own question.