Carnegie Mellon University

Carnegie Mellon Robotics Academy

Use educational affordances of robotics to create CS-STEM opportunities for all learners

May 04, 2021

A Primer in Machine Vision

By Jesse Flot

The world is evolving. Some people say we’re in the middle of a fourth industrial revolution:

  1. The first was driven by steam and mechanization, allowing us to do things that were too big to do before.
  2. The second industrial revolution was driven by electricity and the assembly line, making production faster and more efficient. 
  3. The third was driven by computers and robots, automating repetitive and delicate tasks.
  4. The fourth industrial revolution is driven by data and smart systems that can use it to make better decisions.

Each time the way we made things changed, so did the way we work. In this lesson, students start by configuring a camera sensor to send information over the network when it detects an anomalous object. 


Then students train a simulated machine vision system to perform visual quality control checks on parts coming off an assembly line, by monitoring its output and “teaching” it when it has made mistakes.


Professional Development
The hands-on portion of the curriculum uses a wifi-enabled Arduino Uno. If you don’t have experience using the versatile Arduino platform, that’s okay. Our Certified Professional Development is an excellent introduction, and registration even includes a free robot provided by our partner Parallax. 


Visit our course page for full details

Developing this latest micro-credential was part of a NSF Project, Grant Number 1937063. Our full public findings from the project can be found in the Research section of the Carnegie Mellon Robotics Academy Site. 

In addition to the site, our team has also published a number of articles detailing the technical development behind the simulations embedded in the curriculum. Feel free to check them out:

  1. Rapid Prototyping with Unity and React
  2. Deploying a Machine Learning Model to a Serverless Backend with SAM CLI
  3. How We Used Transfer Learning to Create an Image Classifier in the Browser