Advanced Course

OpenCV Basics for Robotics Python

Learn and apply the library most used in computational vision in robotic projects with ROS

ROS Noetic

Course Overview


The OpenCV Basics For Robotics course will help you to reconcile, understand, and better apply the synergy between OpenCV and ROS. You will learn from basic concepts to widely used tools in computational vision applied in robotic projects.


Learning Objectives

  • Know the basics of computational vision with OpenCV
  • Understand how OpenCV integrates with ROS
  • Understand the scope of OpenCV in ROS in both virtual and real environments
  • Learn how to apply vision algorithms in specific robotic applications

Simulation robots used in this course

Hector Quadrotor Drone; ROSbot. 






18h 45m


Basic ROS, Basic Python, Some basic math knowledge (like arrays, etc).

What projects will you be doing?

[ROS Q&A] 168 - What are the differences between global and local costmap

OpenCV with a Hector Quadrotor

Apply the basic algorithms of OpenCV using the images taken of a drone.
ROS Mini Challenge #2 - RViz

Detecting and Tracking People and Faces

Use Haar cascade and HOG in order to detect faces and people.

Detecting Objects with a Drone

Detect any kind of object using the ORB algorithm.

Start using ArTags

Use the ArUco library of OpenCV to understand how ArTags work.
[ROS Q&A] 168 - What are the differences between global and local costmap

Wanted! Be the sheriff of the town

In this town, there are people and one of them is wanted by the police. Find that person with the robot.

What you will learn

Course Syllabus

Unit 1: Introduction to the Course
  • Introduction
  • Working Example: Let’s detect people with the ROSBot
  • What will you learn in this course?
  • Robots Used
  • Requirements

25 mins.

Unit 2: Computer Vision Basics
  • Color
  • cv_bridge, the connection between opencv and ROS
  • Loading and writing an image
  • Space colors
  • Edge Detection
  • Morphological Transformations

1 hr. 15 mins.

Unit 3: People-related OpenCV functions
  • Face Detection and Tracking with Haar Cascades
  • People Detection and Tracking with HOG

4 hrs. 

Unit 4: Feature Matching
  • Features from the Accelerated Segment Test (FAST)
  • Binary Robust Independent Elementary Features (BRIEF)
  • Oriented FAST and Rotated BRIEF (ORB).

4 hrs. 

Unit 5: ARTags (Augmented Reality)
  • ArUco Library
  • ArUco Dictionary
  • Artags detection
  • Extract the center of the artag
  • Order the centers correctly
  • Area substraction
  • Painting in Area

4 hrs.

Unit 6: Challenge! Course Project

There is a dangerous person in this city, and many possible suspects are close to your robot! You must detect all the people and highlight the dangerous one.

5 hrs.

Christian Alberto Chavez Vasquez


Master Degree in Robotics, Automation and Home Automation and currently studying another Master’s Degree in Smart Cities and Smart Grids. He has worked on ROS projects with navigation, exploration, industrial robotics, and artificial vision.

Ready to get started?

Start learning ROS & Robotics online quickly and easily

What’s next

People interested in this course also viewed


Using OpenAI with ROS


ROS Perception in 5 days

Top universities choose The Construct for Campus to teach ROS & Robotics.

Pin It on Pinterest