Teaching Image Processing in Engineering Using Python
Teaching Image Processing in Engineering Using Python
fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
Andrés Fernando Jiménez López, Marla Carolina Prieto Pelayo and Ángela Ramírez Forero
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
product, identify the market, do research, create plans, - Introduction. It is a description of applications and benefits
design, and develop the product. The full process is of the content to be studied.
authentic, referred to a real production, and uses students’ - Module scheme. Topics of each module explained at the
ideas and full assignments [17]. Because of this, students beginning of “II. Image Processing Course”.
focus on achieving solutions to nontrivial problems, - Module Objectives. Capabilities and knowledge to be
generating questions, consulting, discussing ideas, making acquired at the end of the module.
predictions, designing work plans and/or experiments, - Content. Concepts, equations, and fundamental procedures
collecting and analyzing information, establishing that support the topics being studied in the module. This
conclusions, communicating results, questioning, creating or includes visual aids such as slideshows in .pptx format
improving products and processes [18]. prepared by the instructor, whose purpose is to deliver the
content to the students in an appealing way.
PBL is a pedagogical strategy for teaching in engineering, - Development of Python applications. Implementation of
which is complemented to be used in industrial projects and algorithms and Python programs to support the study of the
impact on the university community and the region, offering topics.
an experience as authentic as possible. Besides, it is also - Summary. Highlight the basics covered in the module.
directed to develop these projects in an interdisciplinary - Workshop - Evaluation. Developing a workshop in class
way, with the collaboration of other agencies or departments that allows the students to advance towards the final project.
of engineering [19]. According to the procedures seen in class, each student team
adapt the examples studied in class to the needs of their final
This paper describes the experience during the execution of project.
a project that applied the PBL methodology for teaching an
undergraduate course on image processing at the During the course three theoretical-practical exams and a
Universidad de los Llanos. It also explains some projects final project are executed. The midterm tests consist of a
developed during the course. These projects provided a written exam (50% of final grade) and a project progress
solution to environmental needs, besides allowing students (50% of final grade). Some of the projects developed in the
to conceptualize different topics through the interaction with course have been: a) Determining characteristics of the
various stages of processing, and the focus on understanding freely falling object equation and the inclined plane using
the algorithms and codes used. image processing, b) Grading the Saber-Pro test using image
processing, c) Guiding vehicles using light bars and color
detectors.
The software developed in each course project was based on
QT4 and Python 2.7, which allows for the application of the The image processing course relies on the ARCS model
results to image processing and other fields such as (Attention, Relevance, Confidence and Satisfaction), which
engineering and physics. Some applications developed in is widely used in the development of learning materials [20].
the course have been important for institutional projects of This model, developed by John M. Keller [21], has been
Universidad de los Llanos: Design and Implementation of a reported as one of the most effective models for the
virtual-remote laboratory for Mechanics – kinematic development of attractive materials for teaching sequential
practices; for the evaluation of remote practices using control [22], robot´s control [23], and digital image
digital image processing; and the Design and processing [20].
implementation of a computer assisted system for Ronchi
Test at Universidad de los Llanos – SAPRULL, for the III. RESULTS OF PROJECT BASED LEARNING
optimization of image acquisition processes, and the
identification of abnormalities in the manufacture of
mirrors. The practical application of concepts consists of a final
Project and three project progress, normally with
II. IMAGE PROCESSING COURSE incremental difficulty and developed in teams. The final
project is agreed between the professor and the students, so
it is achievable. During its execution students develop all the
The image processing course at the Universidad de los abilities and apply basic image processing algorithms.
Llanos is organized in modules: python programming; The projects begin with a non-trivial question, whose
image processing fundamentals; introduction to digital answer requires critical thinking and scaffolding; therefore,
image processing; image types – color images; image and students must search for the most efficient way to perform a
video acquisition; object in motion detection; user graph task, balance the evidence, review original ideas, develop a
interface in python; image formation engineering; pixel plan, and summarize the most important points of an
operations; image segmentation: borders and contours, argument. The process is also based on the concept of
representation and description, morphologic operators, optic constructivism, by which students learn to create new ideas
instruments, image analysis for wave front analysis, image or concepts based on their current and prior knowledge.
transformations and remote sensing. These modules are The projects are centered on the students, who are in
studied in seventeen weeks, each week with six class hours: charge of leading and defining their content. The projects
two for studying theory, two for studying programming, and focus on real-world problems, are sensitive to the local
two for tutoring. Programming modules in Python and culture, and seek to obtain tangible products that can share
Graphic User Interface use the six hours of the with the target audience, taking into account academic
corresponding week in programming activities. Each aspects, life and work skills, with opportunities for feedback
module has a structure that includes the following parts: and evaluation by experts, opportunities for reflection, self-
evaluation by the student and a real evaluation or assessment
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
[24].
- Motion control, with the threads: center of Finally, all the minutiae information obtained, Fig. 4, is
curvature and focus. compared with information saved in a database of known
- Image and Video Acquisition. fingerprints: if the minutiae number coincides with the
- Preprocessing, with threads: thresholding, spatial minutiae number of a fingerprint of database, it is accepted;
filters, image transformation, thresholding otherwise it is rejected.
algorithms and save final data.
- Processing: Ronchigram analysis.
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
d) e) f)
Fig. 3. a) Fingerprint acquisition with digital Fingerprint Reader.
Development of Python algorithms: b) preprocessing – Filtering, c)
segmentation, d) morphological operations - Close, e) skeletonization, f)
minutiae labeling, Terminations (White), bifurcation (Gray). Source:
Natalia Barbosa.
(2)
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
The stages of the system developed for the number detection The graphic user interface developed for the study of
by hand gestures involve: defining scene background color, uniformly accelerated motion by using digital image
image acquisition, processing, filtering, segmentation, processing is shown in Fig.9; Fig.10 shows the display
defining characteristics, recognition, and interpretation. processing procedures and Fig.11 shows the resulting
Figure 7 shows the results obtained in the development of regression graph delivering for the software development.
the application, in which the numbers from one to five is
highlighted by sign language. The aforementioned projects are the result of the
methodology applied in the digital image processing
F Method to evaluate a uniformly accelerated course at the Universidad de los Llanos, where the
motion experiment. Authors students developed skills to identify, formulate and solve
problems through the PBL methodology.
An important aspect when working with remote labs in
physics is how to verify the results obtained in the
experiment, in other words, which mechanism the student
a) b) c)
d) e) f)
Fig 8. a) Graphic User Interface, Scene Background, numbers recognition: b) one, c) two, d) three, e) four, f) five. Source: Juan Reinoso.
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
All the respondents considered that the IP elective course Table 3. Valuation of the methodology, compared to traditional.
helped them to acquire skills to develop engineering Range from 1 to 5.
Value Definition Percentage
projects of analytic and proactive manner, since the 1 Very Low 0%
design of a project needs a careful analysis of the problem 2 Low 0%
or situation to work, propose alternatives of effective 3 Medium 5%
solutions, making it possible to conceptualize the issue 4 High 56%
through interaction with progressive results obtained in 5 Very High 39%
Source: Authors
the development of the final project.
We required students to respond if the developed
The eighth question was intended to recognize those methodology is better than the traditional one, taking into
attitudes that students are encouraged to possess in their consideration the experience lived in the classroom,
professional profile, from the following options: marking a numerical value in range of 1 to 5, where 1 is
(Very Low), 2 (Low), 3 (Medium), 4 (High) and 5 (Very
1. Innovation with technology projects. High), Table 3; in this question two students gave a value
2. Update their knowledge and specialize in one of 3, twenty replied 4 and fifteen consider it as a Very
particular discipline. High, demonstrating the satisfaction of students with the
3. To integrate and/or coordinate individuals and teaching methodology. We also explored the role played
interdisciplinary teams. by the students in their learning process by requesting a
4. Having a high capacity for analysis and critical numerical value in the scale described, whose results
thinking. showed that in self-learning and shared learning five
5. Participate in research and study groups. students evaluated themselves with a medium value,
6. Identify potential problems of the environment, twenty three responses with a High value and nine of the
with a solution in engineering. surveyed gave a High Value, Table 4. These results
7. Develop and implement solutions to various establish student motivation for individual work to get
problems through their profession. involved in projects.
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/RITA.2016.2589479, IEEE
Revista Iberoamericana de Technologias del Aprendizaje
1932-8540 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.