Releases: Corning-AI/embedded-linux
Releases · Corning-AI/embedded-linux
v0.3.0 — Real-Time Edge AI: NPU Object Detection at 11ms
Real-Time Edge AI Demo on i.MX 8M Plus
Watch the attached demo video (68 seconds) showing live NPU-accelerated object detection on the i.MX 8M Plus EVK.
What's in the video
- Live OV5640 MIPI camera → NPU inference → HDMI output with bounding boxes
- 11ms per frame on the 2.3 TOPS NPU (VX Delegate + TFLite INT8)
- Multi-object detection: person, cell phone, bottle — up to 3 objects simultaneously
- Real-time OSD showing model name, NPU latency, FPS, and object count
- Stable 9 FPS end-to-end pipeline (camera capture → inference → overlay → display)
Performance
| Model | NPU | CPU | Speedup |
|---|---|---|---|
| MobileNet SSD v2 (80 COCO classes) | 11 ms | 45 ms | 4× |
| MoveNet Lightning (17 keypoints) | 13 ms | 26 ms | 2× |
What's new in v0.3.0
- Revamped README with demo screenshots and performance showcase
- 5 demo frames extracted from video for the GitHub page
- Updated repo description and topics for discoverability
- Detection app improvements (multi-model, OSD, headless mode)
Full pipeline
OV5640 (MIPI CSI-2) → ISI DMA → GStreamer appsink → TFLite + NPU → PIL overlay → HDMI
Previous releases
- v0.2.0: Kernel drivers, V4L2 capture, device tree, WiFi/BT
v0.2.0 — Kernel drivers, camera pipeline, NPU stack
What's new
Kernel modules
- hello — Minimal loadable module demonstrating
module_init/module_exitandprintk - chardev — Character device driver with
file_operations(read/write/ioctl), mutex synchronization, automatic/devnode creation - bme280 — I2C client driver with device tree
compatiblematching,i2c_smbusregister access, and sysfs attributes
Userspace programs
- V4L2 capture (
drivers/v4l2-capture/) — Frame capture using the V4L2 multi-planar API, mmap zero-copy buffers, directly targets the i.MX8MP ISI - Camera detection app (
app/camera-detect/) — TFLite + VX Delegate object detection with GStreamer camera input
Device tree
- OV5640 overlay (
dts/imx8mp-evk-ov5640.dts) — Fully annotated device tree overlay showing MIPI CSI-2 pipeline, clock providers, regulator bindings, and OF graph endpoint linking
Hardware verified
- OV5640 MIPI CSI-2 camera: live 640x480@30fps preview on HDMI via GStreamer
- NPU stack: galcore 6.4.11 + VX Delegate + TFLite 2.16.2
- GPU: Weston + weston-simple-egl @ 60 FPS
Documentation
- Rewrote README with actual repository structure and verified hardware results
- Updated camera+NPU guide with correct
/dev/video3device path and ISI pipeline details
Target hardware
NXP i.MX 8M Plus EVK (8MPLUSLPD4-EVK), Yocto Scarthgap, kernel 6.6.52-lts