Difference between revisions of "Cognitive Robotics Lecture Schedule"
From David Vernon's Wiki
Line 154: | Line 154: | ||
|Vernon (1991), Sections 8.1-8.4 | |Vernon (1991), Sections 8.1-8.4 | ||
|Implement a program to move light cube from one position/pose to another position/pose | |Implement a program to move light cube from one position/pose to another position/pose | ||
+ | } | ||
Mini 2: Cognitive Robotics: Principles and Practice | Mini 2: Cognitive Robotics: Principles and Practice |
Revision as of 10:48, 16 January 2017
Mini 1: Cognitive Robotics: Foundations
Date | Lecture | Topic | Material covered | Required hardware | Required software | Reading | Homework exercises | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tues. 17 Jan. | 1 | Introduction | Motivation. Goals of the course. Syllabus and lecture schedule. Course operation. Industrial requirements for cognitive robots. Artificial cognitive systems. Cognitivist, emergent, and hybrid paradigms in cognitive science. Autonomy. AI and cognition in robotics. Software development tools for assignments. | None | None | Lecture 1 Slides. Vernon (2014), Chapters 1, 2, and 4. | Install software tools and run example assignment0 programs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 19 Jan. | 2 | Robot vision I | Computer vision. Optics, sensors, and image formation. Image acquisition. Fundamentals of image processing. Segmentation and edge detection. Introduction to OpenCV. | USB camera | OpenCV | Vernon (1991), Sections 2.2.1, 2.2.2, 3.1, 4.1, 4.2, 5.1, 5.2, 5.3.1. | Image acquisition and image processing using OpenCV | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 24 Jan. | 3 | Robot vision II | Segmentation. Hough transform: line, circle, and generalized transform; extension to codeword features. Colour-based segmentation. | USB camera | OpenCV | Szeliski (2010), Sections 3.1.2, 3.3.4, 4.3.2. Vernon (1991), Section 3.1, 3.2, 3.3, 4.2.1, 4.2.2, 5.3, 6.4. | Hough transforms and colour segmentation using OpenCV | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 26 Jan. | 4 | Robot vision III | Object recognition. Interest point operators. Gradient orientation histogram - SIFT descriptor. Colour histogram intersection. Haar features, boosting, face detection. | USB camera | OpenCV, Vienna University of Technology BLORT Library | Szeliski (2010), Sections 4.1.2, 4.1.3, 4.1.4, 4.1.5, 14.1.1. | Face detection and object recognition using OpenCV | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 31 Jan. | 5 | Robot vision IV | Homogeneous coordinates and transformations. Perspective transformation. Camera model and inverse perspective transformation. Stereo vision. Epipolar geometry. Structured light & RGB-D cameras. | USB camera | OpenCV | Szeliski (2010), Sections 2.1, 11.1, 11.2, 11.3. Vernon (1991), Section 8.6, 9.4.2. | Camera calibration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 2 Feb. | 6 | Robot vision V | Plane pop-out. RANSAC. Differential geometry. Surface normals and Gaussian sphere. Point clouds. 3D descriptors. | Kinect RGB-D sensor | Technische Universität Wien RGB-D Segmentation Library and V4R Library | Szeliski (2010), Sections 12.4. Point Cloud Library tutorial. | Analysis of point cloud data from RGB-D camera | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 7 Feb. | 7 | Robot vision VI | Visual attention. Spatial & selective attention. Saliency functions. Selective Tuning. Overt attention. Inhibition of return. Habituation. Top-down attention. | USB camera | CINDY cognitive architecture | Implementation of a saliency function for covert attention | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 9 Feb. | 8 | Mobile robots I | Differential drive locomotion. Forward and inverse kinematics. Holonomic and non-holonomic constraints. Cozmo mobile robot. | Anki Cozmo mobile robot | Anki Cozmo SDK, OpenCV | Python tutorial. Cozmo SDK API. OpenCV Python tutorial. | Cozmo locomotion. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 14 Feb. | 9 | Mobile robots II | Relative and absolute position estimation. Odometry. | Anki Cozmo mobile robot | Anki Cozmo SDK, OpenCV | Python tutorial. Cozmo SDK API. OpenCV Python tutorial. | Cozmo landmark recognition. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 16 Feb. | 10 | Mobile robots III | Map representation. Probabilistic map-based localization. Landmark-based localization. | Anki Cozmo mobile robot | Anki Cozmo SDK, OpenCV | Python tutorial. Cozmo SDK API. OpenCV Python tutorial. | Cozmo landmark recognition | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 21 Feb. | 11 | Mobile robots IV | SLAM: simultaneous localization and mapping. Extended Kalman Filter (EKF) SLAM. Visual SLAM. Particle filter SLAM. | Anki Cozmo mobile robot | Anki Cozmo SDK, OpenCV | Python tutorial. Cozmo SDK API. OpenCV Python tutorial. | Cozmo object recognition | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 23 Feb. | 12 | Mobile robots V | Graph search path planning. Potential field path planning. Navigation. Obstacle avoidance. Object search. | Anki Cozmo mobile robot | Anki Cozmo SDK, OpenCV | Python tutorial. Cozmo SDK API. OpenCV Python tutorial. | Cozmo navigation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 18 Feb. | 13 | Robot arms I | Homogeneous transformations. Frame-based pose specification. Denavit-Hartenberg specifications. Robot kinematics. | Lynxmotion 5DoF arm, Arduino interface | Arduino sketch programs for Lynxmotion | Paul (1981), Chapters 1 & 2. | Move end-effector along various paths in joint space | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 2 Mar. | 14 | Robot arms II | Analytic inverse kinematics. Iterative approaches. Kinematic structure learning. Kinematics structure correspondences. | Lynxmotion 5DoF arm, Arduino interface | Arduino sketch programs for Lynxmotion | Paul (1981), Chapter 3. | Move end-effector along various paths in Cartesian frame of reference | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tues. 7 Mar. | 15 | Robot arms III | Robot manipulation. Frame-based task specification. Vision-based pose estimation. | Lynxmotion 5DoF arm, Arduino interface | Arduino sketch programs for Lynxmotion | Vernon (1991), Sections 8.1-8.4. | Compute the pose of a light cube | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Thurs. 9 Mar. | 16 | Robot arms IV | Programming by demonstration. Language-based programming. | Lynxmotion 5DoF arm, Arduino interface | Arduino sketch programs for Lynxmotion | Vernon (1991), Sections 8.1-8.4 | Implement a program to move light cube from one position/pose to another position/pose
} Mini 2: Cognitive Robotics: Principles and Practice
Back to Cognitive Robotics |