Skip to content

Repository files navigation

Event Camera Lab

An interactive, browser-based simulator that shows how changes in log intensity become positive and negative events.

Event Camera Lab social preview

What it does

  • Converts a live webcam feed or local video into simulated event-camera data.
  • Visualizes positive and negative events with adjustable persistence.
  • Lets you inspect any pixel's intensity, log intensity, reference level, and threshold crossings.
  • Includes ideal and simplified realistic sensor modes, asymmetric thresholds, preprocessing controls, and guided experiments.
  • Explains the limitations of generating events from conventional frame-based video.

All camera and video processing happens locally in the browser. Media is never uploaded, recorded, or sent to a backend.

Run locally

Requires Node.js 22.13 or newer.

npm install
npm run dev

Then open http://localhost:3000.

npm run build
npm run lint

How it works

Frames are resized, converted to grayscale, and processed in a Web Worker. For each pixel, the simulator compares the current log intensity with the reference stored at its previous event. Threshold crossings emit one or more events and advance that reference by the corresponding contrast threshold.

Because a webcam only supplies frames, event timestamps between frames are linearly estimated. This is an educational simulator, not a replacement for a hardware event camera with asynchronous microsecond timing and high dynamic range.

Stack

React, TypeScript, vinext, Canvas, Web Workers, and OpenAI Sites.

References

License

No license has been added yet.

About

Interactive browser-based event camera simulator with a pixel microscope and local-only video processing.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages