# New Robotics courses in open online learning. The good and the bad

Last years we are seing new robotics courses online like the Embbeded Systems or Underactuated Robots from MiT. **They have nearly all the things we want**: they are about robotics, they start from zero, and they show us good fundamentals to do some practice for future projects we want to do.

One of new robotics courses are about to start: Introduction to robotics (already started) and Robotic Vision (about to start).

First some key facts about each course:

### Course outline for Introduction to robotics

This course is delivered over six weeks. Each week will include two video lectures, as well as quizzes and MATLAB exercises.

### Course outcomes

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

- describe and explain what robots are and what they can do
- describe mathematically the position and orientation of objects and how they move
- describe mathematically the relationship between robot joint coordinates and tool pose
- compute the rigid-body forces in a robot and design a joint control system (optional advanced material)
- reflect on the future role and development of robots in human society
- apply the mathematical, algorithmic and control principles of robot arm manipulators to implement a working robot through physical construction and software development (applies to optional project).

You have full details about this course and registering here: Introduction to robotics

### Course outline for Robotic Vision

This course includes an introductory week, followed by six weeks of lectures. Each week includes two video lectures, quizzes and MATLAB programming exercises.

### 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 of 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
- apply the mathematical and algorithmic and control principles of computer vision to implement a working vision system (applies to optional project)
- integrate the robot arm and robotic vision system into a functional system in which the desired object is recognised and the robot moves to it (applies to optional projects).

All details about the course and registering here: Robotic Vision

**Conclusion**

You need to know **some fundamentals on maths like matrices, vectors** and related to be confortable with these courses. If you have studied any engineering degree it wont be a problem. If not, or you want to recap some details, you can check it in the online material from Khan Academy they link to:

Even both courses look very interesting, **they lack the use of an open software for maths processing.** Yes, they offer special access to a free version of that proprietary software, but on the long term is not a good offer. Basically because that put behind many DIY roboticists **to make/improve their projects from the ground, with what they could learn in these courses**.

Don't take me wrong, after reviewing **both courses, they look very good**, giving sound fundamentals and practice on robotics. But** for the long term I think we have to use open math software**. I don't know yet any robotics course that use that open maths software, if you know please tell me and I will post it here. Thanks and see you soon!

P.S.: as I saw a very interesting comment from **cevinius **one of our Let's make robots fellows, I'll reproduce here with a big thanks to him:

*"While the course is all about MatLab... (i.e. assignment submission is done by copy/pasting in Matlab code) the toolbox code written by the professor (Peter Corke) seems to have been ported to some Octave (as well as things like Python). If you use the Octave port, I imagine the MatLab stuff would mostly stay the same.*

*There are more details here: http://www.petercorke.com/Robotics_Toolbox.html*

*So, for the duration of the course, you will need to use MatLab (using the provided trial licence), but after the course, you could:*

*Use other versions of the toolbox (e.g. Octave port)**Find other implementations of those algorithms**Reimplement them yourself (potentially)*

*In the parts of the course I've done so far, he seems to explain the theory enough that you can understand it and find other implementations if needed.*

*However, I 100% agree, it would be good to use Octave or something else free from the start.*

*(Pure speculation time... I did wonder if they got funding from MatLab as it is a free course and getting people to use a trial MatLab might make the students get used to it and use it professionally. Some of the tutorial videos on MatLab seem to have been made by MatLab and also seem to have been customized a bit for the course, so MatLab might have invested some resources? Pure speculation by me, but I wondered if they had some sort of deal with MatLab to get additional funding since the course is free and I don't know how much they would get from EdX registrations.*

*On a positive side... I remember reading somewhere that places that do machine learning work like Google do use MatLab, so I don't mind getting some exposure and experience with it. :) )"*

## I agree open math software

I agree open math software is a must. I can't really think how math function can be considered property of someone.

About robotics i really lack physics behind, but i'm learning mechanics as i need. Building a small hobby robot doesn't require all the simulations needed for an industrial robot, and even in professional environment most of the variables are choosen with cheat tables(at least in the workspaces i have been to). Ethical implications are maybe the point which makes the course different.

About computer vision i'd prefer OpenCV and neural networks.

## Good points Silux

Thanks for your comment!

Yes, it's right for basic robots you don't need complex simulations or maths, but as you move to more dynamics with several sensors and actuators I think complex maths are needed.

Do you have any good example on OpenCV and neural networks for computer vision?