OpenVX
DeveloperKhronos Group
Stable release
1.3.1 / November 7, 2023; 2 years ago (2023-11-07)
Written inC
Operating systemCross-platform
PlatformCross-platform
TypeAPI
Websitewww.khronos.org/openvx/

OpenVX is an open, royalty-free standard for cross-platform acceleration of computer vision applications. It is designed by the Khronos Group to facilitate portable, optimized and power-efficient processing of methods for vision algorithms. This is aimed for embedded and real-time programs within computer vision and related scenarios. It uses a connected graph representation of operations.

Overview

edit

OpenVX specifies a higher level of abstraction for programming computer vision use cases than compute frameworks such as OpenCL. The high level makes the programming easy and the underlying execution will be efficient on different computing architectures. This is done while having a consistent and portable vision acceleration API.

OpenVX is based on a connected graph of vision nodes that can execute the preferred chain of operations. It uses an opaque memory model, allowing to move image data between the host (CPU) memory and accelerator, such as GPU memory. As a result, the OpenVX implementation can optimize the execution through various techniques, such as acceleration on various processing units or dedicated hardware. This architecture facilitates applications programmed in OpenVX on different systems with different power and performance, including battery-sensitive, vision-enabled, wearable displays.[1]

OpenVX is complementary to the open source vision library OpenCV. OpenVX in some applications offers a better optimized graph management than OpenCV.

History

edit
  • OpenVX 1.0 specification was released in October 2014.
  • OpenVX sample implementation was released in December 2014.
  • OpenVX 1.1 specification was released on May 2, 2016.
  • OpenVX 1.2 was released on May 1, 2017.[2]
  • Updated OpenVX adopters program and OpenVX 1.2 conformance test suite was released on November 21, 2017.[3]
  • OpenVX 1.2.1 was released on November 27, 2018.[4]
  • OpenVX 1.3 was released on October 22, 2019.[5]

Implementations, frameworks and libraries

edit

References

edit
  1. ^ Brill, Frank; Erukhimov, Victor; Giduthuru, Radha; Ramm, Stephen (2020). OpenVX Programming Guide. Elsevier. ISBN 978-0128164259.
  2. ^ "Khronos Releases OpenVX 1.2 Specification for Cross-Platform Acceleration of Power-Efficient Vision". May 2017.
  3. ^ "Khronos Releases Updated OpenVX Adopters Program". The Khronos Group. 2017-11-21. Retrieved 2017-12-06.
  4. ^ "Khronos OpenVX Registry - The Khronos Group Inc". www.khronos.org. Retrieved 2019-08-05.
  5. ^ "Khronos Releases OpenVX 1.3 Open Standard for Cross-Platform Vision and Machine Intelligence Acceleration". 22 October 2019.
edit

📚 Artikel Terkait di Wikipedia

PowerVR

including new INT16 and INT8 data paths that boost performance by up to 4x for OpenVX kernels. Further improvements in shared virtual memory also enable OpenCL

Graphics processing unit

from ATI to support hardware (GPU) decode with DXVA OpenGL API OpenCL API OpenVX API TensorFlow Lite Mantle (API) Metal (API) Core ML Vulkan (API) Direct3D

Khronos Group

market OpenVG, an API for accelerating processing of 2D vector graphics OpenVX, Hardware acceleration API for Computer Vision applications and libraries

Shader

Tensor shaders are supported by Microsoft via DirectML, by Khronos Group via OpenVX, by Apple via Core ML, by Google via TensorFlow, by Linux Foundation via

Vision processing unit

provide a better precision/cost tradeoff for AI workloads MPSoC OpenCL OpenVX Physics processing unit, a past attempt to complement the CPU and GPU with

Vivante Corporation

standard. Created by VeriSilicon support for the Vulkan API 1.0 and for OpenVX 1.0 is provided for at least 6 major desktop and embedded operating systems

Meteor Lake

static memory LeonRT front-end processor Support APIs like DirectML, OpenGL, OpenVX and Vulkan up to 96 GB LPDDR5X-7467 on all processors, and DDR5-5600 memory

Rockchip

software supports multiple APIs: OpenGL ES 3.2, Vulkan 1.0, OpenCL 1.1/1.2, OpenVX 1.0, AI interfaces support TensorFlow Lite/AndroidNN API. RK3399 Linux source