GEOG6088 Programming Skills in Remote Sensing
The aim of this module is to provide students with the skills required to understand and write software programs for image processing and scientific computing. More specifically the module will provide the students with the ability to develop programs that will read, analyse and display a range of different data formats. Within this the students will gain an understanding of the basic principles of computing and the ability to develop algorithms to process data. The software used for this course will be IDL and ENVI which are both available at the university. There are no pre-requisites for this module.
Aims and Objectives
This module is designed to introduce you to scientific computing and programming in IDL. Although IDL programming language is being taught, many of the skills that you will develop will be applicable to other languages.
Having successfully completed this module you will be able to:
- Have an understanding of the basic foundation of scientific computing.
- Have an understanding of the functionality of IDL for image processing and data analysis.
- Be able to develop programs and algorithms to analyse and display data.
Introductory lecture This 1 hour lecture will introduce the students to the basics of computer science relevant to remote sensing. Areas covered include data storage, algorithms, data types and variables, program control structures and the IDL/ENVI software environment. Practical classes – 3 hours each 1&2) Introduction to IDL/ENVI These practical sessions will introduce the students to the IDL and ENVI environments. The basic foundations of scientific computing will be covered including variable arithmetic, arrays and vectors, IDL indices, conditional statements and flow control. The second lecture will cover program and function development. 3&4) Reading and writing data These sessions will explore different methods of reading and writing both ascii and binary data using IDL. The second session will examine the IDL functions for reading common data formats found in remote sensing (such as hdf and geoTIFF) and GIS (shape files). 5 ) Data visualisation These practical sessions will examine different methods of visualising data. These include plotting the data in the form of a graphs and maps programmatically and using IDL iTools. This session will also leverage off the previous session and extract information from image data for display. 6 and 7) Image processing techniques The session will cover computational aspects of image processing within IDL. Areas covered include retrieving image statistics, performing image arithmetic, data manipulation (such as masking, value location, sorting, interpolation) 8 and 9) String processing The session will examine processing string data and how it can be used in program control such as loops and searching for files and directories. 10-11) Algorithm development and assignment tasks These sessions build on previous work provides an an example of how a program to locate, read, manipulate and output data. These sessions also provide the opportunity to undertake non-assessed computational task.
Learning and Teaching
|Total study time||150|
Resources & Reading list
Galloy, M. (2011). Modern IDL : A Guide to IDL Programming.
Fanning, D. W. (2011). Coyote's Guide to Traditional IDL Graphics.
Fanning, D. W. (2003). IDL Programming Techniques..
Repeat type: Internal & External