DIGITAL LIBRARY
PRACTICAL CLASSES IN A ROBOTICS AND COMPUTER VISION SUBJECT
University of Alicante (SPAIN)
About this paper:
Appears in: INTED2017 Proceedings
Publication year: 2017
Pages: 2497-2503
ISBN: 978-84-617-8491-2
ISSN: 2340-1079
doi: 10.21125/inted.2017.0702
Conference name: 11th International Technology, Education and Development Conference
Dates: 6-8 March, 2017
Location: Valencia, Spain
Abstract:
In several computer science degrees there are subjects related to computer vision or robotics. Although both computer vision and robotics can be taught using different approaches, we present here an approach more related with a computer science degree. In this paper, several examples of practical lesson are presented, which can serve as a basis for teaching those concepts in a computer science degree.

Theoretical concepts:
Regarding the theoretical concepts, we decided to include the following concepts:
Evolution of the robotics.
Block 1: Computer vision.
Feature extraction and description in 2D and 3D.
Registration methods in 2D and 3D. Object recognition. Optical flow.
Block 2: Robotics
Robot models and sensors.
Behaviors.
Mapping.
Localization.
Simultaneous Localization And Mapping.
Robotics applications.

With this syllabus the student has a wide, but not deep, knowledge about computer vision and robotics. However, the computer vision concepts are closely related to robotics, i.e., we review the basic elements in computer vision used for developing robotics tasks. In this way, students can obtain a basis for developing these skills in a master degree.

Practical lessons:
Regarding the practical lessons, we propose to use several standard tools: OpenCV (a classical and most used 2D computer vision library), Point Cloud Library (PCL, almost the only 3D point cloud library), and Robot Operating System (ROS). ROS has become a standard in robotics and contains both OpenCV and PCL. It implements the most used robotics algorithms, so the student can test almost any of the methods seen in the theoretical sessions.

However, ROS has a difficult learning curve. It is necessary to dedicate several practical sessions to give a basic background about ROS. This is a disadvantage against others frameworks, but we think ROS is a standard so we use it for the whole course.

In our case, we dedicate 3 sessions to an initial seminar about ROS. Then the student has to develop two projects. In the course 2014-15 the first project was the building of a panorama from several images from a RGBD Camera. With a rosbag system providing images and 3D data, the student developed a ros node which captures those data and joins the rgb images into a big one. The student had to try different visual features to decide which one was the most accurate for the problem. In the second project, a similar problem was proposed. Now, the Gazebo simulator was used and the student had to build a map using the 3D data from the RGBD camera.

We propose to describe deeply the content of both projects in order to have a good basis for other subjects.
Keywords:
Robotics, computer vision, practical classes, computer science degree.