From aeed628716005d38b4f9f53daca0bee20c23df73 Mon Sep 17 00:00:00 2001 From: Luc Absil Date: Mon, 30 Mar 2015 16:58:36 +0200 Subject: [PATCH] PUUUUUSH --- rechercheDoc/biblio.bib | 127 +++++++++++++++++++++++++++++++++++----- rechercheDoc/main.pdf | Bin 23513 -> 31732 bytes rechercheDoc/main.tex | 56 +++++++++++------- 3 files changed, 149 insertions(+), 34 deletions(-) diff --git a/rechercheDoc/biblio.bib b/rechercheDoc/biblio.bib index 74ad8d1..853fa5f 100644 --- a/rechercheDoc/biblio.bib +++ b/rechercheDoc/biblio.bib @@ -3,18 +3,16 @@ language = {English}, copyright = {Copyright 2015, The Institution of Engineering and Technology}, title = {Performance Analysis of the Microsoft Kinect Sensor for 2D Simultaneous Localization and Mapping (SLAM) Techniques}, journal = {Sensors}, -journal = {Sensors (Switzerland)}, author = {Kamarudin, K. and Mamduh, S.M. and Shakaff, A.Y.M. and Zakaria, A.}, volume = { 14}, number = { 12}, -year = {2014/12/}, +year = {2014}, pages = {23365 - 87}, issn = {1424-8220}, address = {Switzerland}, abstract = {This paper presents a performance analysis of two open-source, laser scanner-based Simultaneous Localization and Mapping (SLAM) techniques (i.e., Gmapping and Hector SLAM) using a Microsoft Kinect to replace the laser sensor. Furthermore, the paper proposes a new system integration approach whereby a Linux virtual machine is used to run the open source SLAM algorithms. The experiments were conducted in two different environments; a small room with no features and a typical office corridor with desks and chairs. Using the data logged from real-time experiments, each SLAM technique was simulated and tested with different parameter settings. The results show that the system is able to achieve real time SLAM operation. The system implementation offers a simple and reliable way to compare the performance of Windows-based SLAM algorithm with the algorithms typically implemented in a Robot Operating System (ROS). The results also indicate that certain modifications to the default laser scanner-based parameters are able to improve the map accuracy. However, the limited field of view and range of Kinect's depth sensor often causes the map to be inaccurate, especially in featureless areas, therefore the Kinect sensor is not a direct replacement for a laser scanner, but rather offers a feasible alternative for 2D SLAM tasks.}, keywords = {control engineering computing;Linux;mobile robots;optical scanners;real-time systems;SLAM (robots);virtual machines;}, -note = {performance analysis;Microsoft kinect sensor;2D simultaneous localization and mapping technique;SLAM technique;laser scanner-based simultaneous localization and mapping technique;Gmapping;hector SLAM;laser sensor;system integration approach;Linux virtual machine;open source SLAM algorithm;office corridor;real time SLAM operation;system implementation;Windows-based SLAM algorithm;robot operating system;ROS;laser scanner-based parameter;map accuracy;Kinect depth sensor;2D SLAM task;}, -URL = {http://dx.doi.org/10.3390/s141223365}, +howpublished = {\url{http://dx.doi.org/10.3390/s141223365}}, } @article {robotas, @@ -27,7 +25,7 @@ URL = {http://dx.doi.org/10.3390/s141223365}, abstract={Une présentation succinte de l'installation de ROS, d'Eclipse et des drivers de Kinect sur Ubunut 10.10 Maverick. L'article propose aussi un test de l'installation, puis la manière d'installer PCL}, - URL={http://robotas.at/ros-and-kinect-ubuntu-installation/}, + howpublished={\url{http://robotas.at/ros-and-kinect-ubuntu-installation/}}, } @@ -43,19 +41,19 @@ URL = {http://dx.doi.org/10.3390/s141223365}, author = {El-laithy, R.A. and Jidong Huang and Yeh, M.}, - year = {2012//}, + year = {2012}, pages = {1280 - 8}, address = {Piscataway, NJ, USA}, - abstract = {The Microsoft X-Box Kinect Sensor is a revolutionary new depth camera that is used in the gaming industry to capture motions of people and players efficiently using the technology of an RGB camera and infrared camera to differentiate depth. In the Microsoft X-Box, Kinect was used to sense 3D perception of human's motions. It can also be used for robotic applications, precisely for indoor navigation through the process of reverse engineering. Certain software packages were made available and are open source from “LibFreenect” for Linux machines, Microsoft's Kinect SDK using the Kinect namespace on Visual Studio 2010 Express (C++, C# or Visual Basic), and Google's released “Robotic Operating System (ROS)”. In order to claim that this sensor is capable of taking on such a task, we must be able to investigate thoroughly all factors that contribute to this and at the same time we must be able to understand its limitations to be applied and integrated properly with certain types of robots for accomplishing our purpose of achieving successful indoor navigation using proper algorithms. In this paper, the results from testing the Kinect sensor on an autonomous ground vehicle was given.}, + abstract = {The Microsoft X-Box Kinect Sensor is a revolutionary new depth camera that is used in the gaming industry to capture motions of people and players efficiently using the technology of an RGB camera and infrared camera to differentiate depth. In the Microsoft X-Box, Kinect was used to sense 3D perception of human's motions. It can also be used for robotic applications, precisely for indoor navigation through the process of reverse engineering. Certain software packages were made available and are open source from “LibFreenect” for Linux machines, Microsoft's Kinect SDK using the Kinect namespace on Visual Studio 2010 Express (C++ or Visual Basic), and Google's released “Robotic Operating System (ROS)”. In order to claim that this sensor is capable of taking on such a task, we must be able to investigate thoroughly all factors that contribute to this and at the same time we must be able to understand its limitations to be applied and integrated properly with certain types of robots for accomplishing our purpose of achieving successful indoor navigation using proper algorithms. In this paper, the results from testing the Kinect sensor on an autonomous ground vehicle was given.}, keywords = {C++ language;cameras;control engineering computing;infrared imaging;Linux;mobile robots;operating systems (computers);reverse engineering;robot vision;software packages;Visual BASIC;}, - note = {robotics application;Microsoft X-Box Kinect sensor;depth camera;gaming industry;motion capture;RGB camera;infrared camera;3D perception;human motion;indoor navigation;reverse engineering;software package;LibFreenect;Linux machine;Microsoft Kinect SDK;Visual Studio 2010 Express;C++ language;C# language;Visual Basic;robotic operating system;ROS;autonomous ground vehicle;robot localization;}, - URL = {http://dx.doi.org/10.1109/PLANS.2012.6236985}, + + howpublished = {\url{http://dx.doi.org/10.1109/PLANS.2012.6236985}}, } @@ -71,7 +69,7 @@ URL = {http://dx.doi.org/10.3390/s141223365}, author = {Smisek, J. and Jancosek, M. and Pajdla, T.}, - year = {2011//}, + year = {2011}, pages = {1154 - 60}, @@ -81,9 +79,9 @@ URL = {http://dx.doi.org/10.3390/s141223365}, keywords = {calibration;cameras;image motion analysis;image reconstruction;image sensors;solid modelling;stereo image processing;}, - note = {3D measuring device;depth measurement resolution;stereo reconstruction;SLR camera;3D-TOF camera;time-of-flight;Kinect geometrical model;Kinect calibration procedure;Kinect 3D measurement;SfM pipeline;structure from motion;}, - URL = {http://dx.doi.org/10.1109/ICCVW.2011.6130380}, + + howpublished = {\url{http://dx.doi.org/10.1109/ICCVW.2011.6130380}}, } @@ -101,13 +99,13 @@ URL = {http://dx.doi.org/10.3390/s141223365}, year = "2015", - note = "25th \{DAAAM\} International Symposium on Intelligent Manufacturing and Automation, 2014 ", + issn = "1877-7058", doi = "http://dx.doi.org/10.1016/j.proeng.2015.01.519", - url = "http://www.sciencedirect.com/science/article/pii/S1877705815005469", + howpublished = "\url{http://www.sciencedirect.com/science/article/pii/S1877705815005469}", author = "Khassanov Alisher and Krupenkin Alexander and Borgul Alexandr", @@ -124,3 +122,104 @@ URL = {http://dx.doi.org/10.3390/s141223365}, abstract = "Abstract The paper describes implementation of mobile robots programming process with Robot Operating System (ROS) in student robotics courses. \{ROS\} provides different tools for data analysis, facilities of multiple robots and their sensors, teleoperation devices interaction thereby targeting engineering education. An example with the multiagent interaction between agent-evader and agent-pursuer were taken as the basic navigational task. The computed behavior of the virtual agents were successfully transferred to the quadcopters, Lego Mindstorms \{NXT\} based and Robotino robots. Diverse experimental tests were conducted using the algorithms on virtual agents and robotic platforms. " } + +@article{Alisher, + + title = "Control of the Mobile Robots with \{ROS\} in Robotics Courses ", + + journal = "Procedia Engineering ", + + volume = "100", + + number = "0", + + pages = "1475 - 1484", + + year = "2015", + + + + issn = "1877-7058", + + doi = "http://dx.doi.org/10.1016/j.proeng.2015.01.519", + + howpublished = "\url{http://www.sciencedirect.com/science/article/pii/S1877705815005469}", + + author = "Khassanov Alisher and Krupenkin Alexander and Borgul Alexandr", + + keywords = "\{ROS\}", + + keywords = "robotics", + + keywords = "education", + + keywords = "multiagent system", + + keywords = "remote control ", + + abstract = "Abstract The paper describes implementation of mobile robots programming process with Robot Operating System (ROS) in student robotics courses. \{ROS\} provides different tools for data analysis, facilities of multiple robots and their sensors, teleoperation devices interaction thereby targeting engineering education. An example with the multiagent interaction between agent-evader and agent-pursuer were taken as the basic navigational task. The computed behavior of the virtual agents were successfully transferred to the quadcopters, Lego Mindstorms \{NXT\} based and Robotino robots. Diverse experimental tests were conducted using the algorithms on virtual agents and robotic platforms. " + + } + + ROS + + @Manual{Tutoriels, + + title = {ROS Tutorials}, + + organization = {ROS}, + + howpublished = {\url{http://wiki.ros.org/ROS/Tutorials}}, + month = {11}, + year = {2014}, + + } + + IEEE Xplore via GoogleScholar + + @INPROCEEDINGS{Postures, + + author={Zheng Xiao and Fu Mengyin and Yang Yi and Lv Ningyi}, + + booktitle={Intelligent Human-Machine Systems and Cybernetics (IHMSC), 2012 4th International Conference on}, + + title={3D Human Postures Recognition Using Kinect}, + + year={2012}, + + month={Aug}, + + volume={1}, + + pages={344-347}, + + abstract={In many application cases, 2D human postures display haven't been able to meet people's requirements which is failure to show human motions comprehensive, image and vivid. However, 3D human Postures display could restore and show human motions well, which is convenient for people to observe and learn human motions. This paper presents a method to recognize 3D human postures by using Microsoft Kinect sensor. Kinect is used as a capturing device. Capturing 3D human features mainly uses depth images obtained from Kinect sensor. Each pixel of depth images contains three-dimensional coordinate information of camera's scenes. Finally, the captured 3D human postures can be displayed by employing a human skeletal joints model and using a LED cube.}, + + keywords={cameras;gait analysis;image motion analysis;image recognition;interactive systems;light emitting diodes;2D human posture display;3D human features;3D human posture display;3D human posture recognition;LED cube;Microsoft Kinect sensor;camera scenes;depth image pixels;human motions;human skeletal joint model;three-dimensional coordinate information;Cameras;Humans;Joints;Light emitting diodes;Robot sensing systems;Solid modeling;Vegetation;3D human postures;Kinect;LED cube;depth images;human motions;human skeletal joints model}, + + doi={10.1109/IHMSC.2012.92},} + +@Misc{ROS, + title = {Listes des bibliothèques ROS liées à Kinect}, + organization = {ROS}, + howpublished= {\url{http://www.ros.org/browse/search.php?distro=indigo\&q=kinect}} +} + + @Misc{OpenKinect, + + title = {OpenKinect Wiki}, + organization = {OpenKinect}, + + howpublished = {\url{http://openkinect.org/wiki/Main_Page}} + + } + + @Misc{Kinectwindows, + + howpublished={\url{http://www.microsoft.com/en-us/kinectforwindows/}}, + + title = {Kinect for Windows}, + + organisation = {Microsoft} + + } diff --git a/rechercheDoc/main.pdf b/rechercheDoc/main.pdf index 6acc4defe962f2ae14e74126f09d89abca7c06e9..89ed652f6cc2a106796da506d077514819d7e089 100644 GIT binary patch literal 31732 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 H3iba0LBs#G literal 23513 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 C1~VA| diff --git a/rechercheDoc/main.tex b/rechercheDoc/main.tex index 5403124..1a003d1 100644 --- a/rechercheDoc/main.tex +++ b/rechercheDoc/main.tex @@ -1,35 +1,37 @@ -\documentclass[fontsize=14pt, DIV=calc, a4paper]{scrartcl} +\documentclass[fontsize=12pt, DIV=calc, a4paper]{scrartcl} %\documentclass[12pt, DIV=calc, twosides=on, a4paper,twocolumn]{scrartcl} \usepackage{fontspec} \usepackage{polyglossia} \usepackage{hyperref} \usepackage[modulo]{lineno} - - +\usepackage{url} \setdefaultlanguage{french} %\setmainfont{Junicode} %\setsansfont{Junicode} -\setmainfont{EB Garamond} -\setsansfont{EB Garamond} -\newfontface\smallcaps[RawFeature={+c2sc,+scmp}]{EB Garamond} +%\setmainfont{EB Garamond} +%\setsansfont{EB Garamond} +%\newfontface\smallcaps[RawFeature={+c2sc,+scmp}]{EB Garamond} %\setmainfont[Ligatures=TeX]{Linux Libertine O} %\setsansfont{Linux Biolinum O} %\newfontface\sc[Letters=SmallCaps]{Linux Biolinum O} \title{\textsc{Hand Control}\\ -\Huge \textbf{}} + \textbf{Bibliographie}} -\author{Luc Absil, Louis-Guillaume Dubois, Paul Janin\\ -\bigskip -{\tt \small -\href{mailto:luc.absil@supelec.fr}{luc.absil@supelec.fr} -\href{mailto:louis-guillaume.dubois@supelec.fr}{louis-guillaume.dubois@supelec.fr} -\href{mailto:paul.janin@supelec.fr}{paul.janin@supelec.fr}}} +\author{Luc Absil\\ +\href{mailto:luc.absil@supelec.fr}{luc.absil@supelec.fr}\\ +~\\ + Louis-Guillaume Dubois\\ + \href{mailto:louis-guillaume.dubois@supelec.fr}{louis-guillaume.dubois@supelec.fr}\\ + ~\\ +Paul Janin\\ +\href{mailto:paul.janin@supelec.fr}{paul.janin@supelec.fr} +} \date{} \KOMAoptions{DIV=last} @@ -57,17 +59,31 @@ \includegraphics[width=15cm]{#1} \end{figure} } - +\bibliographystyle{plain} % pour les références \newcommand\rr[1]{\ref{#1} page~\pageref{#1}} \begin{document} \maketitle -\section{Présentation de la synthèse} -Cette synthèse documentaire s'intéresse à la plateforme de développement ROS pour le contrôle de systèmes automatisés, ainsi qu'au dispositif de détection de mouvement Kinect, -développé par Microsoft, et à son utilisation dans le cadre de notre projet de synthèse. On s'attachera notamment aux divers cadres d'utilisations possibles pour le Kinect. -\bibliographystyle{plain} -Je cite \cite{blagues}. -Notre superbe biblio : +\tableofcontents + +\section{Présentation} +\subsection{Introduction} +Cette synthèse documentaire s'intéresse à la plateforme de développement ROS pour le contrôle de systèmes automatisés, ainsi qu'au dispositif de détection de mouvement Kinect, développé par Microsoft, et à son utilisation dans le cadre de notre projet de synthèse. On s'attachera notamment aux divers cadres d'utilisations possibles pour le Kinect. + +\subsection{Présentation de la recherche documentaire} +Notre sujet de synthèse portant sur des équipements récents (une kinect), aucun livre n'était répertorié sur le catalogue en ligne de la bibliothèque tricampus de Supélec. + +Nous avons utilisé différents outils externes pour établir la bibliographie présentée dans ce document. + +\section{Inspection des bases de données} +Nous avons utilisé la base de donnée \emph{Inspec} pour trouver les articles \cite{performance} \cite{Kinect-3D} \cite{Kinect-robotic}. Toutefois, les articles qui nous intéressaient n'étaient pas disponibles en accès libre. Sur la base de donnée \emph{Science Direct}, nous avons trouvé \cite{Alisher}. + +\section{Recherche des documentations des logiciels} +Grâce à un moteur de recherche usuel, tel \emph{DuckDuckGo}, il nous a été facile de trouver la documentation officielle de ROS\cite{Tutoriels}, sur laquelle une page était consacrée aux drivers nécessaires\cite{ROS} pour utiliser une kinect, ainsi que nous projetons de le faire dans notre projet. + +Toujours en utilisant \emph{DuckDuckGo}, avec les mots clés « \emph{Kinect} » et « Microsoft », nous avons trouvé le site officiel de Microsoft sur le développement des kinects\cite{Kinectwindows}, ainsi que la documentation du projet \emph{OpenKinect} qui développe un pilote libre \emph{libfreenect}\cite{OpenKinect}, hébergé sur GitHub. + + \bibliography{biblio} \end{document}