Seminar: Advanced Topics in Mobile Robotics: Flying Robots

Dozenten Radouane Ait Jellal, Yuyi Liu
Sprechstunde nach Vereinbarung
Zeit wird in der Vorbesprechung vereinbart
Umfang 2 SWS, 4 LP
Beginn 07. April 2014
Vorbesprechung Montag, 07.04.2014, 16:15h, Ort: Sand 1, Raum A302
Ort Sand 1, Raum A302
Turnus regelmäßig

Description

In the recent years the robotics community witnesses a substantial increase of interest in flying robots i.e. unmanned aerial vehicles (UAVs) and micro aerial vehicles (MAVs). The researches on flying robot control, estimation and mapping become popular. Numerous applications such as goods transportation, aerial monitoring, traffic management, inspection of damaged buildings etc. are under development.
In this seminar you will research the relevant literature on the topics of control and computer vision for MAVs, read scientific papers, and give a talk in front of your peers and, finally, write a report on your topic. The talk and report should be in English. The report should be submitted one week after the talk.

Rahmen

Alle Teilnehmer stellen ihre Arbeiten in je einem Vortrag (45 min. Dauer + 10 min. Diskussion) sowie einer schriftlichen Ausarbeitung (15-20 Seiten) vor.

Themen

"; // Sollen Anmeldebuttons gezeigt werden? if (!isset($isActive)) { $isActive = ($_GET['isActive'] == 'yes'); } // Inkludiere Parameter include_once("globalSettings.php"); // Variablen $tableHead = "background-color:#f0ece1;"; $tableRowStyle = "height:28"; $rowHeight = "18"; $tableRow1st = "background-color:#f4f1f0"; $tableRow2nd = "background-color:#ffffff"; $anmeldenButton = ""; $anmeldenURL = "/php/wwwseminar/anmeldung.php"; // Beginne Tabelle // print "\n\n"; print "\n
\n\n"; // Ermittle, ob es sich um ein Praktikum handelt, und ob man sich anmelden kann // Suche nach dem Schlüsselwort "Praktikum" im Titel des Seminars $query = "SELECT titel,querycode FROM seminar WHERE seminarURL = '$url'"; $result = mysql_query($query); $titel = mysql_result($result, 0,"titel"); $querycode = mysql_result($result, 0, "querycode"); $isPraktikum = (stristr($titel,"praktikum")!==false); // Prüfe, ob Veranstaltung zum laufenden Semester gehört $semester = getSemester($url); // $isActive = ($semester == $currentSemester); // Liste aller Termine einer Veranstaltung abrufen $query = "SELECT * FROM termin LEFT JOIN referent USING (ID_termin) LEFT JOIN seminar USING (ID_seminar) LEFT JOIN betreuer USING (betreuer) WHERE (termin.datum > '$WAITDATE_SQL') AND (seminarURL = '$url') ORDER BY termin.datum, termin.ID_termin"; $result = mysql_query($query); $number = mysql_numrows($result); if ($number <= 0) { // wenn keine Termine gefunden print "

Themen werden so schnell wie möglich online gestellt.

