The Khronos Group ratified and publicly released OpenVX 1.0.1 specification, a maintenance update to the open, royalty-free standard for cross platform acceleration of computer vision applications.
OpenVX 1.0.1 integrates bug fixes and clarifications resulting from feedback from working group members and the wider industry implementing and using the specification. 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.
In addition to the OpenVX conformance tests and Adopters Program launched in late 2014, Khronos is now shipping an open source, fully-conformant CPU-based implementation of OpenVX 1.0 that runs on Linux, Android or Windows. The full OpenVX 1.0.1 specification and details about the sample implementation are available at www.khronos.org/openvx.
Members of the OpenVX working group are organizing an OpenVX tutorial at the CVPR 2015 conference in Boston that will be held in the afternoon of June 7th. The tutorial will discuss when vision developers might choose to use OpenVX, OpenCV or OpenCL, and provide an introduction to OpenVX by mapping example computational photography and driver assistance algorithms to the OpenVX graph API. The second half of the tutorial will be a practice session, solving a computer vision problem using the OpenVX sample implementation, followed by a chance for attendees to write their own OpenVX sample code and chat with OpenVX experts. More information on the OpenVX tutorial is here.
OpenVX defines a higher level of abstraction for execution and memory models than compute frameworks such as OpenCL, enabling significant implementation innovation and efficient execution on a wide range of architectures while maintaining a consistent vision acceleration API for application portability. An OpenVX developer expresses a connected graph of vision nodes that an implementer can execute and optimize through a wide variety of techniques such as: acceleration on CPUs, GPUs, DSPs or dedicated hardware, compiler optimizations, node coalescing, and tiled execution to keep sections of processed images in local memories. This architectural agility enables OpenVX applications on a diversity of systems optimized for different levels of power and performance, including very battery-sensitive, vision-enabled, wearable displays. The precisely defined specification and conformance tests for OpenVX make it ideal for deployment in production systems, where cross-vendor consistency and reliability are essential.
OpenVX 1.0 has been finalized for just a few months, but already production implementations are beginning to ship into the market including the recently announced OpenVX-capable IP core by Vivante.
News source: Khronos Group