OpenVX 1.0: A Computer Vision Acceleration API
Besides the Khronos Group releasing the OpenCL 2.0 specification today at SC13 in Denver, half-way around the world today in Hong Kong the OpenVX 1.0 specification was presented at SIGGRAPH Asia. OpenVX is a new computer vision acceleration API for a new generation of libraries and applications.
The OpenVX 1.0 computer vision acceleration is currently considered a provisional specification that's out for public review. Like OpenCL, OpenGL, and the other Khronos Group APIs, OpenVX will be an open standard and has already seen apparent interest from a range of organizations.
The Khronos.org announcement explains OpenVX 1.0 as "an open, royalty-free standard for cross platform acceleration of computer vision applications and libraries. OpenVX enables performance and power optimized computer vision algorithms for use cases such as face, body and gesture tracking, smart video surveillance, automatic driver assistance systems, object and scene reconstruction, augmented reality, visual inspection, robotics and more."
Additionally, "An OpenVX application expresses vision processing holistically as a graph of function nodes. An OpenVX implementer can optimize graph execution through a wide variety of techniques such as: acceleration of nodes on CPUs, GPUs, DSPs or dedicated hardware, compiler optimizations, node coalescing, and tiled execution to keep sections of processed images in local memories as they flow through the graph. Khronos has released a provisional tiled execution extension alongside the main OpenVX specification to enable user custom kernels to exploit this style of optimization. Additionally, Khronos has released the VXU utility library to enable developers using OpenVX to call individual nodes as standalone functions for easy code migration...OpenVX can be used directly by applications or to accelerate higher-level middleware, such as the popular OpenCV open source vision library that is often used for application prototyping."
The OpenVX 1.0 computer vision acceleration is currently considered a provisional specification that's out for public review. Like OpenCL, OpenGL, and the other Khronos Group APIs, OpenVX will be an open standard and has already seen apparent interest from a range of organizations.
The Khronos.org announcement explains OpenVX 1.0 as "an open, royalty-free standard for cross platform acceleration of computer vision applications and libraries. OpenVX enables performance and power optimized computer vision algorithms for use cases such as face, body and gesture tracking, smart video surveillance, automatic driver assistance systems, object and scene reconstruction, augmented reality, visual inspection, robotics and more."
Additionally, "An OpenVX application expresses vision processing holistically as a graph of function nodes. An OpenVX implementer can optimize graph execution through a wide variety of techniques such as: acceleration of nodes on CPUs, GPUs, DSPs or dedicated hardware, compiler optimizations, node coalescing, and tiled execution to keep sections of processed images in local memories as they flow through the graph. Khronos has released a provisional tiled execution extension alongside the main OpenVX specification to enable user custom kernels to exploit this style of optimization. Additionally, Khronos has released the VXU utility library to enable developers using OpenVX to call individual nodes as standalone functions for easy code migration...OpenVX can be used directly by applications or to accelerate higher-level middleware, such as the popular OpenCV open source vision library that is often used for application prototyping."
Add A Comment