OPENCV库
赛灵思还推出了OpenCV(CV就是计算机视觉的缩写)库,进一步完善了Smarter视觉技术。OpenCV是OpenCV.org发布的一种业界标准的开源算法库,可供嵌入式视觉开发人员用于迅速创建视觉系统。世界各地的嵌入式视觉开发人员都积极为该库贡献新算法,目前该库已包含有2,500多种使用C、C++、Java和Python语言编写完成的算法(见第24页的OpenCV报道)。库中的算法复杂程度各个不同,从图像滤波器等简单功能到动作检测等高级分析功能,无所不有。
Alvarez表示,这些OpenCV算法所针对的几乎是用任何商用微处理器和DSP实现的方案。由于Zynq SoC使用的是ARM处理系统,因此可在其处理器上实现这些采用C++语言编写的算法。
Alvarez指出,有了Vivado HLS,用户可以用C或C++语言编写这些算法,将函数调用从OpenCV改为HLS,然后使用Vivado HLS,将算法综合成或者编译成为便于Zynq-7000 SoC的逻辑部分实现而优化的RTL代码。在Vivado环境中使用OpenCV,便于Smarter视觉架构师方便地比较设计方案中的给定算法到底是在处理器还是Zynq-7000 All Programmable SoC的FPGA逻辑部分运行效率最佳。赛灵思开源库的推出可为客户提供一个良好的设计开端。赛灵思使用Vivado HLS,已经编译了OpenCV库中30多种最常用的嵌入式视觉算法。客户能够在系统级快速权衡处理器与逻辑,并且立即在Zynq-7000 All Programmable SoC中运行,为给定应用提供最理想的系统。
赛灵思及其联盟成员将积极不断地从OpenCV库移植更多功能,按季提供给赛灵思的用户群。由于开发人员可以在几乎任何商用处理器上运行OpenCV库,视觉设计人员将能够比较运行在各种芯片器件上的算法的性能并为之建立基准。
作为Smarter视觉计划的一部分,赛灵思还开发出了SmartCORE IP套件,以满足各种细分市场的Smarter视觉设计要求,为新一代产品带来Smarter视觉功能。借助赛灵思最新推出的IP Integrator工具,客户能够将SmartCORE IP套件提供的内核和OpenCV库提供的算法迅速实现在设计中。这种新工具是一种新型即插即用IP环境,方便客户在原理图环境中工作,或者如果需要的话也支持在命令行环境中工作。
目标平台意识
Alvarez指出,自Vivado设计套件诞生后,赛灵思让该套件的设计具有器件意识,这样就能充分发挥每款器件的功能。Alvarez称,有了IP Integrator,Vivado设计套件不仅具有器件意识,现在还具有目标平台意识,支持所有Zynq SoC和7系列FPGA开发板以及套件。具有目标平台意识,就意味着Vivado设计套件现在能配置和应用特定开发板的设计规则检查,从而确保快速推出切实可行的系统。
举例来说,当设计人员选择赛灵思Zynq-7000 SoC视频及成像套件,并在IP Integrator中实例化Zynq SoC处理系统时,Vivado设计套件则会用恰当的外设、驱动程序和存储器映射对处理系统进行预配置,从而为开发板提供支持。嵌入式设计团队现在能针对双核ARM处理系统和高性能FPGA逻辑更迅速地识别、重用并集成IP软/硬核。
用户可使用一系列对话框设定处理系统及其逻辑之间的接口。IP Integrator随后自动生成RTL,并针对性能或面积进行优化。接下来用户可添加自己的定制逻辑,或使用Vivado IP目录完成设计。
到目前赛灵思客户使用赛灵思FPGA已经开发出怎样的Smarter视觉系统,是非常值得一看的。Zynq-7000 All Programmable SoC和强大的Smarter视觉环境的问世,为开发更令人叫绝的新产品提供了保障。