添加OpenVX™ 1.1的视觉应用支持PowerVR GPU

Imagination昨天发布的新闻可以了解到,PowerVR GPU是第一款符合Khronos组织OpenVX 1.1规范的产品。

OpenVX是一个开放的、免版税的标准API,用于计算机视觉应用的跨平台加速。作为游戏的引领者,Imagination已经用实力证明承诺,即确保我们的硬件是开发人员创建和运行完全优化视觉算法的理想平台。

计算机视觉是一门科学,它将“视觉智能”引入了计算设备中,使计算机可以像人类一样具有视觉和思考能力。这个领域的重要性已日趋凸显,并产生了许多实例,如:脸部、身体及手势跟踪、智能视频监控、高级驾驶员辅助系统(ADAS)、对象和场景重建、增强现实、目视检查及机器人等。

视觉系统就性能而言已进入一个转折点。正如嵌入式无线技术曾一度被认为是不可思议的奢侈品,视觉处理在过去同样只存在于昂贵的定制设备中,如:手术机器人和制造系统。如今,视觉系统已经非常普遍。大多数相机具有人脸检测算法,这样便可以优化对焦和曝光。微软Kinect系统在游戏市场大获成功,其Xbox 360将图像识别带入了人们的寻常生活中。

计算机视觉系统取得了巨大的飞跃,推动了汽车行业ADAS和新兴自动驾驶功能的发展,如:90%的ADAS系统都使用了Mobileye EyeQ视觉SoC。

OpenVX起初问世的源由是,满足创建标准框架用于视觉应用程序开发的需求。OpenCL等低级API在编程和维护方面具有挑战性,但OpenVX则提供了一组标准的构建块,使开发人员得以更加有效地将其与视觉应用程序组合在一起。

有人经常会拿OpenVX与OpenCV进行比较,虽然它们确实具有一些重大的差异。OpenCV是非标准化的,有很多不同的实现方式,但OpenVX是标准化的,并进行了设置以适合已有产品的系统。OpenCV允许算法成型,但通常并不适用于在现实中部署。而OpenCV通常十分低效,每个函数都将从内存中进行读写,且没有优化数据传输。此外,使用OpenVX编程时,将产生记录了个人操作数据和流程(节点)的详细图表,并随后由OpenVX进行处理。

处理后的整个图表进行了优化,这样便可以合并个人操作及消除中间数据。同时, OpenCV所需的个人函数调用中,那些离散串联的表达是本不可能实现的方式,但在并行时可以充分利用。因此,使用OpenVX,整个算法都可以适应硬件加速,而OpenCV只能使用独立的功能单元。

下图选自Khronos官网。下图清晰展示了OpenCV和OpenVX的差异,强化了视觉应用程序对产品优质API的需求。
.
标准化可以使整个生态系统受益。Imagination可以优化GPU设计来满足标准,而OEM可以发展为标准。这些已经通过一致性测试,并且其内容可以在任何可兼容的架构上运行。使用OpenVX,开发人员将不需要逐个运行节点,相反,这些节点可以并行运行,并适合在PowerVR GPU上高效地运行。

早在今年5月,Khronos便发布了第一版OpenVX 1.1标准,随后又增加了几个有用的功能。突出的亮点包括中值滤波功能、侵蚀和扩张图像过滤器,这些形态过滤器可用于清除、锐化及平衡捕获图像的像素,使识别内部特性及提取所需的信息变得更加容易。

除了OpenVX 1.1,Khronos还在标准中添加了神经网络扩展,从而使OpenVX成为执行卷积神经网络(CNN)的理想产品。CNN对于自动驾驶汽车十分关键,它们是一种高效的识别汽车和其它对象的方式,如:行人、实时障碍物和道路边界。CNN依靠复杂的乘积函数,这些与PowerVR GPU的高并行计算能力又十分匹配。CNN的应用还扩展到了其他领域,机器人、医疗、零售、非视觉数据的实时处理等。

通过保持OpenVX 1.1等最前沿的技术,Imagination努力确保,开发人员可以使用其架构,利用最新的发展技术,为用户创建更好的产品。

若想进一步了解如何在PowerVR GPU中使用OpenVX 1.1 ,开发人员可以加入PowerVR社区,请登录
http://www.powervrinsider.com

本文由PowerVR产品和技术营销部高级主管克里斯·龙斯达夫和PowerVR平台服务高级主管史蒂夫•兰姆贡献。

英文链接: https://imgtec.com/blog/openvx-1-1-support-powervr-gpus/

声明:
本文为原创文章,转载需注明作者、出处及原文链接,否则,本网站将保留追究其法律责任的权利

--电子创新网--
粤ICP备12070055号