OpenVX
Original author(s) | Khronos Group |
---|---|
Developer(s) | Khronos Group |
Stable release |
1.1
/ May 2, 2016 |
Written in | C |
Operating system | Cross-platform |
Platform | Cross-platform |
Type | API |
Website |
www |
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
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 is possible to optimize the underlying implementation through various techniques, for example: acceleration on various processing units or dedicated hardware. This architecture facilitate applications programmed in OpenVX on different systems with different power and performance, including battery-sensitive, vision-enabled, wearable displays.
OpenVX is complementary to the open source vision library OpenCV. OpenCV is also used for application prototyping, however it is not as tightly defined and does not have graph optimizations.
History
- 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.
References
- Official website for OpenVX, Accessed 16 February 2015
- OpenVX Tutorial Material
External links
- Official website for OpenVX
- OpenVX Specification Registry
- Highly optimized OpenVX open-source implementation on GitHub from AMD