Skip main navigation
We use cookies to give you a better experience, if that’s ok you can close this message and carry on browsing. For more info read our cookies policy.
We use cookies to give you a better experience. Carry on browsing if you're happy with this, or read our cookies policy for more information.
Online course

Robotic Vision: Making Robots See

How does my robot see? Get involved in a vision project by writing the code for a complete vision system.

Robotic Vision: Making Robots See

This course is part of the Robotic Vision program, which will enable you to skills in building robotic vision systems will become vital to developing the robots of the future.

Learn about the functions you need to program a robotic vision system.

Programming a computer to see requires knowing the principles of vision, and mathematical and programming skills. We start by refining our knowledge of image geometry and complete some MATLAB exercises. Next, we start the robotic vision programming project. You will be supported to learn the functions you need, such as improving colour segmentation, detecting shape and size, improving your homography matrix, rectifying your image and forming a complete vision system.

As an optional project, if you have built or bought a robot, we provide the information for integrating your vision system.

What topics will you cover?

  • Homogeneous coordinates
  • Image formation
  • Planar homography
  • Colour segmentation
  • Blobs and their properties, such as size, shape and position
  • Homography matrices
  • Vision system integration (optional)

When would you like to start?

  • Date to be announced

What will you achieve?

By the end of the course, you'll be able to...

  • Apply your knowledge of computer vision to create a vision system
  • Demonstrate basic coding in MATLAB for calibration, shape classification and workspace coordination
  • Reflect on the success of your and your peers’ robotic vision systems

Who is the course for?

This course assumes that you are familiar with concepts from advanced high-school mathematics or undergraduate engineering. Ideally, you will have knowledge of geometry and basic physics (optics).

The course also assumes knowledge of the programming required to complete the computer vision project. This course uses the MATLAB programming language and environment, but your knowledge of programming in other languages can be easily transferred to MATLAB. You can familiarize yourself with MATLAB by enrolling in the MATLAB Onramp tutorial.

Please note that this course includes video content and other visual teaching methods. Blind and visually impaired students may need a helper.

What software or tools do you need?

The course requires you to code your robot vision system in MATLAB. However, you won’t need to download the full MATLAB software to complete the course (although if you already have it you are welcome to use it). The MATLAB exercises are embedded within the course, or you can use a version of MATLAB Online for which you’ll be provided a log-in and instructions for importing the Machine Vision Toolbox for MATLAB.

Optional robot arm project

The purpose of this course is to program a robotic vision system, and optionally to integrate it with a robot to perform a simple, visual task. If you completed the course Introducing Robotics: Build a Robot Arm, you may already have a working robot arm you can use; or you might choose to purchase a LEGO MINDSTORMS NXT or EV3 development kit or something equivalent to it, or to borrow hobby robot components. This course does not run through how to assemble your robot arm, but rather provides all of the task instructions, demonstrations and worksheets for programming the vision system.

There are many ways to integrate the vision system and some of the most common approaches are:

1. Computer vision and robotics control on your computer

An attached web camera is used to acquire images that you process, to display results and to send motion commands to the robot. You will require a 64-bit computer as well as the full MATLAB software. There are many options to control the robot depending on the technology that you use to create it, for example:

a. MINDSTORMS NXT toolbox (NXT kits) or EV3 require custom software toolboxes to control your robot.

b. Arduino or RaspberryPi robot controllers might require a serial, WiFi or Ethernet cable connection to allow the MATLAB code to command it.

2. Computer vision on your computer

An attached web camera is used to acquire images that you process and display results for. You will require a 64-bit computer as well as the full MATLAB software.

3. Computer vision in the cloud

Your image processing works in an offline mode: you capture images of the worksheet using any camera and upload them to MATLAB Online using MATLAB Drive, where it is accessible by your program.

You can discuss your design ideas and options with your peers and the course mentors.

Who will you learn with?

Peter Corke

Professor of Robotic Vision at QUT and Director of the Australian Centre for Robotic Vision (ACRV). Peter is also an IEEE fellow and on the editorial board of several robotics research journals.

James Sergeant

PhD Candidate with the Australian Centre for Robotic Vision researching towards robust visual object recognition to facilitate useful robotic tasks.

Edward Pepperell

Dr Pepperell completed his PhD in robotic vision at QUT in 2016, with a research focus in vision-based place recognition.

Who developed the course?

QUT is a leading Australian university ranked in the top 2% of universities worldwide by the 2015-16 Times Higher Education World University Rankings. Located in Brisbane, it attracts 47,000 students.

Learners collage mobile
Join this course

Free

  • Access to this course for 5 weeks
  • Includes any articles, videos, peer reviews and quizzes

Upgrade - $94

  • Unlimited access to this course
  • Includes any articles, videos, peer reviews and quizzes
  • Certificate of Achievement to prove your success when you're eligible
Contact FutureLearn for Support