OpenVX
When Khronos had originally announced OpenVX and the associated APIs, there was a lot of excitement about how it could help simplify and unify computer vision within the industry. That announcement was merely the establishment of the working group and the companies that would contribute to the standard’s development and finalization. With today’s announcement, however, OpenVX officially becomes an industry standard that can be commercially deployed within products and developed for immediately. This finalized and ratified OpenVX 1.0 version brings a laundry list of features that help abstract the underlying computer vision interaction with hardware in order to make cross-platform implementations more possible.
Keep in mind that OpenVX is an API abstraction that makes implementing computer vision easier and more vendor agnostic while also giving more tools to improve performance and optimize power consumption. The target goals are to help bring mobile SoC vendors as well as embedded vendors to bring more refined computer vision implementations to their customers and make developing for computer vision more universal as well. OpenVX helps take prototyped OpenCV implementations and turn them into finalized products that can ship into whatever market they are targeted towards, OpenVX is designed to bring production quality computer vision to these vendors and their customers.
Since the announcement of OpenVX and the finalization of OpenVX 1.0 as a standard, the number of companies that have joined the working group have also expanded and may actually help give you an idea of who is interested in utilizing computer vision in their products as well as who will have a more developer-friendly environment. Also, the spec itself has not changed since the original announcement, but rather now there are conformance tests available in order to ensure that certain implementations of OpenVX are interoperable between vendor implementations and adhere to the standard. Also, since the original announcement, there are now two implementations of OpenVX that prove the design, one being a Khronos sample implementation that will be available opne source by the end of the year, and another from Nvidia that is already working in the alpha phase as part of the VisionWorks vision SDK.
Unfortunately, one company missing from the OpenVX working group is Apple, who is a member of other working groups like OpenCL and actively utilize standards like OpenGL in most of their products. It is a little concerning that they aren’t part of the list of companies involved with OpenVX as computer vision becomes ever more increasingly important to mobile and embedded computing. Not to mention, most of Apple’s competitors are already involved with OpenVX and there’s a very good chance that this could give those companies the leg up on Apple in terms of computer vision implementations. There is still a chance that Apple could simply use OpenVX without officially being an ‘adopter’ or a member of the working group through their GPU relationship with Imagination, and hopefully that will be the case, but at the same time there’s a very strong chance that they could be developing their own computer vision technologies and may once again diverge from the rest of the industry.