Vision HDL Toolbox


Vision HDL Toolbox

Design image processing, video, and computer vision systems for FPGAs and ASICs


Vision HDL Toolbox™ provides pixel-streaming algorithms for the design and implementation of vision systems on FPGAs and ASICs. It provides a design framework that supports a diverse set of interface types, frame sizes, and frame rates, including high-definition (1080p) video. The image processing, video, and computer vision algorithms in the toolbox use an architecture appropriate for HDL implementations.

The toolbox algorithms are designed to generate readable, synthesizable code in VHDL® and Verilog® (with HDL Coder™). The generated HDL code can process 1080p60 in real time.

Toolbox capabilities are available as MATLAB® System objects™ and Simulink® blocks.


Example Hardware Subsystems

Get started with example subsystems that show hardware implementation techniques for vision processing algorithms. All are ready to generate Verilog or VHDL using HDL Coder.

Automated Driving

Start building your automated driving system with hardware-proven subsystems for lane detection, pothole detection, and stereo disparity computation.

Feature Detection

Learn how to implement feature detection techniques with streaming hardware to develop surveillance, object tracking, industrial inspection, and other applications.

Camera Pipeline

Get started building your own image conditioning hardware using examples of noise removal, gamma correction, and histogram implementations.

Image conditioning for an edge detection FPGA application.

Vision Processing IP Blocks

Intellectual property (IP) blocks in Vision HDL Toolbox provide efficient hardware implementations for computationally intensive streaming algorithms that are often implemented in hardware, enabling you to accelerate the design of image and video processing subsystems.

Hardware-Accelerated Vision Processing

Model and simulate efficient hardware implementations of vision processing algorithms, such as conversions, filtering, morphology, and statistics. Then use HDL Coder to generate synthesizable VHDL or Verilog RTL.

HDL-ready Edge Detector block and its configurable parameters.    

Built-In Hardware Data Management

Use Vision HDL Toolbox blocks to automatically manage streaming input data, such as control signals, region-of-interest (ROI) windows, and line buffers. Use HDL Coder to generate VHDL or Verilog RTL for the control functionality you model and simulate.

Automatically buffer rows to create a ROI window for edge detection.    

Hardware Implementation Utilities

Build your own hardware data management functionality with utility blocks such as line buffers, region-of-interest (ROI) selectors, pixel stream FIFOs and aligners, and control signal bus creators.

Synchronizing two pixel streams for alpha blending.    

Verification Using Frame-Based Algorithms

Connect frame-based algorithms and test benches to streaming hardware implementations for efficient verification.

Conversion Between Frames and Pixels

Convert full-frame video to a stream of pixels with control signals for processing in hardware. Then convert the streaming hardware output to frames for verification against your golden reference algorithm.

Frame To Pixels block for converting image frames to a stream of pixels with control signals for hardware processing.

MATLAB and Simulink Verification Examples and Templates

Learn how to use your Image Processing Toolbox and Computer Vision Toolbox algorithms and tests to verify your hardware implementation.

Verifying a streaming hardware implementation using a frame-based algorithm.

HDL and FPGA Cosimulation

Use HDL Verifier™ to verify your hardware subsystem via RTL simulation or on an FPGA development kit connected to your MATLAB or Simulink test environment.

HDL Verifier supports FPGA-in-the-loop verification using Xilinx®, Intel®, and Microsemi® FPGA boards.

FPGA, ASIC, and SoC Deployment

Easily target your vision processing application to FPGA hardware for testing with live video input and reuse the same models for production deployment.

Prototype Platform with Live Video Input

Prototype your vision processing application by downloading the Computer Vision Toolbox™ Support Package for Xilinx® Zynq®-Based Hardware and using HDL Coder and Embedded Coder® to generate code from your MATLAB or Simulink implementation.

Prototype your design on FPGA hardware with real-world video input.    

Generate code with SoC interconnect interfaces.

Latest Features

Image Pyramid Example

Generate resized pixel streams from an input pixel stream

FAST Corner Detection Example

Detect corners using the features-from-accelerated-segment test (FAST) algorithm

See release notes for details on any of these features and corresponding functions.

Vision Processing for FPGA

Watch this five-part video series that introduces key concepts and the workflow for targeting vision applications to FPGAs for prototyping and production.

Get a Free Trial

30 days of exploration at your fingertips.

Download now

Ready to Buy?

Get pricing information and explore related products.

Are You a Student?

Get MATLAB and Simulink student software.

Learn more