首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

OpenCV的加速嵌入式系统开发中的应用

OpenCV的加速嵌入式系统开发中的应用

嵌入式处理器的性能日益提升、价格不断下降,带来日益广泛的嵌入式计算机视觉应用,包括从安全及工业监控到自动化车辆与汽车安全等领域。开发人员可充分利用越来越高级的硬件,在不影响基本质量的同时,更快速、更低成本地开发具有突破性性能的产品。
开发周期缩短而带来的巨大压力,迫使嵌入式系统开发人员必须高效利用嵌入式领域与传统PC工作站领域的现有技术;适应并复用现有稳定软件可为嵌入式开发人员提供不断开发重大新项目的必备基础。
OpenCV就是PC软件进入嵌入式开发领域的一个实例。OpenCV是一款免费的开源计算机视觉库,可提供从影像过滤及转换,到特性抽象与机器学习等几十个不同类别的数百种算法。它已被成千上万的开发人员所使用,而且还在不断发展之中。目前有很多库是针对嵌入式系统的,但很少有像OpenCV这样能够在计算机视觉领域得到普遍推广,而且涵盖如此丰富的算法。
尽管OpenCV最初来源于Intel的x86架构,但它也不失为目前功能日益强大的嵌入式器件的自然选择。OpenCV现已移植到嵌入式处理器常用CPU选择ARM架构上,这点也并不奇怪。我们完全能够在嵌入式器件上原封不动地采用OpenCV的交叉编译版,不过,存储器限制与其它架构注意事项可能会带来一个技术难题。因此我们需要对OpenCV进行优化,以使它在新的主机上实现更高性能与更高效率。
嵌入式平台而言,“优化”这个词以前意味着要无限制地研究低级架构中不重要的细节,反复编写汇编语言代码。然而幸运的是,随着嵌入式处理器复杂性的提升,嵌入式开发工具已变得日益强大,用户友好性也得以大幅提高。
典型的嵌入式器件可描述为系统级芯片(SoC),其中不仅包含ARM处理器,而且还含有多种外设与加速器,可将CPU从相关支持任务中解放出来。SoC甚至可能具有多个ARM内核,或其它功能齐全的协处理器。
返回列表