ENME489Y: Remote Sensing

description of image

Course Details

3 credits

2 x 75-minute lectures / week


This course explores the fundamentals of remote sensing techniques including light detection and ranging (lidar), radar, and computer vision in the context of emerging technologies such as autonomous navigation and terrain mapping. Throughout the semester, students are exposed to a variety of sensors from the research and commercial domains - both in terms of hardware and software.

Students working with Velodyne sensor
UMD student working with a Velodyne Puck lidar sensor as part of ENME489Y

The course includes lectures from guest speakers of significant reputation in their respective branches of remote sensing. Guest lecturers join us from research, commercial, and government entities to discuss their work in remote sensing.

The course requires completion of a semester project employing the course material, CAD, rapid prototyping, and data collection & processing. The project provides students an opportunity to experience a hands-on project involving a remote sensing technology that is closely related to their area of study.

UMD students visit Local Motors
Students enrolled in ENME489Y travel to Local Motors at the National Harbor to participate in a strategic planning session for LM's Functional Mini-Olli Autonomous vehicle special labs project. UMD is exploring how it can assist with the implementation of lidar and computer vision technologies on the vehicle.


Lecture slides upon request. Email me: mitchels@umd.edu

Week 1: Course Introduction

Week 2: Intro to Remote Sensing / Python / Project

Week 3: Lidar Remote Sensing / OpenCV Fundamentals

Week 4: The Lidar Equation / Automatic Lane Detection

Week 5: Lidar System Design / Automatic Lane Detection

Week 6: Lidar Altimetry: NASA Goddard Space Flight Center

Week 7: Lidar Altimetry: US Army Geospatial Research Lab

Week 8: Lidar Demonstration

Week 9: Spring Break

Week 10: Lidar Data Acquisition & Processing

Week 11: Velodyne & Project Support

Week 12: Project Support

Week 13: NASA Operation Ice Bridge & Project Support

Week 14: Navy Research Laboratory & Project Support

Week 15: Project Presentations

Week 16: Project Presentations


All codes available on 489Y Github

Assignment #1

Assignment #2: Introduction to the Raspberry Pi

Assignment #3: Introduction to OpenCV and object tracking with Raspberry Pi

Assignment #4: Introduction to the triangulation lidar range measurement

Assignment #5: Introduction to field deployable lidar, Inertial Measurement Unit (IMU), and pySerial

Assignment #6: Initial collection of lidar data & initial 3D point cloud

Assignment #7: Completed 3D point cloud of lidar data

Assignment #8: Mesh of lidar point cloud data & 3D print

Project Details

Detailed project description

Project instructions are described in each homework assignment

The lidar is integrated onto a standardized, 3D-printable mount. The mount consists of a single holder plate, which has mounting holes for an Arduino Uno, Raspberry Pi and Pi camera, and a LED line laser. The plate also has miscellaneous holes and slots allocated as cable tie downs, etc., along with two rectangular cutouts that can be used to tie the plate into a standard tripod.

description of image

description of image

A solid model file of the standardized plate is available for download. While it is preferable to print the plate as one solid piece (think structural rigidity), a 2-part solid model file(s) is also available for download which can be epoxied together, in the event your 3D printer cannot handle the size of the single plate design. This includes the camera and laser mounts.

An additional 3D-printable piece is also available to attach the mount to a standard tripod via the two rectangular cutouts:

description of image

Here is one incarnation of the assembled, aligned instrument:

description of image description of image

Examples of past student videos (full repository):

The following Google Map serves as a collection of student projects for ENME489Y: Remote Sensing. Zoom in/out and pan around to get an idea of campus coverage. Click on the green placemarks to view student videos.


Python Resources

Looking to learn Python? Great!

Begin by installing PyCharm on your machine.

Coming soon: my online Introduction to Python course (interested in joining? Email me)

Raspberry Pi & OpenCV Resources


Practical Python and OpenCV
New to OpenCV? Start with Adrian Rosebrock's Practical Python & OpenCV. We use it in class!