Balloon-popping:一个基于Zynq架构,OpneCV库的目标跟踪系统

清风流云 FPGA开发圈

1999年,Intel建立了OpenCV库(Open Source Computer Vision library),如今由Willow Garage提供支持。它是一个基于BSD许可的开源发行的跨平台计算机视觉库,可以运行在Linux,Windows和Mac OS操作系统上。OpenCV是由一系列C函数和少量的C++类构成,轻量级而且高效,还提供了Python、Ruby、MATLAB等语言接口,实现了图像处理和计算机视觉方面的很多通用算法。由于它主要是用C++语言编写,所以接口也是C++语言,不过依然保留了大量的C语言接口。所以这些语言的API接口都可以通过在线文档获得。现在OpenCV还提供了对C#,Ch的支持,同时在2010年实现了使用CUDA的GPU接口。

现在,OpenCV已经广泛的应用在人机互动、物体识别、图像分割、人脸识别、动作识别、运动跟踪、机器人、机器视觉以及汽车安全驾驶等几乎所有涉及图像处理的领域中。

Balloon-popping目标追踪系统

在创意网站Intructables上有一个不太可能实现的新设计,它利用一块价值189美刀的Digilent ZYBO训练板卡(此板卡为Xilinx Zynq Z7010 SoC架构),并在板卡上安装网络摄像头,来追踪气球,当摄像头看到气球时,控制一个高功耗半导体激光器发射激光到气球上(即命中目标气球),而且整个系统软件代码基于OpenCV库编程来实现。

下图所示为上述系统的激光器结构:

同时,在创意网站Intructables网站上有关于此系统的一个一分钟的视频演示(详见 http://www.instructables.com/id/Laser-Balloon-Destroyer-With-Digilent-Zy... ),同时还有关于此系统的详细实现步骤,如果比较感兴趣,手边刚好有一块Xilinx Zynq SoC架构的开发板,不妨动起手来做一个这样的系统。

此外,最有趣的是,这个系统的实现告诉我们一个事实,那就是即使是最小的Zynq SoC都可以应用到先进的嵌入式视觉系统中,当然在Xilinx推出的基于Xilinx芯片和工具实现嵌入式视觉系统中,我们可以知道更多的关于嵌入式视觉开发信息。

总结

现如今,我们越来越希望给机器提供一种不仅可以看到现实世界,同时可以感知现实世界,并且可以区别出现实中的独特个体的能力,这种能力的实现给下一代智能机器的架构设计以及投入市场带来了极大挑战。因为不仅要完成大量的不同传感器(类似视频、视觉I/O)和多种图像处理管道的集成,嵌入式系统实时分析数据也是一项十分复杂的任务。所以,要完美实现这些功能,就需要软硬件紧密配合,协作工作。也正是这些迫切的需要,Xilinx开发团队在他们的下一代系统中开发出Zynq SoC和MPSoC这样软硬件兼具的芯片架构来,不仅可以减轻开发压力,更是加速了产品生产力。

©著作权归作者所有:来自51CTO博客作者mb5fd86d05a0afe的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 一款基于Spartan-6可向下扩展的软件无线电系统
  2. 计算系统基础(四)
  3. Bandit算法在携程推荐系统中的应用与实践
  4. 解读工业级推荐系统的2020:深度优化用户体验并为业务赋能
  5. BI系统里的数据赋能与业务决策:风险告警实例篇
  6. 「最有用」的特殊大数据:一文看懂文本信息系统的概念框架及功能
  7. 深度系统更新(2020.11.11)
  8. 深度系统更新(deepin 20 1003)
  9. Curtis-Wright公司推出面向高速嵌入式雷达设计的“轻量级集成”

随机推荐

  1. android 界面布局-各个布局的属性介绍
  2. Android中动态改变string.xml中的字符串
  3. Android 的独特shell命令
  4. android google地图定位开发,且可以自由移
  5. Andrid 控件集合大全
  6. Android 安全架构及权限控制机制剖析
  7. Android 技术专题系列之十三 -- 与PC同步
  8. Android视图优化之Merge,ViewStub基本使用
  9. Android SDK 2.2 和ADT插件下载
  10. android 的各种manager