"; // Liste aller Termine einer Veranstaltung abrufen $query = "SELECT * FROM seminar WHERE (seminarURL = '$url')"; $result = mysql_query($query); $number = mysql_numrows($result); if ($number <= 0) { // wenn kein Eintrag in DB vorhanden // Veranstaltung eintragen $querycode = getRandomString(8); $query = "INSERT INTO seminar (titel, seminarURL, querycode) VALUES ('Titel','$url','$querycode')"; $result = mysql_query($query); } } else { // wenn Termine gefunden $i = 0; $HTMLrowcount = 0; $ID_temin_old = -1; if ($isPraktikum) { // print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; while ($i < $number): // Daten aus SQL-Abfrage-Ergebnis extrahieren $ID_termin = mysql_result($result, $i, "ID_termin"); $betreuer = mysql_result($result, $i, "betreuer"); $betreuerURL = mysql_result($result, $i, "betreuer.url"); $maxReferenten = mysql_result($result, $i, "maxReferenten"); $vorname = htmlentities(mysql_result($result, $i, "vorname")); $name = htmlentities(mysql_result($result, $i, "name")); if (($vorname > "") || ($name > "")) { $referent = $vorname . " " . $name; } elseif ($maxReferenten > 0 and $isActive) { $referent = "$anmeldenButton"; } else { $referent = ""; } // Wechselnder Hintergrund für gerade/ungerade Tabellenzeilen // $style = ++$HTMLrowcount % 2 ? 'tr-even' : 'tr-odd'; // Ausgabe einer Tabellenzeile // print " \n"; print " \n"; $ii = $i + 1; print " \n"; if ($betreuerURL != "") { print " \n"; } else { print " \n"; } print " \n"; print " \n"; $i++; endwhile; } else { // wenn kein Praktikum // print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; while ($i < $number): // Daten aus SQL-Abfrage-Ergebnis extrahieren $datum = formatDate(mysql_result($result,$i,"datum")); $ID_termin = mysql_result($result,$i,"ID_termin"); $titel = mysql_result($result,$i,"titel"); $betreuer = mysql_result($result,$i,"betreuer"); $betreuerURL = mysql_result($result,$i,"betreuer.url"); $maxReferenten = mysql_result($result,$i,"maxReferenten"); $vorname = mysql_result($result,$i,"vorname"); $name = mysql_result($result,$i,"name"); if (($vorname > "") || ($name > "")) { $referent = $vorname . " " . $name; } elseif ($maxReferenten > 0 and $isActive) { $referent = "$anmeldenButton"; } else { $referent = ""; } // Wechselnder Hintergrund für gerade/ungerade Tabellenzeilen // $style = ++$HTMLrowcount % 2 ? 'tr-even' : 'tr-odd'; // Ausgabe einer Tabellenzeile // print " \n"; print " \n"; print " \n"; print " \n"; if ($betreuerURL != "") { print " \n"; } else { print " \n"; } print " \n"; print " \n"; $i++; endwhile; } } // Warteliste eines Seminars abrufen // Als Warteliste wird ein Termin mit einem speziellen Datum ($WAITDATE_SQL) für ein bestimmtes Seminar angenommen. $query = "SELECT * FROM termin LEFT JOIN referent USING (ID_termin) LEFT JOIN seminar USING (ID_seminar) LEFT JOIN betreuer USING (betreuer) WHERE (termin.datum<='$WAITDATE_SQL') AND (seminarURL = '$url') ORDER BY referent.datum DESC"; $result = mysql_query($query); $number = mysql_numrows($result); if ($number > 0) { // Wenn Warteliste gefunden (Info: Eine Warteliste kann auch leer sein, d.h. noch keinen Namen enthalten) $j = 0; // Muster für Befehl vor Serverumstellung im März 2008: // $titel = mysql_result($result,$j,"termin.titel"); $titel = mysql_result($result,$j,"titel"); $ID_termin = mysql_result($result,$j,"ID_termin"); $warteliste = ""; while ($j < $number): // Daten aus SQL-Abfrage-Ergebnis extrahieren $vorname = htmlentities(mysql_result($result,$j,"vorname")); $name = htmlentities(mysql_result($result,$j,"name")); if(($vorname > "") || ($name > "")) { $warteliste = "$vorname $name
\n" . $warteliste; }; $j++; endwhile; $warteliste .= $isActive ? "$anmeldenButton" : ""; // Wechselnder Hintergrund für gerade/ungerade Tabellenzeilen // $style = i % 2 ? 'tr-odd' : 'tr-even'; // Ausgabe einer Tabellenzeile // print " \n"; print " \n"; if (!$isPraktikum) { print " \n"; } print " \n"; print " \n"; print " \n"; print " \n"; } print "\n
PraktikumsplatzBetreuungTeilnehmer(in)
$ii$betreuer$betreuer$referent
DatumThemaBetreuungReferent(in)
$datum$titel$betreuer$betreuer$referent
 $titel $warteliste
\n"; if ($isActive) { if ($isPraktikum) { print "

Zur Reservierung eines Platzes tragen Sie sich bitte mit den Schaltflächen ganz rechts in der Tabelle ein.
Diese Anmeldung ersetzt nicht die offizielle Anmeldung über das Campus-System! Sie dient zur Vorreservierung der einzelnen Plätze bis zur Vorbesprechung, an der Sie persönlich anwesend sein müssen.

"; } else { print "

