嵌入式视觉浅谈(二)

去年发布第一篇博客嵌入式视觉浅谈(一)后一直没有时间好好梳理,到现在一年半的时间一直在忙项目开发,直到最近某产品量产,才终于有时间坐下来梳理一下这一年多的开发,再谈谈自己对嵌入式视觉的一点点理解。

嵌入式视觉,最核心的是选择能够完成特定视觉算法的硬件架构,今天来简单梳理一下嵌入式视觉领域的主流硬件平台。目前最流行的是异构多核处理器架构,异构多核,其中一核必有ARM核,这一点无可替代,而另一个或多个核则每家芯片厂都各自的特点,主流的组合包括:ARM+GPU(NVIDA的Jetson系列SOM),ARM+DSP+EVE(TI的Sitara系列),ARM+FPGA(Intel和Xilinx的SoC + FPGA)。

项目前期评估的时候对以上平台有不同程度的了解,简单介绍一下:

Sitara

SitaraJacinto系列类似,特色在于集成了自家无人能敌的DSP核和EVE(嵌入式视觉引擎),这是在停产达芬奇系列处理器之后的又一巨作。不过,TI团队优化了开发流程,在其提供的SDK中支持了OpenCV3.1OpenVXTIDL等。OpenCV不用说,入门级开源库,ti使用C66x核实现ocl加速,并且给出了常用函数的加速效果对比结果,从数据表看,加速效果还是很明显的。客户可以很容易搭建视觉产品的原型,性能/功耗/体积比算是Number One,用的客户还是很多的,包括ADAS,智能相机等。

Jetson

NVIDA则将自家独特的GPU用于辅助ARM核实现多核异构计算,更方便的是还可以直接运行Ubuntu桌面操作系统,开发者完全可以省略复杂的交叉编译环境,当然,交叉编译环境不是重点,重点是运行Ubuntu可以提供灵活的Debug,这一点对于算法工程师再方便不过。

Zynq

说到SoC+FPGA,Zynq的开发者似乎更多一些。Xilinx提供的可以直接对高级语言进行综合实现加速,顺带提供了部分可综合的OpenCV函数,个人感觉并没有什么卵用,概念是好的,但是真正能用到产品中还有很长的距离。对于工程师来说,最方便的则是FPGA在ARM和不同接口Sensor之间的桥接作用和桥接时提供的预处理功能,仅此而已。

以上三种主流的异构多核处理器平台也都提供不同等级的处理器产品,开发者需要综合考虑项目的算法效率,产品功耗,成本,体积,等因素选型。当然,在成本,体积和功耗允许的情况下,尽量选择同系列内最高性能的处理器会是一个比较好的选择,可以尽快完成原型开发,随后再逐步进行硬件降级。说到这里,SitaraJacinto系列的大部分产品都是可以pin-to-pin兼容的,可以在压缩成本时避免重新设计硬件。

写的还是比较仓促,有时间再补充。

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值