https://airwiki.elet.polimi.it/api.php?action=feedcontributions&user=AngeloZuffiano&feedformat=atomAIRWiki - User contributions [en]2024-03-29T06:50:02ZUser contributionsMediaWiki 1.25.6https://airwiki.elet.polimi.it/index.php?title=MoonSlam&diff=13001MoonSlam2011-03-24T13:05:40Z<p>AngeloZuffiano: /* Some thesis (Bachelor, MS or PhD) */</p>
<hr />
<div>{{Project<br />
|title=moonSlam<br />
|coordinator=MatteoMatteucci<br />
|tutor=SimoneCeriani;<br />
|students=VincenzoRizzo;RobertoBacciocchi; AntonioBianchi; MladenMazuran; MatteoLuperto; AngeloZuffiano;<br />
|resarea=Computer Vision and Image Analysis<br />
|start=2010/06/30<br />
|status=Active<br />
}}<br />
== Goal ==<br />
The aim of the moonSlam project is to create a generic software framework for SLAM (Simultaneous Localization And Mapping).<br />
<br />
== Motivation ==<br />
<br />
== Download ==<br />
<br />
Use the DEI svn system (you need a valid account):<br />
<br />
* cd in your workspace directory<br />
* to download all the project: <code>svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/</code><br />
* to download only the "trunk": <code>svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/trunk/</code><br />
* to download only a "tag": <code>svn co https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/tags/<tagname>/</code><br />
** (you can know all the tags by <code>svn ls https://svn.ws.dei.polimi.it/airlab/Projects/MoonSlamProject/tags/</code>)<br />
<br />
Use --username <username> after the svn command if you neeed to specify your username and password<br />
<br />
== SVN principal commands ==<br />
Check this, seems to be a good tutorial: [[http://svnbook.red-bean.com/en/1.4/svn.tour.cycle.html]]<br />
* do <code>svn up</code> or <code>svn update</code> to check the status of repository<br />
* with <code>svn add</code> you can add the unversioned elements (it is recursive)<br />
* with <code>svn stat</code> you can check your svn status<br />
* with <code>svn ci -m"comments"</code> you can checkin your files<br />
<br />
===How to says to svn that some folders or files has to be ignored===<br />
This is the common situtation<br />
* you want to avoid the versioning of .settings, build and doc folder (that are shown with a '?' in the svn stat result)<br />
* do <code>svn propedit .</code><br />
* add in the editor (nano, vim or something similar) the folders or files that you want to ignore (one per line).<br />
* run <code>svn stat</code>, the '?' should disappear, because the elements are ignored.<br />
<br />
== Useful readings ==<br />
<br />
=== Introduction to SLAM ===<br />
* Wikipedia [http://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping]<br />
* IEEE Slam tutorials<br />
** Simultaneous Localization and Mapping: Part I [http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1638022&userType=inst]<br />
** Simultaneous Localization and Mapping: Part II [http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1678144]<br />
<br />
* The SSS06 (SLAM Summer School) pages, refer to "lectures" and "Practicals" [http://www.robots.ox.ac.uk/~SSS06/Website/index.html]<br />
* The BMVC 2007 tutorials [http://www.cs.bris.ac.uk/Research/Vision/Realtime/bmvctutorial/]<br />
* Joan Solà have an on line course on SLAM [http://homepages.laas.fr/jsola/JoanSola/eng/course.html here]. It's based on a Matlab toolbox developed by Solà (http://homepages.laas.fr/jsola/JoanSola/eng/toolbox.html)<br />
<br />
==== EKF ====<br />
* Probabilistic Robotics [http://robots.stanford.edu/probabilistic-robotics/]<br />
<br />
==== Computer Vision ====<br />
* Computer Vision: Algorithms and Applications [http://szeliski.org/Book/]<br />
A freely available book about Computer Vision. Some chapters are dedicated to features recognition. <br />
<br />
==== Useful Materials ====<br />
* Joan Solà materials on quaternions [http://homepages.laas.fr/jsola/JoanSola/objectes/notes/kinematics.pdf], EKF mathematics for SLAM [http://homepages.laas.fr/jsola/JoanSola/objectes/notes/FisslamNotes.pdf] and PhD Thesis [http://homepages.laas.fr/jsola/JoanSola/objectes/PhD/Thesis.pdf]<br />
<br />
=== Some thesis (Bachelor, MS or PhD) ===<br />
* Visual<br />
** Migliore Davide (PhD) []<br />
** MarzoratiDaniele (PhD) []<br />
** RigamontiRoberto (MS) []<br />
** Joan Solà (Phd) [http://homepages.laas.fr/jsola/JoanSola/objectes/PhD/Thesis.pdf]<br />
<br />
* Laser<br />
** [[User:MauroBrenna|Mauro Brenna]] []<br />
** [[User:MladenMazuran|Mladen Mazuran]] &amp; [[User:MatteoLuperto|Matteo Luperto]] (Bachelor) []<br />
<br />
* Computer Vision<br />
** MassimoQuadrana (Bachelor) []<br />
<br />
* CI-Slam<br />
** Pedro Piniés Rodriguez (Phd) [http://robots.unizar.es/data/documentos/PedroPiniesThesis.pdf]<br />
<br />
== How to compile ==<br />
On a "clean" Ubuntu 10.04.2 32bit installation, first of all, you need to install these packages:<br />
* <code>subversion cmake g++ doxygen</code><br />
Then you have to install all the libraries required<br />
by moonSlam:<br />
* <code>liblog4cpp5-dev libxml++2.6-dev libpng3-dev libboost-all-dev</code><br />
<br />
<br />
moonSlam requires packages that are not available in Ubuntu standard repositories: <br />
*libconfig++1.4.6<br />
Download it from [http://www.hyperrealm.com/main.php?s=libconfig here]<br />
and then install it, following the instructions written in INSTALL file.<br />
* Eigen 3.0 library<br />
Download it from [http://eigen.tuxfamily.org/index.php?title=3.0_beta here]<br />
and then install it, following the instructions written in INSTALL file.<br />
* Opencv 2.2<br />
Download it from [http://opencv.willowgarage.com here]<br />
and then install it, following the instruction written [http://opencv.willowgarage.com/wiki/InstallGuide here].<br />
<br />
Opencv2.2 needs eigen2 library. Before compiling it, install eigen2 library (<code>apt-get install libeigen2-dev</code>).<br />
<br />
<br />
<br />
Now you can compile moonSlam.<br />
* open a shell inside trunk folder<br />
* <code>mkdir build <br> cd build </code><br />
* now you can make one of these folder<br />
** <code>Debug</code><br />
** <code>Release</code><br />
** <code>RelWithDebInfo</code><br />
** <code>MinSizeRel</code><br />
* cd in the created folder (e.g. <code>cd Debug</code>)<br />
* <code>cmake ../..</code><br />
* <code>make</code><br />
If everything goes fine, compiled binaries and libraries will be<br />
written inside trunk/build/<yourChoice> folder (keeping trunk folder "clean").<br />
<br />
'''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.<br />
<br />
'''Note(2):''' 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.<br />
<br />
== Create the documentation ==<br />
go in the base folder (e.g. trunk) and type<br />
<code>doxygen <LibraryName>.doxyfile</code><br />
<br />
you will find documentation in doc/<LibraryName>/html folder<br />
<br />
for each library<br />
<br />
== Links ==<br />
[http://www.doc.ic.ac.uk/~ajd/ Andrew Davison home page]<br />
<br />
[http://homepages.laas.fr/jsola/JoanSola/eng/JoanSola.html Joan Solà home page]<br />
<br />
[http://robots.unizar.es/html/home.php Robotics, Perception and Real Time group, Zaragoza]</div>AngeloZuffianohttps://airwiki.elet.polimi.it/index.php?title=User:AngeloZuffiano&diff=11727User:AngeloZuffiano2010-05-23T09:54:59Z<p>AngeloZuffiano: New page: {{Student |category=Student |firstname=Angelo Antonio |lastname=Zuffianò |email=angelo.zuffiano@mail.polimi.it |advisor=MatteoMatteucci; |status=active }}</p>
<hr />
<div>{{Student<br />
|category=Student<br />
|firstname=Angelo Antonio<br />
|lastname=Zuffianò<br />
|email=angelo.zuffiano@mail.polimi.it<br />
|advisor=MatteoMatteucci; <br />
|status=active<br />
}}</div>AngeloZuffiano