SmartCamera
SmartCamera copied to clipboard
Smart camera with OV 7670 and Zynq
SmartCamera - Computer vision on Zynq
About
Computer vision on Zynq platfotm with OV7670 (or any other) digital image sensor.
This repository contains the sorce code of a basic computer vision pipeline implemented on Xilinx devices (e.g., Zynq) only with HLS tools (specifically, Vivado HLS). The input image stream from a OV7670 (or any other imaging device) is fed to the FPGA for processing and then transmitted (UDP) in real-time to a remote client (using the LWIp library) from the ARM processor of the Zynq device. The processed image stream is also sent to the VGA output available on the evaluation board (e.g., Zedboard). Tested with operating system Baremetal (Zynq ARM processor) but easily portable to Linux OS. An OpenCV client allows to visualize the image stream (raw image Luma, raw image Chroma, Color image and processed image) A client running on the remote computer enables to change (via TCP) parameters of the convolutional filter (separable or standard) implemeted into the FPGA.
Supported Boards and Images
Board | Linux Image | MD5 Checksum | Documentation |
---|---|---|---|
Xilinx Zedboard | ubuntu-16.04.2-minimal-armhf.img.gz | ba226aba4cea844b64905281211cc695 | User Guide |
Xilinx ZCU102 | Work in progress | Work in progress | Work in progress |
Xilinx Ultra96 | Work in progress | Work in progress | Work in progress |
Other Resources
Other Informations
For more details see 06 - Embedded_Vision.pdf in Documentation
- https://www.youtube.com/watch?v=EG3NYqMJvZI
- https://www.youtube.com/watch?v=QFxjXWgBBcc
- https://www.youtube.com/watch?v=6HEgdZEHpsM
If you use this code please refer to:
06 - Embedded_Vision.pdf available at www.vision.disi.unibo.it/smatt
Credits to initial developers: Riccardo Albertazzi and Simone Mingarelli
OV7670 and PYNQ
At the following link is available a new project, developed by Mattia Mazzoli and Matteo Di Lorenzi, for the PYNQ Z2 board:
https://github.com/m-dilorenzi/OV7670-PynqZ2