Difference between revisions of "MoonSlam"
(→How to compile) |
(→How to compile) |
||
Line 87: | Line 87: | ||
'''Note(2):''' MoonSlam now need OpenCV2.2, probably you have to compile it by hands (they are not available in Ubuntu standard repositories) | '''Note(2):''' MoonSlam now need OpenCV2.2, probably you have to compile it by hands (they are not available in Ubuntu standard repositories) | ||
+ | |||
+ | '''Note(3):''' MoonSlam compile with the libconfig++ proposed in Ubuntu repository, but some configuration files use the @include directive, that is supported by the libconfig++1.4.6. Get it from [http://www.hyperrealm.com/main.php?s=libconfig here]. | ||
== Links == | == Links == |
Revision as of 22:43, 16 February 2011
moonSlam
| |
Coordinator: | MatteoMatteucci (matteo.matteucci@polimi.it) |
Tutor: | SimoneCeriani (ceriani@elet.polimi.it) |
Collaborator: | |
Students: | VincenzoRizzo (vincenzo.arigliano@gmail.com), RobertoBacciocchi (roberto.bacciocchi@mail.polimi.it), AntonioBianchi (antonio.bianchi.333@gmail.com), MladenMazuran (mladen.mazuran@gmail.com), MatteoLuperto (matteo.luperto@polimi.com), AngeloZuffiano (angelo.zuffiano@mail.polimi.it) |
Research Area: | Computer Vision and Image Analysis |
Research Topic: | |
Start: | 2010/06/30 |
Status: | Active |
Contents
Goal
The aim of the moonSlam project is to create a generic software framework for SLAM (Simultaneous Localization And Mapping).
Motivation
Download
Use the DEI svn system (you need a valid account):
- cd in your workspace directory
- to download all the project:
svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/
- to download only the "trunk":
svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/trunk/
- to download only a "tag":
svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/tags/<tagname>/
- (you can know all the tags by
svn ls https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/tags/
)
- (you can know all the tags by
Use --username <username> after the svn command if you neeed to specify your username and password
Useful readings
Introduction to SLAM
- Wikipedia [1]
- IEEE Slam tutorials
- The SSS06 (SLAM Summer School) pages, refer to "lectures" and "Practicals" [4]
- The BMVC 2007 tutorials [5]
- Joan Solà have an on line course on SLAM here. It's based on a Matlab toolbox developed by Solà (http://homepages.laas.fr/jsola/JoanSola/eng/toolbox.html)
EKF
- Probabilistic Robotics [6]
Useful Materials
Some thesis (Bachelor, MS or PhD)
- Visual
- Migliore Davide (PhD) []
- MarzoratiDaniele (PhD) []
- RigamontiRoberto (MS) []
- Joan Solà (Phd) [10]
- Laser
- Mauro Brenna []
- Mladen Mazuran & Matteo Luperto (Bachelor) []
- Computer Vision
- MassimoQuadrana (Bachelor) []
How to compile
On a "clean" Ubuntu 10.4 32bit installation, first of all you need to install these packages:
-
svn cmake g++
Then you have to install all the libraries required by moonSlam:
-
liblog4cpp5 liblog4cpp5-dev libcv-dev libhighgui-dev libconfig++8-dev libxml++2.6-dev libboost-all-dev libcvaux-dev opencv libopencv-dev
moonSlam requires also Eigen 3.0 library. It is not present on official Ubuntu 10.4 repository, download it from here and then install it, following the instructions written in INSTALL file.
Now you can compile moonSlam.
- open a shell inside trunk folder
-
mkdir build
cd build - now you can make one of these folder
-
Debug
-
Release
-
RelWithDebInfo
-
MinSizeRel
-
- cd in the created folder (e.g.
cd Debug
) -
cmake ../..
-
make
If everything goes fine, compiled binaries and libraries will be written inside trunk/build/<yourChoice> folder (keeping trunk folder "clean").
Note: performance, executable size and other aspects depends on the choosen build configuration. See the CMakeLists.txt file to know which compilations flags are used.
Note(2): MoonSlam now need OpenCV2.2, probably you have to compile it by hands (they are not available in Ubuntu standard repositories)
Note(3): MoonSlam compile with the libconfig++ proposed in Ubuntu repository, but some configuration files use the @include directive, that is supported by the libconfig++1.4.6. Get it from here.