openvx-logo

Portable, Power-efficient Vision Processing

OpenVX is an open, royalty-free standard for cross platform acceleration of computer vision applications. OpenVX enables performance and power-optimized computer vision processing, especially important in embedded and real-time uses cases such as face, body and gesture tracking, smart video surveillance, advanced driver assistance systems (ADAS), object and scene reconstruction, augmented reality, visual inspection, robotics and more.

OpenVX 1.0.1 Specification

OpenVX – Vision Acceleration

Royalty-free open standard API

  • Reliably accelerated by hardware vendors
  • Tightly defined conformance tests

Targeted at low-power, real-time applications

  • Mobile and embedded platforms

Portability across diverse heterogeneous processors

  • ISPs, Dedicated hardware, DSPs and DSP arrays, GPUs, Multi-core CPUs …

Doesn’t require high-power CPU/GPU Complex

  • Low-power host can setup and manage frame-rate vision processing pipeline

OpenVX Graphs – The Key to Efficiency

OpenVX developers express a graph of image operations (‘Nodes’)

  • Nodes can be on any hardware or processor coded in any language

Graph enables implementations to optimize for power and performance

  • E.g. Nodes may be fused by the implementation to eliminate memory transfers
  • E.g. Processing can be tiled to keep data entirely in local memory/cache

Minimizes host interaction during frame-rate graph execution

  • Host processor can setup graph which can then execute almost autonomously

Layered Vision Processing Ecosystem

Lower-level compute APIs can be used to implement OpenVX nodes

  • Depending on the available processors

Coding in OpenCL can provide portability across heterogeneous processors

  • ISPs, Dedicated hardware, DSPs and DSP arrays, GPUs, Multi-core CPUs …

OpenVX and OpenCV are Complementary

  OpenCV OpenVX
Implementation

Community driven open source library

Open standard API designed to be implemented by hardware vendors

Conformance

Extensive OpenCV Test Suite but
no formal Adopters program

Implementations must pass defined conformance test suite to use trademark

Consistency

Available functions can vary depending on implementation / platform

All core functions must be available in all conformant implementations

Scope

Very wide
1000s of imaging and vision functions
Multiple camera APIs/interfaces

Tight focus on core hardware accelerated functions for mobile vision – but extensible
Uses external/native camera API

Efficiency

Memory-based architecture
Each operation reads and writes to memory

Graph-based execution
Optimizable computation and data transfer

Typical Use Case

Rapid experimentation and
prototyping - especially on desktop

Production development & deployment on mobile and embedded devices

Embedded
Deployment

Re-usable code

Callable library