Zur Reservierung eines Themas tragen Sie sich bitte mit den Schaltflächen ganz rechts in der Termin-Tabelle ein.
Diese Anmeldung ersetzt nicht die offizielle Anmeldung über das Campus-System! Sie dient zur Vorreservierung der einzelnen Termine bis zur Vorbesprechung, an der Sie persönlich anwesend sein müssen.

"; } } $getquery = explode('=', $_GET["query"]); if ( ($getquery[0] === "getlist") && ($getquery[1] === $querycode) ) { print "

Liste aller Teilnehmer

\n"; print "\n\n\n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; $query = "SELECT * FROM termin LEFT JOIN referent USING (ID_termin) LEFT JOIN seminar USING (ID_seminar) LEFT JOIN betreuer USING (betreuer) WHERE seminarURL = '$url' ORDER BY referent.datum DESC"; $result = mysql_query($query); $number = mysql_numrows($result); for ($i = 0; $i < $number; ++$i) { // Daten aus SQL-Abfrage-Ergebnis extrahieren $name = htmlentities(mysql_result($result, $i, "name")); $vorname = htmlentities(mysql_result($result, $i, "vorname")); $semester = htmlentities(mysql_result($result, $i, "semester")); $matrikelnr = htmlentities(mysql_result($result, $i, "matrikelnr")); $studiengang = htmlentities(mysql_result($result, $i, "studiengang")); $email = htmlentities(mysql_result($result, $i, "email")); $betreuer = htmlentities(mysql_result($result, $i, "betreuer")); print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; print " \n"; } print "\n
NameVornameMatr.-Nr.EmailStudiengangSem.Betreuer
$name$vorname$matrikelnr$email$studiengang$semester$betreuer
\n"; // print email list print "

Email-Liste

\n

"; for ($i = 0; $i < 1; ++$i) { $email = htmlentities(mysql_result($result, $i, "email")); print "$email"; } for ($i = 1; $i < $number; ++$i) { $email = htmlentities(mysql_result($result, $i, "email")); print ", $email"; } print "

"; } ?>

Literaturempfehlungen:

Topic 1: Design and control of micro aerial vehicles.
[1] Bouabdallah S., Murrieri P., Siegwart R., "Design and control of an indoor micro quadrotor", in Proceedings of IEEE International Conference on Robotics and Automation (ICRA) 2004.
[2] Mistler V., Benallegue A., M'Sirdi N.K., "Exact linearization and noninteracting control of a 4 rotors helicopter via dynamic feedback", IEEE Interational Workshop on Robot and Human Interactive Communication 2001.
[3] Bouabdallah S., Noth A., Siegwart R., "PID vs LQ control techniques applied to an indoor micro quadrotor", in Proceedings of IEEE/RSJ International Conference on Intelligent Robotics and Systems (IROS) 2004.
[4] Michael N., Mellinger D., Lindsey Q., Kumar V., "The GRASP multiple micro UAV testbed", IEEE Robotics & Automation Magazine, Sept. 2010, Vol.17(3), pp.56-65.

Topic 2: Segmentation using region growing algorithms.
[5] Shilpa Kamdi and R. Krishna "Image Segmentation and Region Growing Algorithm" in International Journal of Computer Technology and Electronics Engineering (IJCTEE) Volume 2, Issue 1 Feb. 2012.

Topic 3: SIFT and FAST features.
[6] David G. Lowe "Distinctive Image Features from Scale Invariant Keypoints" International Journal of Computer Vision, 2004.
[7] Rosten Edward, Tom Drummond, "Machine learning for high-speed corner detection", in European Conference on Computer Vision 1: 430-433

Topic 4: PTAM for flying robot navigation.
[8] G. Klein and D. Murray, "Parallel tracking and mapping for small AR workspaces", in International Symposium on Mixed and Augmented Reality, pp. 225-234, Nov. 2007.
[9] S. Yang, S. Scherer, K. Schauwecker and A. Zell "Autonomous Landing of MAVs on an Arbitrarily Textured Landing Site using Onboard Monocular Vision", in Journal of Intelligent & Robotic Systems, 74(1-2):27-43, 2014.

Topic 5: Depth estimation from disparity : the stereo block matching algorithm.
[10]  Ashraf Anwar Fahmy, "Stereo Vision Based Depth Estimation Algorithm In Uncalibrated Rectification", in International Journal of Video and Image Processing and Network Security IJVIPNS IJENS Vol:13 No:02.
[11]  Yong-Sheng Chen et al., "Fast Block Matching Algorithm Based on the Winner-Update Strategy", in IEEE Transactions on Image Processing, VOL. 10, NO. 8, AUGUST 2001.
[12]  Scharstein, D. and Szeliski, R., "A taxonomy and evaluation of dense two-frame stereo correspondence algorithms", International Journal on Computer Vision 47, 7-42 April 2002.

Topic 6: Alternative control methods for flying robots.
[13]  Raffo G. V., Ortega M.G., Rubio F. R., "An integral predictive/nonlinear H∞ control structure for a quadrotor helicopter", Automatica, Vol. 46, January 2010, Pages 29-39.
[14]  Alexis K., Nikolakopoulos G., Tzes A., "Switching model predictive attitude control for a quadrotor helicopter subject to atmospheric disturbances", Control Engineering Practice, October 2011, Vol. 19(10), pp. 1195-1207.

Topic 7: Applications of quadrotor flying robots.
[15]  Spica R., Franchi A., Oriolo G., etc., "Aerial grasping of a moving target with a quadrotor UAV", in Proceedings of IEEE/RSJ International Conference on Intelligent Robotics and Systems (IROS) 2012.
[16]  Palunko I., Cruz P., Fierro R., "Agile Load Transportation: Safe and Efficient Load Manipulation with Aerial Robots", in IEEE Robotics & Automation Magazine, Sept. 2012, Vol. 19(3), pp. 69-79.
[17]  Augugliaro F., Mirjan A., Gramazio F., Kohler M., D'Andrea R., "Building tensile structures with flying machines", IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2013. Video: http://www.youtube.com/watch?v=_T0J5PB2av8&feature=youtu.be
[18]  J. Willmann, F. Augugliaro, T. Cadalbert, R. D'Andrea, F. Gramazio, and M. Kohler, "Aerial robotic construction: Towards a new field of architectural research", International Journal of Architectural Computing, Vol. 10-3, 2012, pp.439-460. Video: http://vimeo.com/33919488

Topic 8: Environment mapping with flying robots.
[19]  Hornung, Armin, et al. "OctoMap: an efficient probabilistic 3D mapping framework based on octrees." Autonomous Robots (2013): 1-18.

Topic 9: Bio-inspired flying robots.
[20]  L. Daler, J. Lecoeur, P. B. Haehlen, D. Floreano. "A Flying Robot with Adaptive Morphology for Multi-Modal Locomotion" in IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2013, Tokyo, Japan, 2013. Video: http://www.youtube.com/watch?v=WdCXcNt6OTs
[21]  Zufferey J. C., Klaptocz, Beyeler A., Nicoud J. D., Floreano, D. "A 10-gram Microflyer for Vision-based Indoor Navigation" in IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2006, Beijing, China, pp. 3267-3272. Video: http://www.youtube.com/watch?v=kzEHUjCrkuw

Topic 10: New designs of flying robots.
[22]  A. Briod, A. Klaptocz, J. C, Zufferey, D. Floreano. "The AirBurr: A Flying Robot That Can Exploit Collisions." International Conference on Complex Medical Engineering (CME), 2012 ICME, Kobe, Japan, 2012. Video: http://www.youtube.com/watch?v=dm90IV3tMjI
[23]  A. Briod, P. M. Kornatowski, J. C. Zufferey and D. Floreano. "A Collision Resilient Flying Robot", Journal of Field Robotics, 2014. Video: http://www.youtube.com/watch?v=TIpqxsVDgVs.
[24]  A. Briod, P. M. Kornatowski, A. Klaptocz, A. Garnier and M. Pagnamenta et al. "Contact-based navigation for an autonomous flying robot". International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan, 2013. Video: http://www.youtube.com/watch?v=Wt4jgRmoynA#t=19

Stilvorlage für Ausarbeitungen

  • Für Latex-Fans gibt es einen Style mit kleiner Demo. Dazu gibt es noch ein BibTex-File und die BibStyle Datei
  • Wenn Sie eine andere Textverarbeitung bevorzugen, orientieren Sie sich bitte an diesem Muster.

Diese Seite drucken