• Course Code:  ENG02

  • Term:  April 2015

  • Start Date:  Apr 13 2015

  • End Date:  Jun 29 2015

  • Duration:  11 weeks

  • Course Author(s)
    Prof Peter Corke

This course has ended

Edcast eng02prod archived

Robotic Vision

April 2015

  • Petercorke portrait
    Professor Peter Corke


Robotic vision introduces you to the field of computer vision and the mathematics and algorithms that underpin it. You will learn how to interpret images to determine the color, size, shape and position of objects in the scene. We will work with you to build an intelligent vision system that can recognise objects of different colors and shapes. This course and the Introduction to robotics MOOC are based on a 13 week undergraduate course Introduction to robotics at the Queensland University of Technology (QUT).

Learning outcomes

By the end of this course you should be able to:

  • describe and explain the utility of vision as a sensor for robots and evaluate the challenges inherent in visual information
  • describe the underlying principles of common image processing techniques and the circumstances where they are applicable, the rationale for reducing image pixels to features and the principles image region segmentation and feature extraction
  • describe the mathematical and geometric principles underlying the formation of images
  • describe the principles of continuous spectra, trichromatic vision and the separation of chrominance and luminance information
  • demonstrate the software skills to import images from a variety of sources into MATLAB and perform a number of image processing and feature extraction algorithms using MATLAB.

If you do the optional project you should also be able to:

  • apply the mathematical and algorithmic and control principles of computer vision to implement a working vision system.

If you have studied Introduction to robotics (MOOC) and completed the optional project you should also be able to:

  • integrate the vision system with the robot arm to create a functional robot which can recognize the desired object and to commands to move to it.

Assumed knowledge

It would be beneficial to have knowledge of basic programming either of MATLAB or another object-oriented programming language. MATLAB tutorials are available when you commence the course. You will also need to be familiar with some of the following areas of mathematics: vectors and spaces, matrices, and eigenvalues and eigenvectors. You can review these topics by visiting the Khan AcademyLink opens in new window using the links below.  


Throughout the course you will have the opportunity to complete assessable quizzes and programming exercises. These will be automatically marked. The programming exercises will consist of several MATLAB tasks and will be based on the lecture content for that week.

Certificate of participation

If you complete the assessment successfully you will receive a certificate of participation. The overall assessment is worth a total of 240 points (120 points for assessable quizzes and 120 points for MATLAB programming tasks). You need to achieve an overall score of 50% (120 points). The quizzes and programming tasks are weighted equally, so it does not matter how you make up your 120 points.

Build a robotic vision system

This optional project is a valuable opportunity to apply your knowledge as the course progresses. You will use MATLAB software to program a vision system that will find shapes and colors in an image. This is what equips a robot to navigate its way around its environment. If you have completed the optional project in Introduction to robotics (MOOC) and built a robot arm, you will be able to combine this with the vision system in an extension activity we do in the Final week after lectures end.

Course options

You can choose how you interact with this course. Following registration you can:

  1. Study all of the content and complete the assessable quizzes and programming exercises. You will receive a certificate of participation if you pass the assessment.
  2. Opt not to submit the assessment but participate in the course, accessing the lectures, content, quizzes and programming exercises at your leisure. You will not receive a certificate.
  3. Choose option (a) or (b) and complete a robot building project which is self-assessed.


If you choose course options (a) and (c) you should plan to spend about 4–8 hours per week on this course. Depending on your level of skill with MATLAB and programming in general, your weekly studies might include:

  • 2 hours viewing the lecture videos and completing the optional quiz questions to check your understanding
  • 30 minutes for each of the six weekly assessable quizzes
  • 2 hours for each of the six weekly programming exercises
  • 1–2 hours developing the robot vision system (optional project) or doing further research and/or communicating on the discussion forum.



You will need a computer capable of running MATLAB. Visit the MathWorksLink opens in new window website to check the system requirementsLink opens in new window.

If you plan to do the optional project you will need a webcam attached to the computer or a mobile phone and the ability to transfer images to the computer.


You will need the following software:

  • MATLAB, a proprietary technical computing and visualisation package, is a core requirement. MathWorks have generously provided a downloadable license to use MATLAB for free for the duration of the course.
  • The open source Robotic vision toolbox for MATLAB which will be available from the course site.


Access to the textbook written by Professor Peter Corke (2011), Robotics, Vision and Control: Fundamental Algorithms in MATLAB (Springer) is optional, but considered beneficial. The textbook is available for you to purchase at a significant discount. The course includes free extracts from the textbook for you to read online while studying with Peter.

Course structure

The course content will be released weekly. Each week you will watch the videos for two lectures and check your understanding as you go by answering questions and doing exercises. After the two lectures you will complete an assessment quiz and an assessment programming exercise. Throughout the course you are encouraged to take part in the discussion forum. You can also choose to do the optional project.

Getting started

Take the time to prepare before lectures commence. Familiarise yourself with the site, watch the required videos, introduce yourself with a post to the forum, join in the discussion, ensure you have everything you need and complete the recommended activities.

Week 1

This week we will look at how robots sense the world around them. We will explore the sense of vision, what this means for robots and learn how to get an image into MATLAB where we can begin to process it. The skills you learn and the tools we use will be essential for the programming exercises and the project.

  • Lecture 1: Robot vision
  • Lecture 2: Getting images into a computer

Week 2

This week we discuss how to process images with simple arithmetic and logical operations to perform operations such as thresholding, green screening and change detection. Then we look at operations that allow us to blur or find edges within images, find distinctive patterns or select only objects of particular shapes.

  • Lecture 3: Image processing
  • Lecture 4: Spatial operators

Week 3

This week we ask the question ‘How can a robot know what it is looking at?’ We will see how robots can extract simple meaning from an image, describing objects in terms of their size, shape and position. Then we look at color, its importance in image processing, and how we can describe and select objects based on their color.

  • Lecture 5: Feature extraction
  • Lecture 6: What is color?

Week 4

So far we have assumed the existence of an image. This week we learn how images are formed by cameras. The first lecture presents a simple geometric approach to understanding this, while the second lecture uses homogeneous coordinates to express this process in terms of matrices and vectors which we can calculate easily using MATLAB.

  • Lecture 7: Image formation
  • Lecture 8: Image geometry

Week 5

This week we look at how humans perceive the three dimensional (3D) nature of the world using binocular vision, how stereo displays and TVs work, and how we can mimic this in a computer to extract a 3D model of the world from two images. Then we follow up on lecture 4 and discuss advanced image processing techniques for selecting shapes, rotating and scaling images, and finding dominant lines and points within an image.

  • Lecture 9: 3D vision
  • Lecture 10: Advanced image processing operations

Week 6

In this final week we discuss the way that an image changes as the camera moves. Then we invert this and compute how the camera should move so that the image changes in the way we want, a technique commonly known as visual servoing.

  • Lecture 11: Vision and motion

Final week

Ensure you have completed and submitted all assessment quizzes and assessment programming exercises. If you have undertaken the project you can self-assess your robotic vision system. If you have a robot arm you can do the extension activity.

One Last Thing!

Check your email inbox and click on the email verification link we just sent you.

If it doesn’t reach your inbox in a few moments, it might be in your spam folder. Don’t forget to add our email address to your contacts if it did end up in spam! That’ll make sure it doesn’t happen again.

As soon as you’ve verified your email, you’ll be able to continue.



Confirm Payment

Payment Unavailable. Try again later.

Robotic Vision


Credit Card