Courses

Graduate

  • ECE 595 “Online Course: Computer Vision for Embedded Systems”. Fall 2021 and 2022. This is an experimental course. This course provides an overview of running computer vision (OpenCV and PyTorch) on an embedded system. The course emphasizes the resource constraints imposed by embedded systems and examines methods (such as quantization and pruning) to reduce resource requirements. This course was offered in Spring 2022 as a Guest Lecturer (Sabbatical Visit) in “Special Topics in Machine Intelligence, Seoul National University”

    The course is available to anyone worldwide for auditing (through EdX, please check the link above).

Lecture

Topic

Slides

Videos

01

Introduction, OpenCV

Lecture 01

01 B

Quantization

Lecture 01B

02

Edge Detection, Segmentation

Lecture 02

03

Applications

Lecture 03

04

Machine Learning

Lecutre 04

05

Modular Neural Networks

Lecutre 05

06

Review and Write Papers

Lecutre 06

07

Performance and Resources

Lecutre 07

07 B

Pytorch Quantization

Lecutre 07 B

08

Detect and Track Objects

Lecutre 08

09

Data Bias and Privacy

Lecutre 09

10

Data Generation

Lecutre 10

11

Neural Architecture Search

Lecutre 11

12

Transformer A

Lecutre 12

13

Transformer B

Lecutre 13

14

Real-Time Scheduling

Lecutre 14

15

Research Topics

Lecutre 15

Undergraduate

201809Team 201803Team

  • Fall 2022 “ECE 270 Introduction to Digital System Design”, Topics: CMOS logic circuits, Switching Algebra, Verilog, state machine.

  • Fall 2021 “ECE 264 Advanced C Programming”. Topics covered: stack memory, recursion, memory management, structures, file (text and binary), dynamic structures (linked list and binary tree). Tools: gcc, gcov, Makefile, gdb, valgrind. Lecture videos are available here.

  • VIP (”Vertically Integrated Projects”). VIP teams mix students from cohorts (first-year undergraduate to doctoral) and conduct research. Dr. Lu advises the following teams:

    • Fall 2022 “VIP Team: Computer Vision for Embedded Systems”: improve efficiency (inference time, training time, storage space, energy consumption) of computer vision (both image and multimedia) so that computer vision can run on embedded systems. The team will evaluate how existing methods (such as quantization and pruning) can be applied to new neural architectures (such as transformers). The team will also investigate new architectures of neural networks and compare their efficiency with different levels of accuracy. Advisor: Yung-Hsiang Lu.

    • Fall 2021 “Analyze Drone Video”: creates a dataset captured by drone (also called UAV, unmanned aerial vehicle) and a referee system that can evaluate the accuracy and performance (execution time) of different solutions. Sponsor: Facebook - Pytorch. Advisors: Qiang Qiu, Yung-Hsiang Lu, and Wei Zakharov.

    • Fall 2021 “Open-Source TensorFlow Software”: Creates software to be used in the TensorFlow 2 Model Garden as examples. Sponsor: Google. Advisors: James Davis and Yung-Hsiang Lu

    • Spring 2021 “Image Processing for Solar Sail”: Creates the software to analyze the images taken by the camera on a spacecraft using solar sail. Sponsor: NASA. Advisors: Alina Alexeenko, Anthony Cofer, Yung Hsiang Lu.

    • Spring 2021 “Program Analysis as a Service”: Creates an online service that analyzes computer programs to help students learn programming. Advisors: Aravind Machiry and Yung-Hsiang Lu.