The Khronos Group - Connecting Software to Silicon

The Khronos Group is a not for profit industry consortium creating open standards for the authoring and acceleration of parallel computing, graphics, dynamic media, computer vision and sensor processing on a wide variety of platforms and devices. All Khronos members are able to contribute to the development of Khronos API specifications, are empowered to vote at various stages before public deployment, and are able to accelerate the delivery of their cutting-edge 3D platforms and applications through early access to specification drafts and conformance tests.

Hardware acceleration API for Computer Vision applications and libraries

Computer vision has become an essential component of many modern applications including gesture tracking, smart video surveillance, automatic driver assistance, biometrics, computational photography, augmented reality, visual inspection, robotics and more. The Khronos vision working group has been formed to drive industry consensus to create a cross-platform API standard to enable hardware vendors to implement and optimize accelerated computer vision algorithms. The Khronos vision API can accelerate high-level libraries, such as the popular OpenCV open source vision library, or be used by applications directly. A strong focus of the working group will be on providing computer vision on mobile and embedded systems and enabling acceleration on a wide variety of computing architectures including CPUs, GPUs and DSPs. The vision API will also explore interoperability with existing Khronos standards for camera control, video processing, compute acceleration and graphics rendering.

OpenVX flow

OpenVX Overview

  • Vision Hardware Acceleration Layer
    • Enables hardware vendors to implement accelerated imaging and vision algorithms
    • For use by high-level libraries or apps
  • Focus on enabling real-time vision
    • On mobile and embedded systems
  • Diversity of efficient implementations
    • From programmable processors, through GPUS to dedicated hardware pipelines
Dedicated hardware can help make vision processing performant and low-power enough for pervasive always-on use

OpenVX input and output

OpenVX Execution Flow

  • OpenVX Graph for efficient execution
    • Each Node can be implemented in software or accelerated hardware
    • Data transfer between nodes may be optimized
  • EGL can provide data and event interop with other APIs with streaming
    • BUT use of other Khronos APIs are not mandated
  • VXU Utility Library provides efficient access to single nodes
    • Open source implementation easy way to start using OpenVX






OpenVX and OpenCV are Complementary

  OpenCV and OpenVX Comparison - OpenCV Column OpenCV and OpenVX Comparison - OpenVX Column
Governance

Open Source Community Driven
No formal specification

Formal specification and full conformance tests
Implemented by hardware vendors

Scope Very wide
1000s of functions of imaging and vision
Multiple camera APIs/interfaces
Tight focus on hardware accelerated functions for mobile vision
Use external camera API
Efficiency Memory-based architecture
Each operation reads and writes memory
Sub-optimal power / performance
Graph-based execution
Optimized nodes and data transfer
Highly efficient
Conformance No Conformance testing
Every vendor implements different subset
Full conformance test suite / process
Reliable acceleration platform
Use Case Rapid prototyping Production deployment

OpenVX Participants and Timeline

  • Aiming for specification before end of 2013
  • Itseez is working group chair
  • QC/TI are specification editors
OpenVX participating member companies
safety