z-logo
open-access-imgOpen Access
Integration Image Analysis Projects In An Introductory Computational Methods Course Using Matlab Software Environment
Author(s) -
Abhijit Nagchaudhuri
Publication year - 2020
Language(s) - English
Resource type - Conference proceedings
DOI - 10.18260/1-2--3140
Subject(s) - computer science , software , matlab , course (navigation) , relevance (law) , graphics , flipped classroom , computational science , software engineering , multimedia , computer graphics (images) , mathematics education , programming language , mathematics , physics , astronomy , political science , law
“Computational Methods for Engineers”, is a 3 credit course offered to sophomore/junior students at University of Maryland Eastern Shore(UMES) to engineering majors. The course has been adapted from the “Introduction to Matlab” course that was being offered to engineering majors in the past. Some students in the Department of Mathematics and Computer Sciences have also taken the course. The course introduces students to basic programming concepts, vector methods, linear algebra, solutions of linear and nonlinear equations, two-dimensional and threedimensional graphics, and numerical analysis, including numerical integration and numerical solutions of ordinary differential equations. The “Image Processing Toolbox” of Matlab is integrated in the project work for the course. It provides an avenue for introducing students to ongoing experiential learning and research endeavors in remote sensing that the author is involved in, with support from NASA and USDA. The image analysis projects not only provide a new and appealing dimension to the course, but also enhance comprehension of course material by active learning. Students have worked in teams to perform a variety of image analysis tasks, including color segmentation in the RGB and HSI/HSV domains; computing normalized difference vegetation index (NDVI); mosaicking of overlapping digital frames; and other projects that have relevance to the ongoing research efforts in which the principal author is engaged in. In this paper, an outline for the course will be provided and a few of the projects executed by the student teams in the last couple of years will be highlighted. Student feedback and assessment of the course, with particular reference to the project, will also be discussed. 1.0 Introduction A significant number of textbooks have been recently published for use in introductory computational methods courses using Matlab software environment [1-4] . Also, textbooks are available for courses such as, Statics, Dynamics, Mechanics of Materials, Control Systems, Statistics, Image Processing, Basic Circuits, and Communication systems, [5-11] that are integral parts of general engineering curricula, as well as popular engineering P ge 13769.2 majors, including mechanical, civil, aerospace, electrical, etc. The books referred to above are just a few examples from a large and growing list of engineering text and reference books that are relevant to undergraduate and graduate engineering curricula, and bear testimony to the important role that the Matlab software environment plays in engineering education and research. Matlab is not a programming language like ‘C/C++’ or ‘Fortran’ which have been the languages of choice in the past for engineering educators to introduce students to scientific and engineering computation [12,13] . Although the numerical recipes and other pre-written subroutines/functions in these languages can provide students a good introduction to computational methods, the growing use of Matlab software in engineering education, engineering research, and the workplace may be attributed to the ease of use, better student comprehension, less rigidity of syntax, and the availability of a variety of toolboxes that seamlessly integrate with upper level courses in undergraduate engineering curricula, as well as engineering research in graduate school and in the workplace. While Matlab is an excellent environment for providing instruction in computational methods, linear algebra, numerical analysis, and introductory programming concepts, [14] it is not a programming language and has limitations when it comes to real-time applications. As such it is not a substitute for ‘C/C++’ for introduction to programming concepts, data structures, and real-time applications. References [12,13] discuss the integration of ‘C/C++’ and ‘Matlab’ in an introductory computer programming course and the ongoing evolution, modification, and adaptation of the course framework. In the next section of the paper, an outline for the “Computational Methods for Engineers” course at UMES based on the Matlab programming environment will be provided followed by a discussion of course highlights and project assignments. Learning objectives, outcomes, and assessment strategies relevant to Criteria 2000 of the Engineering Accreditation Commission will also be elaborated prior to the concluding section. 2.0 Course OutlineComputational Methods for Engineers “Computational Methods for Engineers” is a 3-credit course in the baccalaureate engineering program at University of Maryland Eastern Shore (UMES). The course is offered to sophomores/juniors with a pre-requisite of “Calculus –II” and a co-requisite of “Differential Equation” courses. A working knowledge of basic programming concepts is also a desired pre-requisite. The course emphasizes fundamentals of vector methods, linear algebra, numerical analysis, programming, and 2-dimensional as well as 3dimensional graphics. The first seven chapters of the textbook “An Engineer’s Guide to MATLAB” [1] are covered in the course lectures. The author also introduces students to fundamentals of image processing and the use of some of the basic functions in the “Image Processing Toolbox”. The students are assigned a team project that is designed to reinforce analytical, computational, graphics, and programming concepts introduced in the course lectures. Utilization of the “Image Processing Toolbox” provides an appealing and practical dimension to the project. The project also emphasizes teamwork, report writing, and oral presentation. P ge 13769.3 The students work on practical problems relevant to engineering while learning the analytical and computational methods. For example, while solving systems of linear equations, examples are drawn from statics, dynamics, and electrical networks as the students learn basic linear algebra, matrices, Eigen-values, and inversion of matrices. Examples relevant to robot kinematics and homogeneous transformations are introduced, while introducing students to basic ideas of matrix multiplication. Solving nonlinear equations with the Newton-Raphson method and basic programming ideas, are introduced while developing a program to solve link positions and angles of a four-bar mechanism as the crank undergoes a complete revolution. Pre-written functions for performing numerical integration are introduced together with graphing tools to enhance visualization and perception of students. First order and second order differential equations that represent fluid/thermal systems, resistor-inductor-capacitor circuits, and mass-spring-damper systems, with appropriate practically relevant forcing functions and initial conditions are used as examples. Matlab graphic tools are utilized to introduce students to the Runge-Kutta method for obtaining numerical solutions of ordinary differential equations (ODE), using pre-written Matlab functions embedded in student developed m-files. While discussing numerical solutions of ODEs, basic ideas of vibrations and controls are also provided. Some examples involving nonlinearities are also discussed (bungee jumping, inverted pendulum) to elaborate the ease with which numerical solutions can be obtained when closed form solutions are arduous. After basic concepts from the first seven chapters of the textbook are covered, the students are also introduced to Image Processing Toolbox and basic statistics for laying out the foundation for the team project. At this stage, the students are also encouraged to leaf through the subsequent chapters of the text that span over vibrations, design, control systems, fluid mechanics, heat transfer, optimization, and statistics. The students are encouraged to utilize the text for subsequent courses in controls, design, statistics and robotics, fluid mechanics, heat transfer, digital signal processing, electro-magnetics, communication systems, and remote sensing, which some or all of them will take in their junior and senior years. The students are also encouraged to utilize Matlab for most of their computational needs subsequent to taking the course. 3.0 Project Work and Highlights The principal author has been involved in experiential learning and research efforts in the fields of robotics, control systems, and more recently precision agriculture and remote sensing at University of Maryland Eastern Shore (UMES), with support from local industry, NASA, and USDA [15-18] . Matlab and its toolboxes have been utilized by undergraduate and graduate students who have worked in these projects under the supervision of the author. The author has demonstrated the use of the dynamic data exchange capability of “Working Model” and “Matlab” to simulate control of mechanical systems [17] . Matlab was utilized to develop a transformation from the overhead camera frame to robot base frame for the robot-vision system set-up in the University of Maryland Eastern Shore Mechatronics and Automation Laboratory (UMESMAL). Also the dual water tank, rotary pendulum and flexible rotary arm utilize Simulink and Realtime Workshop from Mathworks Inc. for real-time control applications in the UMESMAL. The visual representation of control algorithms in Simulink is translated to Page 13769.4 Matlab m-files, which are subsequently translated to optimized ‘C/C++’ code and compiled using a Visual C++ compiler for real time control solutions [18] . Matlab “Image Processing Toolbox” has been utilized along with other software environments such as PCI-Geomatics, ArcGIS 9.2, ERDAS Imagine, etc., for image analysis related to remote sensing and precision agriculture efforts ongoing at UMES, with support from Maryland Space Grant Consortium, NASA, and USDA [15, 16] . The project assignment in the “Computational Methods for Engineers” course has been developed to introduce students to basic concepts in image processing, and to reinforce the basic analytical and computational concepts introduced in the cou

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom