Difference between revisions of "CISC849 F2019"

From class_wiki
Jump to: navigation, search
(Created page with "==Course information== {| class="wikitable" border="0" cellpadding="5" !width="5%"| !width="95%"| |- |valign="top"|'''Title''' |CISC849 ''Robot Vision and Learning'' |- |val...")
 
(Schedule)
 
(75 intermediate revisions by the same user not shown)
Line 21: Line 21:
 
|-
 
|-
 
|valign="top"|'''Office hours'''
 
|valign="top"|'''Office hours'''
|??, ??
+
|Mondays and Wednesdays, 2-3 pm
 
|-
 
|-
 
|valign="top"|'''Grading'''  
 
|valign="top"|'''Grading'''  
 
|
 
|
* 20% Oral paper presentation (individual or pairs, 30 minutes)
+
* 25% Oral paper presentation (individual, 30 minutes)
* 30% Two programming assignments (individual)
+
* 25% Programming/learning assignment (1-3 students)
* 50% Final project (teams of 1-3)
+
* 50% Final project (1-3 students)
 
** 10% = 2 page proposal, including planned methods, citations of relevant papers, data sources, and division of labor
 
** 10% = 2 page proposal, including planned methods, citations of relevant papers, data sources, and division of labor
 
** 10% = Joint 15-minute presentation on final results, with accompanying slides
 
** 10% = Joint 15-minute presentation on final results, with accompanying slides
Line 36: Line 36:
 
|Programming projects are due by midnight of the deadline day (with a grace period of a few hours afterward...after sunrise is definitely late).  A late homework is a 0 without a valid prior excuse.  To give you a little flexibility, you have 6 "late days" to use on homeworks to extend the deadline by one day each without penalty.  No more than three late days may be used per assignment.  Late days will automatically be subtracted, but as a courtesy please notify the instructor in an e-mail of your intention to use late days before the deadline.  See submission instructions below.
 
|Programming projects are due by midnight of the deadline day (with a grace period of a few hours afterward...after sunrise is definitely late).  A late homework is a 0 without a valid prior excuse.  To give you a little flexibility, you have 6 "late days" to use on homeworks to extend the deadline by one day each without penalty.  No more than three late days may be used per assignment.  Late days will automatically be subtracted, but as a courtesy please notify the instructor in an e-mail of your intention to use late days before the deadline.  See submission instructions below.
  
Students can discuss problems with one another in general terms, but must work independently on programming assignments.  This also applies to online and printed resources: you may consult them as references (as long as you cite them), but the words and source code you turn in must be yours alone.    The University's policies on academic dishonesty are set forth in the student code of conduct [http://www1.udel.edu/stuguide/17-18/code.html here].  
+
Students can discuss problems with one another in general terms, but must work independently on programming assignments.  This also applies to online and printed resources: you may consult them as references (as long as you cite them), but the words and source code you turn in must be yours alone.    The University's policies on academic dishonesty are set forth in the student code of conduct [http://www1.udel.edu/stuguide/19-20/code.html here].  
 
|-
 
|-
 
|valign="top"|'''Homeworks'''
 
|valign="top"|'''Homeworks'''
Line 46: Line 46:
 
==Possible Papers to Present (not a complete list)==
 
==Possible Papers to Present (not a complete list)==
  
 +
