Difference between revisions of "CISC849 F2019"

From class_wiki
Jump to: navigation, search
(Schedule)
(Schedule)
Line 164: Line 164:
 
|8
 
|8
 
|Sep. 19
 
|Sep. 19
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''<!--, Registration, features  -->
+
|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] (8-10, 37-77, finish with web demo), [http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture4.pdf Intro to NN] (83-88)<br>''HW #1 due''
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|9
 
|style="background:rgb(102, 204, 255)"|9
 
|Sep. 24
 
|Sep. 24
|More classification background
+
|Introduction to convolutional neural networks
|
+
|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)
|[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]-->
+
|<!--[https://docs.google.com/presentation/d/1MrC0XyhFf-Q0kHgy46hcWyMXI7mpEiJxqXMVlfiX2CU/edit?usp=sharing&authkey=COWqkvYK slides]-->
 
|-
 
|-
 
|10
 
|10
 
|Sep. 26
 
|Sep. 26
|<!--Object recognition (sample paper)-->Introduction to convolutional neural networks
+
|Finish detection & segmentation background, introduction to TensorFlow library<!--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] (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]  
 
|-
 
|-
 
|style="background:rgb(102, 204, 255)"|11
 
|style="background:rgb(102, 204, 255)"|11
 
|Oct. 1
 
|Oct. 1
|<!--Localization-->Finish detection & segmentation background, introduction to TensorFlow library
+
|<!--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]]
+
|<!--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]-->[[CISC849_S2018_HW2|HW #2]]
 
|-
 
|-
 
|12
 
|12
 
|Oct. 8
 
|Oct. 8
|<!--Particle filters and localization-->More on TensorFlow programming
+
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''<!--Particle filters and localization-->More on TensorFlow programming
 
|<!--[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]-->

Revision as of 10:29, 27 August 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
  • 20% Oral paper presentation (individual or pairs, 30 minutes)
  • 30% Two programming assignments (individual)
  • 50% Final project (teams of 1-3)
    • 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)

Instructions for Homeworks

Software
Note
  • 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

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 Finish background slides
3 Sep. 3 Introduction to DARPA Urban Challenge (UC), Robotics Challenge (DRC) and algorithm components slides
4 Sep. 5 Introduction to ROS; PCL tutorial

ARGOS challenge overview (8:00)

slides
Sample PCL programs (these require ROS)
ETH ROS mini course (in particular: overview, RViz, TF), ETH case study "ANYmal at the ARGOS Challenge"

5 Sep. 10
Register/add deadline
Plane/obstacle/object segmentation (3-D) RANSAC background HW #1
plane_fit.cpp (No ROS required)
6 Sep. 12 Finish plane segmentation, clustering, ICP slides
7 Sep. 17 Image classification background Stanford CS231n Image classification slides (6-61),
8 Sep. 19 More classification background Loss/optimization slides (8-10, 37-77, finish with web demo), Intro to NN (83-88)
HW #1 due
9 Sep. 24 Introduction to convolutional neural networks Stanford CS231n Convolutional Neural Networks slides (15-63, 71-78), CNN architectures (8-36), Detection and Segmentation slides (15-27)
10 Sep. 26 Finish detection & segmentation background, introduction to TensorFlow library YOLOv2, Redmon and Farhadi (CVPR 2017) Stanford CS231n Detection and Segmentation slides (44-49, 53-85), deep learning software slides (21-33, 40-59)
TensorFlow code sample from Stanford lecture
11 Oct. 1 HW #2
12 Oct. 8 NO CLASS
Instructor awayMore on TensorFlow programming
Oct. 10 Perception for stepping "Learning Locomotion over Rough Terrain using Terrain Templates", M. Kalakrishnan, J. Buchli, P. Pastor, and S. Schaal, IROS 2009 slides
DeepLoco highlights video (6:23)
14 Oct. 15 NO CLASS HW #2 due Friday, March 23
Oct. 17
Oct. 22
Withdraw deadline
15 Oct. 24 Imitation learning Berkeley Levine course IL slides (DAgger defined on slide 14); CMU Fragkiadaki IL slides (1-29)
Paper presentation choice due
16 Oct. 29 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
17 Oct. 31 Student paper presentation
18 Nov. 5 Student paper presentation Project proposal due Sunday, April 15
19 Nov. 7 Student paper presentations
20 Nov. 12 Student paper presentations
21 Nov. 14 Student paper presentation
22 Nov. 19 Student paper presentations
23 Nov. 21 Student paper presentation
24 Nov. 25 Instructor paper presentation Rasmussen, "Real-Time SLAM with Octree Evidence Grids for Exploration in Underwater Tunnels", N. Fairfield, G. Kantor, and D. Wettergreen, JFR 2007 DepthX slides
25 Nov. 28 Final project review
Dec. 3 NO CLASS
Work on projects...
26 Dec. 5 Final project presentations part I