B.SC. THESISDEFENDED 30 AUG 2016 · GRADE 19.75/20

Detection and Tracking of Moving Objects in Public Environments on the ZYNQ Platform

Real-time processing · Mohajer Technical University of Isfahan · 2014 – 2017

TITLE
Detection and tracking of moving objects in public environments on the ZYNQ platform (real-time processing)
DEGREE
B.Sc. in Electrical Engineering — Electronic Technology
UNIVERSITY
Mohajer Technical University of Isfahan (MTU), Isfahan, Iran
DEFENDED
30 August 2016
GRADE
19.75 / 20
SUPERVISOR
Dr. Mohammadreza Zaker-Haghighi
COLLABORATOR
Sina Shiry

Overview

clk

This thesis built a complete real-time system for detecting and tracking moving objects in public environments on a Xilinx Zynq-7000 SoC — running on a ZYBO development board, whose SoC pairs an ARM processor with FPGA fabric, making it a natural target for HW/SW co-design. The design targeted high speed, high accuracy and strong security at once, while staying cost-effective and able to run standalone — no host PC in the loop.

The pipeline takes live video in over HDMI, isolates a target by color-range filtering, tracks it, and estimates the distance to the object from its apparent size. Results are shown simultaneously on an LED-matrix panel and a VGA monitor, while the distance telemetry streams out over UART.

The development flow moved from algorithm to silicon in three stages: the algorithms were first verified in MATLAB, then optimized in OpenCV, and finally synthesized to hardware with High-Level Synthesis in the Vivado toolchain (Vivado SDK) — with C, C++, HLS and Python across the stack.

Real-time object detection and tracking system on a ZYBO Zynq-7000 board: camera and HDMI video input feed color-based detection, with a tracked red object shown at 1280×720 on VGA and HDMI monitors and on an LED-matrix panel, and distance telemetry read out over UART alongside the Vivado SDK terminal.
FIG. 1 — SYSTEM DIAGRAM: ZYBO (ZYNQ-7000) BOARD · CAMERA / HDMI IN · LED-MATRIX + VGA OUT · UART TELEMETRY
  • HDMI IN
  • COLOR FILTER
  • OBJECT TRACKING
  • DISTANCE CALC
  • VGA · LED PANEL · UART

Contributions

valid
  • End-to-end real-time video pipeline on a ZYBO (ARM + FPGA) SoC: HDMI input through detection, tracking and distance calculation to simultaneous VGA and LED-matrix output plus UART telemetry.
  • HW/SW co-design flow: MATLAB for algorithm verification, OpenCV for optimization, then High-Level Synthesis and Vivado (SDK) synthesis to move the hot loops into FPGA fabric.
  • Color-range detection with object tracking and object-size-based distance estimation, designed for public-environment scenes.
  • Cost-effective, standalone build: the whole system runs on a single ZYBO board with no host PC, meeting the speed, accuracy and security goals together.
  • Open results: the full thesis (in Persian) and the source code are publicly available — see the links below.

Methods & technologies

en
  • Xilinx Zynq-7000 (ARM + FPGA)
  • High-Level Synthesis (HLS)
  • Vivado
  • MATLAB (verification)
  • OpenCV (optimization)
  • C / C++
  • Python
  • HDMI video input
  • VGA output
  • LED-panel driver
  • UART telemetry

Live demonstrations

vsync

Recorded demonstrations of the running system, captured on the Digilent ZYBO (Zynq-7000) board. Videos are muted and play only on demand.

Real-time colour-based detection & tracking: the target's RGB signature is matched per pixel and the object is localised by row/column bounds (TR/TC min–max), live on the Zynq.
Sobel edge-detection filter running on the Digilent ZYBO (Zynq-7000) with HDMI input and VGA output.
Execution-time and accuracy comparison of the detector in MATLAB vs OpenCV vs HLS on the Zynq — the FPGA/HLS implementation processes each frame far faster at matching accuracy.