* [https://www.research-collection.ethz.ch/handle/20.500.11850/323783 Where Should I Walk? Predicting Terrain Properties from Images via Self-Supervised Learning], Wellhausen ''et al.'', ''IEEE Robotics and Automation Letters'', 2019
 
* [https://arxiv.org/pdf/1509.06825.pdf Supersizing Self-supervision: Learning to Grasp from 50K Tries and 700 Robot Hours], Pinto and Gupta, ICRA 2016
 
* [https://arxiv.org/pdf/1509.06825.pdf Supersizing Self-supervision: Learning to Grasp from 50K Tries and 700 Robot Hours], Pinto and Gupta, ICRA 2016
 
* [http://www.cs.ucf.edu/~rrahmati/manipulationLearning.html Learning real manipulation tasks from virtual demonstrations using LSTM], Rahmatizadeh ''et al.'', AAAI 2018
 
* [http://www.cs.ucf.edu/~rrahmati/manipulationLearning.html Learning real manipulation tasks from virtual demonstrations using LSTM], Rahmatizadeh ''et al.'', AAAI 2018
Line 63: Line 64:
 
* Detection/recognition-->
 
* Detection/recognition-->
  
 +
<!--
 
==Instructions for Homeworks==
 
==Instructions for Homeworks==
 
{| class="wikitable" border="0" cellpadding="5"  
 
{| class="wikitable" border="0" cellpadding="5"  
Line 74: Line 76:
 
** [http://www.pointclouds.org/documentation/ Documentation]
 
** [http://www.pointclouds.org/documentation/ Documentation]
 
** [https://larrylisky.com/2016/11/03/point-cloud-library-on-ubuntu-16-04-lts/ Installation on Ubuntu 16.04] (including prerequisite libraries)
 
** [https://larrylisky.com/2016/11/03/point-cloud-library-on-ubuntu-16-04-lts/ Installation on Ubuntu 16.04] (including prerequisite libraries)
<!--
+
 
* [http://www.ros.org/ ROS]
 
**[http://www.ros.org/wiki/ROS/Installation Installation instructions] (Kinetic, Ubuntu 16.04, Desktop-Full Install).  It includes [http://pointclouds.org/ PCL] for 3-D point cloud processing and [http://opencv.org/ OpenCV] for computer vision/image processing.  We will mainly be using ROS for these included libraries and the visualization functionality of the rviz tool, so don't worry about "learning" ROS.  If you're curious, links to more information are below. 
 
** [http://clearpath.wpengine.netdna-cdn.com/wp-content/uploads/2014/01/ROS-Cheat-Sheet-Landscape-v2.pdf "Cheatsheet"]
 
** [http://www.ros.org/wiki/roblab-whge-ros-pkg Tutorial videos]
 
** [http://www.ros.org/wiki/rviz/UserGuide Rviz user guide]
 
* [https://www.tensorflow.org/ TensorFlow]
 
** [https://www.tensorflow.org/install/ Installation instructions]
 
-->
 
 
|-
 
|-
 
|valign="top"|'''Note'''
 
|valign="top"|'''Note'''
 
|
 
|
<!--
 
* ROS works best with Linux.  If you don't have a Linux distribution running currently, it's not hard to add one to your machine.  The [http://www.ubuntu.com Ubuntu website] has comprehensive instructions on installing Ubuntu Linux from different sources (CD-ROM, USB stick, etc.) on a separate partition (aka "dual booting"), or you can use a virtual machine if you are comfortable with that.  I recommend version [https://www.ubuntu.com/download/desktop 16.04.3 LTS]. 
 
-->
 
 
* TensorFlow is available for multiple operating systems, but the processing demands can be high, especially if your computer does not have a new-ish Nvidia GPU  
 
* TensorFlow is available for multiple operating systems, but the processing demands can be high, especially if your computer does not have a new-ish Nvidia GPU  
 
* If you have significant problems installing/using PCL or TensorFlow on your own computer, I have a GPU workstation in my lab that can be used for selected training jobs.  Contact me *after* you have determined that your own machine is insufficient
 
* If you have significant problems installing/using PCL or TensorFlow on your own computer, I have a GPU workstation in my lab that can be used for selected training jobs.  Contact me *after* you have determined that your own machine is insufficient
<!--
+
|}
* PCL
 
** Do not install separately--we will just use version (1.7) included in ROS Kinetic
 
* OpenCV
 
** Do not install separately--we will just use version (3) included in ROS Kinetic
 
 
-->
 
-->
|}
 
  
 
==Schedule==
 
==Schedule==
Line 112: Line 98:
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|1
 
|style="background:rgb(102, 204, 255)"|1
|Feb. 6
+
|Aug. 27
 
|Background  
 
|Background  
 
|
 
|
|[https://docs.google.com/presentation/d/13tXZozuTBfFBte2vjSRkWXHlVJv0yBUDonySzBULUDI/edit?usp=sharing slides]
+
|[https://docs.google.com/presentation/d/1SRF2C1JlcfIh-eNwXQn2WLs3qvumT91bmPOLIvk1sfY/edit?usp=sharing slides]
 
|-
 
|-
 
|2
 
|2
|Feb. 8
+
|Aug. 29
|Finish background
 
|
 
|[https://docs.google.com/presentation/d/1aEWKMVET3Hnn5eCg-vX9Li2hSMPD7kpgGZSAMNUh-cM/edit?usp=sharing slides]
 
|-
 
|style="background:rgb(102, 204, 255)"|3
 
|Feb. 13
 
 
|Introduction to DARPA Urban Challenge (UC), Robotics Challenge (DRC) and algorithm components
 
|Introduction to DARPA Urban Challenge (UC), Robotics Challenge (DRC) and algorithm components
 
|
 
|
Line 131: Line 111:
 
* [https://www.youtube.com/watch?v=8P9geWwi9e0 DRC highlights] (5:47)  
 
* [https://www.youtube.com/watch?v=8P9geWwi9e0 DRC highlights] (5:47)  
 
* [http://www.pbs.org/wgbh/nova/tech/rise-of-the-robots.html NOVA "Rise of the Robots"]
 
* [http://www.pbs.org/wgbh/nova/tech/rise-of-the-robots.html NOVA "Rise of the Robots"]
|[https://docs.google.com/presentation/d/1gziYFt4rrb6tZ9fKm_oJ0tTHPHPX5LvKWcUo0k1mNBM/edit?usp=sharing slides]
+
|[https://docs.google.com/presentation/d/1u3Ud37TiMIzCZiERMBb7_QUIrq4hsR_yOWtFGLlgNCA/edit?usp=sharing slides]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|3
 +
|Sep. 3
 +
|More about Grand Challenges, trail-following
 +
|
 +
|[https://docs.google.com/presentation/d/1fxzYKVm8018leCbFE0VtYG1_oRWs6_sXpQww_Cw6ztQ/edit?usp=sharing slides]
 
|-
 
|-
 
|4
 
|4
|Feb. 15
+
|Sep. 5
|Introduction to ROS; PCL tutorial
+
|Traditional 2-D/3-D shape/object segmentation, part I
|
+
|<!--
[https://www.youtube.com/watch?v=kdx-DFI1VuA ARGOS challenge overview] (8:00)
+
[https://www.youtube.com/watch?v=kdx-DFI1VuA ARGOS challenge overview] (8:00)-->
 
|
 
|
[https://docs.google.com/presentation/d/1fTDJkK5XwvzuF3pPr3I7CHjG4lhqpDCOulPDamjcekM/edit?usp=sharing slides]<br>
+
[https://docs.google.com/presentation/d/1rwh5lStdPV1EWdynRA18m5_yGMVMfldZFdHOdWJGeFg/edit?usp=sharing slides]<!--<br>
 
[https://bitbucket.org/crasmuss/my_pcl_tutorial.git Sample PCL programs] (these require ROS)<br>[http://www.rsl.ethz.ch/education-students/lectures/ros.html ETH ROS mini course] (in particular: overview, RViz, TF), [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_ANYmal_2016.pdf ETH case study "ANYmal at the ARGOS Challenge"]
 
[https://bitbucket.org/crasmuss/my_pcl_tutorial.git Sample PCL programs] (these require ROS)<br>[http://www.rsl.ethz.ch/education-students/lectures/ros.html ETH ROS mini course] (in particular: overview, RViz, TF), [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_ANYmal_2016.pdf ETH case study "ANYmal at the ARGOS Challenge"]
 +
-->
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|5
 
|style="background:rgb(102, 204, 255)"|5
|Feb. 20<br>''Register/add deadline Feb. 19''
+
|Sep. 10<br>''Register/add deadline''
|Plane/obstacle/object segmentation (3-D)
+
|style="background:rgb(255, 102, 0)"|NO CLASS
|[https://en.wikipedia.org/wiki/Random_sample_consensus RANSAC background]
+
|<!--[https://en.wikipedia.org/wiki/Random_sample_consensus RANSAC background]-->
|[[CISC849_S2018_HW1|HW #1]]<br>[https://drive.google.com/open?id=1NcSmS-plATqoWhuv4-BSjQ5xept3ajOR plane_fit.cpp] (No ROS required)
+
|<!--[[CISC849_S2018_HW1|HW #1]]<br>[https://drive.google.com/open?id=1NcSmS-plATqoWhuv4-BSjQ5xept3ajOR plane_fit.cpp] (No ROS required)-->
 
|-
 
|-
 
|6
 
|6
|Feb. 22
+
|Sep. 12
|Finish plane segmentation, clustering, ICP
+
|Traditional 2-D/3-D shape/object segmentation, part II
 
|<!--"Autonomous Door Opening and Plugging In with a Personal Robot", W. Meeussen ''et al.'', IROS 2010<br>"Biped Navigation in Rough Environments using On-board Sensing", J. Chestnutt, Y. Takaoka, K. Suga, K. Nishiwaki, J. Kuffner, and S. Kagami, IROS 2009-->
 
|<!--"Autonomous Door Opening and Plugging In with a Personal Robot", W. Meeussen ''et al.'', IROS 2010<br>"Biped Navigation in Rough Environments using On-board Sensing", J. Chestnutt, Y. Takaoka, K. Suga, K. Nishiwaki, J. Kuffner, and S. Kagami, IROS 2009-->
|[https://docs.google.com/presentation/d/17D8zMyRES-0sN7OeW28V0xFLqVOE4pFvjscs6eVEzL0/edit?usp=sharing slides]<!--
+
|[https://docs.google.com/presentation/d/1nQ7mG2fbxH_HzHyriiiQ90zTmYmw-RlsRiep7cGOHsg/edit?usp=sharing slides]<!--
 
(Clustering example added [https://bitbucket.org/crasmuss/my_pcl_tutorial.git here])-->
 
(Clustering example added [https://bitbucket.org/crasmuss/my_pcl_tutorial.git here])-->
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|7
 
|style="background:rgb(102, 204, 255)"|7
|Feb. 27
+
|Sep. 17
 
|Image classification background<!--Clustering, normal estimation-->
 
|Image classification background<!--Clustering, normal estimation-->
 
|
 
|
Line 163: Line 150:
 
|-
 
|-
 
|8
 
|8
|Mar. 1
+
|Sep. 19
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''<!--, Registration, features  -->
+
|style="background:rgb(255, 102, 0)"|NO CLASS<!--More classification background-->
 
|
 
|
|<!--[http://www.pointclouds.org/assets/icra2013/registration.pdf PCL registration], [http://www.pointclouds.org/assets/uploads/cglibs13_features.pdf features]--><br>''HW #1 due''
+
|<!--[http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture3.pdf Loss/optimization slides] (7-10, 37-77, finish with web demo), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture4.pdf Intro to NN] (83-88)-->
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|9
 
|style="background:rgb(102, 204, 255)"|9
|Mar. 6
+
|Sep. 24
|More classification background
+
|More classification background; Introduction to convolutional neural networks
 
|
 
|
|[http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture3.pdf Loss/optimization slides] (8-10, 37-77, finish with web demo), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture4.pdf Intro to NN] (83-88)<!--[https://docs.google.com/presentation/d/1MrC0XyhFf-Q0kHgy46hcWyMXI7mpEiJxqXMVlfiX2CU/edit?usp=sharing&authkey=COWqkvYK slides]-->
+
|Stanford CS231n: [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture3.pdf Loss/optimization slides] (8-10, 37-77, finish with web demo), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture4.pdf Intro to NN] (83-88), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture5.pdf Convolutional Neural Networks slides] (15-63, 71-78), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture9.pdf CNN architectures] (8-36)<!--[https://docs.google.com/presentation/d/1MrC0XyhFf-Q0kHgy46hcWyMXI7mpEiJxqXMVlfiX2CU/edit?usp=sharing&authkey=COWqkvYK slides]-->
 
|-
 
|-
 
|10
 
|10
|Mar. 8
+
|Sep. 26
|<!--Object recognition (sample paper)-->Introduction to convolutional neural networks
+
|Detection & segmentation background<!--Object recognition (sample paper)-->
|<!--[http://research.microsoft.com/pubs/145347/bodypartrecognition.pdf "Real-Time Human Pose Recognition in Parts from Single Depth Images"], J. Shotton ''et al.'', CVPR 2011.  ''Recognition, classification, RGB-D''-->
+
|[https://arxiv.org/abs/1612.08242 YOLOv2, Redmon and Farhadi] (CVPR 2017)<!--[http://research.microsoft.com/pubs/145347/bodypartrecognition.pdf "Real-Time Human Pose Recognition in Parts from Single Depth Images"], J. Shotton ''et al.'', CVPR 2011.  ''Recognition, classification, RGB-D''-->
|Stanford CS231n [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture5.pdf Convolutional Neural Networks slides] (15-63, 71-78), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture9.pdf CNN architectures] (8-36), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture11.pdf Detection and Segmentation slides] (15-27)  
+
|Stanford CS231n [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture11.pdf Detection and Segmentation slides] (15-27, 44-85, 89-94)
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|11
 
|style="background:rgb(102, 204, 255)"|11
|Mar. 13
+
|Oct. 1
|<!--Localization-->Finish detection & segmentation background, introduction to TensorFlow library
+
|TensorFlow programming and homework<!--Localization-->
|[https://arxiv.org/abs/1612.08242 YOLOv2, Redmon and Farhadi] (CVPR 2017)
+
|
|<!--ETH localization lectures: [http://nameless.cis.udel.edAishwarya Dangu/class_data/849_s2018/ETH_Localization_I_2017.pdf 1] [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_Localization_II_2017.pdf 2]--><!--[https://docs.google.com/presentation/d/1CTGsRG7yvJVfZyBfaC1ZpBoUJ3ALbLaYnMeYZDM1wRA/edit?usp=sharing slides]-->Stanford CS231n [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture11.pdf Detection and Segmentation slides] (44-49, 53-85), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture8.pdf deep learning software slides] (21-33, 40-59)<br>[https://drive.google.com/file/d/104GFBl4J6bseaTNBcqW2ub8hyXtL99d1/view?usp=sharing TensorFlow code sample from Stanford lecture]<br>[[CISC849_S2018_HW2|HW #2]]
+
|[http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture8.pdf Deep learning software slides] (21-33, 40-59)<br>[https://docs.google.com/presentation/d/1LzYpF66bT-LGEAifoDFmU-fPznlXWaKm0TnNKFXDWvM/edit?usp=sharing my slides] <!--ETH localization lectures: [http://nameless.cis.udel.edAishwarya Dangu/class_data/849_s2018/ETH_Localization_I_2017.pdf 1] [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_Localization_II_2017.pdf 2]--><!--[https://docs.google.com/presentation/d/1CTGsRG7yvJVfZyBfaC1ZpBoUJ3ALbLaYnMeYZDM1wRA/edit?usp=sharing slides]--><br>[[CISC849_F2019_HW|Homework assigned]]
 
|-
 
|-
|12
+
|
|Mar. 15
+
|Oct. 3
|<!--Particle filters and localization-->More on TensorFlow programming
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''<!--Particle filters and localization-->
 
|<!--[http://www2.informatik.uni-freiburg.de/~wurm/papers/hornung10iros.pdf Humanoid Robot Localization in Complex Indoor Environments], A. Hornung, K. Wurm, M. Bennewitz, IROS 2010-->
 
|<!--[http://www2.informatik.uni-freiburg.de/~wurm/papers/hornung10iros.pdf Humanoid Robot Localization in Complex Indoor Environments], A. Hornung, K. Wurm, M. Bennewitz, IROS 2010-->
 
|<!--[http://robots.stanford.edu/probabilistic-robotics/ppt/particle-filters.ppt Thrun particle filtering slides]-->
 
|<!--[http://robots.stanford.edu/probabilistic-robotics/ppt/particle-filters.ppt Thrun particle filtering slides]-->
|-
 
|style="background:rgb(102, 204, 255)"|13
 
|Mar. 20
 
|<!--Motion planning background-->Perception for stepping
 
|"Learning Locomotion over Rough Terrain using Terrain Templates", M. Kalakrishnan, J. Buchli, P. Pastor, and S. Schaal, IROS 2009
 
|[https://docs.google.com/presentation/d/1HQdeZ2JjATrWN7Y7BIgpeiFoIJa0J44P2d0bN_YSwRY/edit?usp=sharing slides]<br>[https://www.youtube.com/watch?v=G4lT9CLyCNw DeepLoco highlights video] (6:23)
 
|-
 
|14
 
|Mar. 22
 
|style="background:rgb(255, 102, 0)"|NO CLASS<!--Mapping-->
 
|<!--[http://wiki.ros.org/gmapping gmapping] demos: [http://www.youtube.com/watch?v=7iIDdvCXIFM Pirobot], [http://www.youtube.com/watch?v=_jwBKo0SXng MIT]<br>[http://www.youtube.com/watch?v=F8pdObV_df4 Darmstadt "Hector" mapping]<br>
 
Nao 3-D mapping and planning: [http://www.youtube.com/watch?v=srcx7lPoIfw 1], [http://www.youtube.com/watch?v=g2NZ_EasJv0 2]-->
 
|<!--ETH SLAM lectures: [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_SLAM_I_2017.pdf 1] [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_SLAM_II_2017.pdf 2]<!--[http://nameless.cis.udel.edu/class_data/cisc829/oct18/thrun_fastslam.pdf Thrun FastSLAM slides] (grids from slide 29)<br>[http://www.youtube.com/watch?v=3Yl2aq28LFQ Accompanying Stachniss lecture]-->''HW #2 due Friday, March 23''
 
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|
 
|style="background:rgb(102, 204, 255)"|
|Mar. 27
+
|Oct. 8
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Spring break''
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''<!--Motion planning background-->
|
 
 
|
 
|
 +
|<!--[https://docs.google.com/presentation/d/1HQdeZ2JjATrWN7Y7BIgpeiFoIJa0J44P2d0bN_YSwRY/edit?usp=sharing slides]<br>-->
 +
|-
 +
|12
 +
|Oct. 10
 +
|Perception for stepping
 +
|[https://ieeexplore.ieee.org/abstract/document/5354701 "Learning Locomotion over Rough Terrain using Terrain Templates"], M. Kalakrishnan, J. Buchli, P. Pastor, and S. Schaal, IROS 2009
 +
|[https://www.youtube.com/watch?v=DzTvIPrt0DY ANYmal video], [http://nameless.cis.udel.edu/class_data/849_s2018/ETH_ANYmal_2016.pdf ANYmal slides], [https://www.youtube.com/watch?v=TBppX3Ba_f0 ANYmal "Where Should I Walk?" video], [https://docs.google.com/presentation/d/14df-g9ph_W0t1ieMowREp1RH_a6BnvTtR7cmkEe8g8A/edit?usp=sharing Kalakrishnan slides]
 
|-
 
|-
|
+
|style="background:rgb(102, 204, 255)"|13
|Mar. 29
+
|Oct. 15
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Spring break''
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''
 
|
 
|
 
|
 
|
 
|-
 
|-
|style="background:rgb(102, 204, 255)"|15
+
|14
|Apr. 3
+
|Oct. 17
 
|Imitation learning
 
|Imitation learning
 
|
 
|
 +
* [https://www.youtube.com/watch?v=hUoDNeZS4so Agile Autonomous Driving using End-to-End Deep Imitation Learning], Pan ''et al.'', RSS 2018
 
* [http://rpg.ifi.uzh.ch/docs/RAL16_Giusti.pdf A Machine Learning Approach to Visual Perception of Forest Trails for Mobile Robots], Giusti ''et al.'', ''IEEE Robotics and Automation Letters'', 2016
 
* [http://rpg.ifi.uzh.ch/docs/RAL16_Giusti.pdf A Machine Learning Approach to Visual Perception of Forest Trails for Mobile Robots], Giusti ''et al.'', ''IEEE Robotics and Automation Letters'', 2016
 
* [https://arxiv.org/pdf/1604.07316.pdf End to End Learning for Self-Driving cars], Bojarski ''et al.'', 2016
 
* [https://arxiv.org/pdf/1604.07316.pdf End to End Learning for Self-Driving cars], Bojarski ''et al.'', 2016
* [https://www.youtube.com/watch?v=NJU9ULQUwng Dave-2 driving a Lincoln], [https://www.youtube.com/watch?v=umRdt3zGgpU Quadcopter Navigation in the Forest...], [https://www.youtube.com/watch?v=hNsP6-K3Hn4 DAgger for drones]
+
* <!--[https://www.youtube.com/watch?v=NJU9ULQUwng Dave-2 driving a Lincoln], -->[https://www.youtube.com/watch?v=umRdt3zGgpU Quadcopter Navigation in the Forest...], [https://www.youtube.com/watch?v=hNsP6-K3Hn4 DAgger for drones]
 
* [https://www.youtube.com/watch?v=ZMhO1FO_j0o&t=566s Hal Daume DAgger explanation] (9:26-12:43)
 
* [https://www.youtube.com/watch?v=ZMhO1FO_j0o&t=566s Hal Daume DAgger explanation] (9:26-12:43)
|[http://rll.berkeley.edu/deeprlcourse/ Berkeley Levine course] [http://rll.berkeley.edu/deeprlcourse/f17docs/lecture_2_behavior_cloning.pdf IL slides] (DAgger defined on slide 14); [https://katefvision.github.io/katefSlides/immitation_learning_I_katef.pdf CMU Fragkiadaki IL slides] (1-29)<br>''Paper presentation choice due''
+
|[http://rll.berkeley.edu/deeprlcourse/ Berkeley Levine course] [http://rll.berkeley.edu/deeprlcourse/f17docs/lecture_2_behavior_cloning.pdf IL slides] (DAgger defined on slide 14); [https://katefvision.github.io/katefSlides/immitation_learning_I_katef.pdf CMU Fragkiadaki IL slides] (1-29)
 +
<br>''Homework due''
 +
|-
 +
|style="background:rgb(102, 204, 255)"|15
 +
|Oct. 22<br>''Withdraw deadline''
 +
|Reinforcement learning
 +
|[http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html UCL Silver course]: [http://nameless.cis.udel.edu/class_data/849_s2018/intro_RL.pdf RL slides] (7-42), [https://www.youtube.com/watch?v=2pWv7GOvuf0 RL video] (15:40-21:20, 1:02:13-1:04:40 contains movies missing from PDF); [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture14.pdf Stanford deep-Q lecture slides] (23-62); [https://www.nature.com/articles/nature14236.pdf original deep-Q paper]
 +
|
 +
<!--<br>''Paper presentation choice due''-->
 
|-
 
|-
 
|16
 
|16
|Apr. 5
+
|Oct. 24
|Reinforcement learning
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Break before presentations start''
 +
|
 
|
 
|
|[http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html UCL Silver course]: [http://nameless.cis.udel.edu/class_data/849_s2018/intro_RL.pdf RL slides] (7-42), [https://www.youtube.com/watch?v=2pWv7GOvuf0 RL video] (15:40-21:20, 1:02:13-1:04:40 contains movies missing from PDF); [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture14.pdf Stanford deep-Q lecture slides] (23-62); [https://www.nature.com/articles/nature14236.pdf original deep-Q paper]
 
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|17
 
|style="background:rgb(102, 204, 255)"|17
|Apr. 10<br>
+
|Oct. 29
''Withdraw deadline Apr. 9''
 
 
|Student paper presentation
 
|Student paper presentation
|
+
|Maxim Bazik, "PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud"
* Peng Su, [https://www.cv-foundation.org/openaccess/content_cvpr_2016/papers/Yeung_End-To-End_Learning_of_CVPR_2016_paper.pdf "End-to-end Learning of Action Detection from Frame Glimpses in Videos"]
 
 
|
 
|
 
|-
 
|-
 
|18
 
|18
|Apr. 12
+
|Oct. 31
 
|Student paper presentation
 
|Student paper presentation
|
+
|Woosik Lee, "Learning Wheel Odometry and IMU Errors for Localization"
* Patrick Geneva, [http://openaccess.thecvf.com/content_cvpr_2017/papers/Dong_Visual-Inertial-Semantic_Scene_Representation_CVPR_2017_paper.pdf "Visual-Inertial-Semantic Scene Representation for 3D Object Detection"]
+
|<!--''Project proposal due Sunday, April 15''-->
|''Project proposal due Sunday, April 15''
 
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|19
 
|style="background:rgb(102, 204, 255)"|19
|Apr. 17<br>
+
|Nov. 5
 
|Student paper presentations
 
|Student paper presentations
|
+
|Yi Liu, "Reinforced Cross-Modal Matching and Self-Supervised Imitation Learning for Vision-Language Navigation"
* Zengxiang Lu, "Image Generation from Scene Graphs"
 
* Aishwarya Dang, [http://ieeexplore.ieee.org/document/7353481/ "VoxNet: A 3D Convolutional Neural Network for real-time object recognition"]
 
 
|
 
|
 
|-
 
|-
 
|20
 
|20
|Apr. 19
+
|Nov. 7
 
|Student paper presentations
 
|Student paper presentations
|
+
|Chuchu Chen, "Deep Learning for 2D Scan Matching and Loop Closure"<br>
* Sumeet Gupta, [https://arxiv.org/abs/1704.05588 "Learning to Fly by Crashing"]
+
Chirantan Ghosh, "Video Action Transformer Network"
* Yulin Yang, [http://rpg.ifi.uzh.ch/docs/RAL18_Loquercio.pdf "DroNet: Learning to Fly by Driving"]
 
 
|
 
|
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|21
 
|style="background:rgb(102, 204, 255)"|21
|Apr. 24
+
|Nov. 12
 
|Student paper presentation
 
|Student paper presentation
|
+
|Sha Liu, "Robots that can adapt like animals"<br>
Matt Schmittle, [https://arxiv.org/pdf/1509.06825.pdf Supersizing Self-supervision: Learning to Grasp from 50K Tries and 700 Robot Hours]
+
Seyedalireza Khoshsirat, "PCN: Point Completion Network"
 
|
 
|
 
|-
 
|-
 
|22
 
|22
|Apr. 26
+
|Nov. 14
 
|Student paper presentations
 
|Student paper presentations
|
+
|Shengye Li, "Learning Common and Specific Features for RGB-D Semantic Segmentaion with Deconvolutional Networks"<br>
* Apoorva Patil, [http://www.cs.ubc.ca/~van/papers/2017-TOG-deepLoco/ DeepLoco: Dynamic Locomotion Skills Using Hierarchical Deep Reinforcement Learning]
+
Eric Wright, "Generalization through Simulation: Integrating Simulated and Real Data into Deep Reinforcement Learning for Vision-Based Autonomous Flight"
* Leighanne Hsu, [http://www2.informatik.uni-freiburg.de/~hornunga/pub/maier12humanoids.pdf Real-Time Navigation in 3D Environments Based on Depth Camera Data]
 
 
|<!--[https://docs.google.com/presentation/d/19Wm-H2ttW_m5pan_lCXDzmk468gLoud6Xug_2_i0mWI/edit?usp=sharing&authkey=CKmYmJYI slides]-->
 
|<!--[https://docs.google.com/presentation/d/19Wm-H2ttW_m5pan_lCXDzmk468gLoud6Xug_2_i0mWI/edit?usp=sharing&authkey=CKmYmJYI slides]-->
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|23
 
|style="background:rgb(102, 204, 255)"|23
|May 1
+
|Nov. 19
 
|Student paper presentation
 
|Student paper presentation
|Yiqun Jia, [https://arxiv.org/pdf/1603.03833.pdf From Virtual Demonstration to Real-World Manipulation Using LSTM and MDN]
+
|Shivanand Sheshappanavar, "PointFlow: 3D Point Cloud Generation with Continuous Normalizing Flows"<br>Zhang Guo, "Believe It or Not, We Know What You Are Looking at!"
 
|
 
|
 
|-
 
|-
 
|24
 
|24
|May 3
+
|Nov. 21
|Instructor paper presentation
+
|Student paper presentations<!--Instructor paper presentation: RL for locomotion-->
|Rasmussen, [http://www.ri.cmu.edu/publication_view.html?pub_id=5590 "Real-Time SLAM with Octree Evidence Grids for Exploration in Underwater Tunnels"], N. Fairfield, G. Kantor, and D. Wettergreen, JFR 2007
+
|Nikhil Gothankar, "Fast Online Object Tracking and Segmentation: A Unifying Approach"<br>
|[https://docs.google.com/presentation/d/1CTGsRG7yvJVfZyBfaC1ZpBoUJ3ALbLaYnMeYZDM1wRA/edit#slide=id.i31 DepthX slides]
+
Vineet Singh, "Spatial Transformer Networks"<!--Rasmussen, [http://www.ri.cmu.edu/publication_view.html?pub_id=5590 "Real-Time SLAM with Octree Evidence Grids for Exploration in Underwater Tunnels"], N. Fairfield, G. Kantor, and D. Wettergreen, JFR 2007-->
 +
|<!--[https://www.youtube.com/watch?v=G4lT9CLyCNw DeepLoco highlights video] (6:23)--><!--[https://docs.google.com/presentation/d/1CTGsRG7yvJVfZyBfaC1ZpBoUJ3ALbLaYnMeYZDM1wRA/edit#slide=id.i31 DepthX slides]-->
 
|-
 
|-
|style="background:rgb(102, 204, 255)"|25
+
|style="background:rgb(102, 204, 255)"|
|May 8
+
|Nov. 26
|Final project review
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Thanksgiving break''
 
|
 
|
 
|
 
|
 
|-
 
|-
 
|
 
|
|May 10
+
|Nov. 28
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Work on projects...''
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Thanksgiving break''
 
|
 
|
 
|
 
|
 
|-
 
|-
|style="background:rgb(102, 204, 255)"|26
+
|style="background:rgb(102, 204, 255)"|25
|May 15
+
|Dec. 3
|Final project presentations part I
+
|Student paper presentation
|
+
|Md Mottalib, "An Empirical Evaluation of Deep Learning on Highway Driving"
|
 
|-
 
|27
 
|May 16
 
|Final project presentations part II
 
|
 
 
|
 
|
 
|-
 
|-
|28
+
|26
|May 21
+
|Dec. 5, 6
|Final project presentations part III
+
|Final project presentations
 
|
 
|
 
|
 
|
 
|}
 
|}

Latest revision as of 21:59, 2 December 2019

Course information

Title CISC849 Robot Vision and Learning
Description Survey of image-based 2-D and 3-D sensing algorithms for mobile robot navigation and interaction, including motion estimation, obstacle segmentation, terrain modeling, and object recognition, with a particular focus on deep learning techniques to dramatically improve performance.
When Tuesdays and Thursdays, 2-3:15 pm
Where Gore 317
Instructor Christopher Rasmussen, 446 Smith Hall, cer@cis.udel.edu
Office hours Mondays and Wednesdays, 2-3 pm
Grading
  • 25% Oral paper presentation (individual, 30 minutes)
  • 25% Programming/learning assignment (1-3 students)
  • 50% Final project (1-3 students)
    • 10% = 2 page proposal, including planned methods, citations of relevant papers, data sources, and division of labor
    • 10% = Joint 15-minute presentation on final results, with accompanying slides
    • 30% = Actual results and estimated effort, factoring in difficulty of problem tackled
Academic policies Programming projects are due by midnight of the deadline day (with a grace period of a few hours afterward...after sunrise is definitely late). A late homework is a 0 without a valid prior excuse. To give you a little flexibility, you have 6 "late days" to use on homeworks to extend the deadline by one day each without penalty. No more than three late days may be used per assignment. Late days will automatically be subtracted, but as a courtesy please notify the instructor in an e-mail of your intention to use late days before the deadline. See submission instructions below.

Students can discuss problems with one another in general terms, but must work independently on programming assignments. This also applies to online and printed resources: you may consult them as references (as long as you cite them), but the words and source code you turn in must be yours alone. The University's policies on academic dishonesty are set forth in the student code of conduct here.

Homeworks Assignment submissions should consist of a directory containing all code (your .cpp files, makefile, etc.), any output data generated (e.g., images, movies, etc.), and an explanation of your approach, what worked and didn't work, etc. contained in a separate text or HTML file. Do not submit executables or .o files, please! The directory you submit for each assignment should be packaged by tar'ing and gzip'ing it or just zip'ing it. The resulting file should be submitted through Canvas.

You may develop your C/C++ code in any fashion that is convenient--that is, with any compiler and operating system that you want. However, we will be grading your homework on a Linux system with a makefile, and so you must avoid OS- and hardware-specific functions and provide a makefile for us that will work (like one of the templates above).

Possible Papers to Present (not a complete list)


Schedule

Note: The blue squares in the "#" column below indicate Tuesdays.

# Date Topic Links/Readings/videos Assignments/slides
1 Aug. 27 Background slides
2 Aug. 29 Introduction to DARPA Urban Challenge (UC), Robotics Challenge (DRC) and algorithm components slides
3 Sep. 3 More about Grand Challenges, trail-following slides
4 Sep. 5 Traditional 2-D/3-D shape/object segmentation, part I

slides

5 Sep. 10
Register/add deadline
NO CLASS
6 Sep. 12 Traditional 2-D/3-D shape/object segmentation, part II slides
7 Sep. 17 Image classification background Stanford CS231n Image classification slides (6-61),
8 Sep. 19 NO CLASS
9 Sep. 24 More classification background; Introduction to convolutional neural networks Stanford CS231n: Loss/optimization slides (8-10, 37-77, finish with web demo), Intro to NN (83-88), Convolutional Neural Networks slides (15-63, 71-78), CNN architectures (8-36)
10 Sep. 26 Detection & segmentation background YOLOv2, Redmon and Farhadi (CVPR 2017) Stanford CS231n Detection and Segmentation slides (15-27, 44-85, 89-94)
11 Oct. 1 TensorFlow programming and homework Deep learning software slides (21-33, 40-59)
my slides
Homework assigned
Oct. 3 NO CLASS
Instructor away
Oct. 8 NO CLASS
Instructor away
12 Oct. 10 Perception for stepping "Learning Locomotion over Rough Terrain using Terrain Templates", M. Kalakrishnan, J. Buchli, P. Pastor, and S. Schaal, IROS 2009 ANYmal video, ANYmal slides, ANYmal "Where Should I Walk?" video, Kalakrishnan slides
13 Oct. 15 NO CLASS
Instructor away
14 Oct. 17 Imitation learning Berkeley Levine course IL slides (DAgger defined on slide 14); CMU Fragkiadaki IL slides (1-29)


Homework due

15 Oct. 22
Withdraw deadline
Reinforcement learning UCL Silver course: RL slides (7-42), RL video (15:40-21:20, 1:02:13-1:04:40 contains movies missing from PDF); Stanford deep-Q lecture slides (23-62); original deep-Q paper
16 Oct. 24 NO CLASS
Break before presentations start
17 Oct. 29 Student paper presentation Maxim Bazik, "PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud"
18 Oct. 31 Student paper presentation Woosik Lee, "Learning Wheel Odometry and IMU Errors for Localization"
19 Nov. 5 Student paper presentations Yi Liu, "Reinforced Cross-Modal Matching and Self-Supervised Imitation Learning for Vision-Language Navigation"
20 Nov. 7 Student paper presentations Chuchu Chen, "Deep Learning for 2D Scan Matching and Loop Closure"

Chirantan Ghosh, "Video Action Transformer Network"

21 Nov. 12 Student paper presentation Sha Liu, "Robots that can adapt like animals"

Seyedalireza Khoshsirat, "PCN: Point Completion Network"

22 Nov. 14 Student paper presentations Shengye Li, "Learning Common and Specific Features for RGB-D Semantic Segmentaion with Deconvolutional Networks"

Eric Wright, "Generalization through Simulation: Integrating Simulated and Real Data into Deep Reinforcement Learning for Vision-Based Autonomous Flight"

23 Nov. 19 Student paper presentation Shivanand Sheshappanavar, "PointFlow: 3D Point Cloud Generation with Continuous Normalizing Flows"
Zhang Guo, "Believe It or Not, We Know What You Are Looking at!"
24 Nov. 21 Student paper presentations Nikhil Gothankar, "Fast Online Object Tracking and Segmentation: A Unifying Approach"

Vineet Singh, "Spatial Transformer Networks"

Nov. 26 NO CLASS
Thanksgiving break
Nov. 28 NO CLASS
Thanksgiving break
25 Dec. 3 Student paper presentation Md Mottalib, "An Empirical Evaluation of Deep Learning on Highway Driving"
26 Dec. 5, 6 Final project presentations