image

Overview

This course introduces the fundamentals of event cameras through hands-on experiments and self-directed projects. Students will learn how event cameras differ from conventional frame- based cameras and explore their unique capabilities in high-speed and low-latency vision applications. The course emphasizes experimentation and creative problem-solving rather than lectures.

Examples of Event sensor applications

Target Audience

Undergraduate students with basic programming knowledge

Learning Style

Project-based, exploration-oriented

Learning Outcomes

By the end of the course, students will be able to:

By the end of the course, students will be able to:

  1. Explain the basic principles of event-based vision.
  2. Operate the OpenMV X320 event camera.
  3. Acquire and visualize event streams.
  4. Design simple event-driven vision algorithms.
  5. Develop a small project using event camera data.
  6. Present and demonstrate their solutions.

Prerequisites

  1. Basic Python programming (desired, will be covered)
  2. Basic electronics knowledge (desired, will be covered)
  3. No prior knowledge of computer vision is required

Software

Students will use

Hardware

Weekly Schedule

Event Sensor Course — 14 Sessions

Session Topic Activities Materials
1 Introduction to Event Cameras Course overview, event camera demonstrations, applications, hardware/software setup [Slide], [Lab]
2 Getting Started with Event Cameras Basic event generation, camera operation, first event-stream acquisition, Python/electronics preparation [Slide], [Lab]
3 Event Data Exploration Visualize event streams, explore motion, lighting conditions, noise, and event characteristics [Slide], [Lab]
4 Event Data Acquisition Collect event datasets using OpenMV X320; perform experiments with different objects and environments [Slide], [Lab]
5 Basic Event Processing Event visualization, accumulation, filtering, and simple processing pipeline implementation [Slide], [Lab]
6 Project Proposal Brainstorm project ideas, define objectives, select datasets, and prepare development plans [Proposal]
7 Project Development (1) Implement data acquisition pipeline and collect required data -
8 Project Development (2) Develop initial algorithm and prototype system -
9 Project Development (3) Test prototype, analyze results, and improve implementation -
10 Progress Report Present project progress, preliminary results, challenges, and future plans [Progress]
11 Project Development (4) Continue implementation, optimize algorithms, and expand functionality -
12 Project Development (5) Refine system, conduct experiments, and evaluate performance -
13 Final Integration and Presentation Preparation Complete final system, prepare demonstrations, slides, and documentation -
14 Final Presentation Project demonstration, presentations, discussion, and course reflection [Final]

Final Project

Students will design and implement an event-camera application.

Possible topics include:

Assessment

Component Weight
Participation 40%
Project Proposal 10%
Final Project 35%
Final Presentation 15%

GitHub Workflow

Throughout the semester, students will

  1. Clone the course repository.
  2. Complete weekly laboratory exercises.
  3. Commit changes regularly.
  4. Push their work to GitHub.
  5. Submit assignments through GitHub.
  6. Develop their final project using version control.

License

Unless otherwise specified, all course materials are released for educational use.

Maintainers