Giter Site home page Giter Site logo

calvinee / byu_pynq_pr_video_pipeline Goto Github PK

View Code? Open in Web Editor NEW

This project forked from byuccl/byu_pynq_pr_video_pipeline

0.0 0.0 0.0 14.31 MB

The Demo that was presented at FCCM.

License: BSD 3-Clause "New" or "Revised" License

Jupyter Notebook 99.02% Python 0.19% Tcl 0.78%

byu_pynq_pr_video_pipeline's Introduction

BYU Pynq PR Video Pipeline

This is a BYU fork of the PYNQ project (https://github.com/Xilinx/PYNQ)

As presented at FCCM 2018

alt tag

PYNQ is an open-source project from Xilinx that makes it easy to design embedded systems with Zynq All Programmable Systems on Chips (APSoCs). Using the Python language and libraries, designers can exploit the benefits of programmable logic and microprocessors in Zynq to build more capable and exciting embedded systems. PYNQ users can now create high performance embedded applications with

  • parallel hardware execution
  • high frame-rate video processing
  • hardware accelerated algorithms
  • real-time signal processing
  • high bandwidth IO
  • low latency control

See the PYNQ webpage for an overview of the project, and find documentation on ReadTheDocs to get started.

Overview

This demo utilizes 11 different partial reconfigurable regions that are connected to an AXI-Stream switch. This Video Pipeline connects both to the raw HDMI ports as well the VDMA. This allows for configurable combinations of different hardware video filters with very little latency (<600 clock cycles) at 1080p 60fps. The Filters are:

  • ASCII text overlay
  • Dilate
  • Emboss
  • Erode
  • Grayscale
  • Green Screen
  • Image Overlay
  • Invert
  • Japanese Hiragana text overlay
  • Custom 3x3 Kernel
  • Line overlay
  • Mirror
  • RGB filter
  • Sobel
  • Threshold

Source code will be available in coming months with the potential to use High-Level Synthesis to design custom filters. Go from a C file to a Partial Bit file in 20 to 30 mins.

Quick Start

In order to install it your PYNQ, connect to the board, open a terminal and type:

# (on PYNQ v2.1)
sudo pip3.6 install git+https://github.com/byuccl/BYU_PYNQ_PR_Video_Pipeline.git

Just run the the Demos in the notebooks. The best video source is the HDMI output on a laptop. If the kernel crashes, try again.

byu_pynq_pr_video_pipeline's People

Contributors

aew2015 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.