机器视觉发展为何如此迅猛,原因竟然是这些
这个标题读起来有点绕,但是确实反映出一个事实:今天除了人类自己的眼睛,还有越来越多的"机器之眼"在帮助我们观察、记录和分析着周遭的这个世界,让我们实际的视觉能力大为扩展和增强。目前在中国,由公安系统引导安装的监控摄像机就超过了2000万台,一个月的数据流量达7500PB。再考虑到那些家庭和个人安装的监控摄像头,我们爱车上倒车影像、行车记录仪等视觉传感装置,以及GoPro这种拉风的消费级数码视觉单品……不知不觉中,我们已经置身于一个机器视觉的汪洋大海中。
顾名思义,机器视觉的核心价值,就是代替人眼和人脑对图像和视频信息作出感知和分析判断。虽然机器视觉不算一个新概念,却在过去的10年中获得了高速的发展,且在可以预见的未来仍然保持相当的加速度。机器视觉这样一种发展态势,得益于三个因素。
第一个因素就是摩尔定律。从硬件的角度来看,一个机器视觉系统包含两个核心的器件:一个是CMOS图像传感器(摄像头),一个是处理器。而这两者都是可以通过标准CMOS半导体工艺制造的,因此也就被套上了摩尔定律的的"魔咒",在似乎永无止境的追求"三低一高"(低功耗、低成本、小尺寸、高性能)的征途上一路狂奔,不断拉低机器视觉的获取成本。想一想今天一个入门级手机摄像头的分辨率,可能和几年前中高端单反相机图像传感器的级别相当,这恐怕就是用户对摩尔定律作用最直观的感受了。
摩尔定律同样在推动处理器性能的提升,使其完全可以胜任复杂的图像处理计算。在处理器硬件架构的选择上,今天机器视觉的开发者有多种选择:可以选择专门为图像处理优化的DSP;也可以选择采用ARM+GPU或其他图像协处理器的平台;还有基于ARM+FPGA可编程逻辑的异构处理架构(如Xilinx Zynq 7000)可供使用。即使是主流的ARM通用处理器平台,配合优化的软件算法,同样可以在很多机器视觉应用中施展拳脚。想要获得性价比更高的机器视觉处理器,对用户来说只是一个时间问题。
推动机器视觉快速发展的第二个因素,就是日益丰富的算法和软件资源。可以说被摩尔定律"绑架"了的硬件降低了机器视觉的使用门槛,但想真正让机器像"人眼+人脑"一样运转起来,甚至更高能和高效地运转,就必须要有软件的配合。在上个世纪,做机器视觉的算法和软件,绝对是一个烧脑的工作,公司里没有几个Ph.D是不敢开张的。这样的局面从2000年起发生了改变——那一年Intel发布了OpenCV,这是一个基于BSD许可的开源跨平台计算机视觉库,开发者通过一系列C/C++函数可以方便地实现很多图像和视觉处理方面的通用算法。从那时起,基于不断更新的OpenCV库,演化出了为不同机器视觉应用而优化的功能和算法,且更容易在嵌入式处理器中移植和运行,由此逐渐形成了完备的机器视觉软件生态系统。与此同时,很多商业版的软件开发工具也开始将视觉处理功能集成在其中,令机器视觉的应用开发更加触手可及。
图1,安富利提供的Blackfin嵌入式视觉学习开发套件,包括完整的硬件和软件资源,可以帮助机器视觉开发者快速上手
可以说,硬件和软件生态环境的成熟,造就了过去十年机器视觉版图的快速扩张。而接下来,变得更加"智能",则是机器视觉发展的核心诉求。在这个过程中,第三个要素将发挥至关重要的作用,它就是"人工智能"。利用深度学习等人工智能的核心技术,机器视觉将获得自我学习演化、不断迭代增强的能力,越用越"聪明"。
人工智能与机器视觉相结合,比较经典的做法就是将采集到的数据传输到云端,在云端训练出一个具有数据分析判断和自我学习进化能力的最强"大脑"。与此同时,今天也有人在考虑,依托性能日益强大的机器视觉终端的能力,直接对终端进行训练,让深度学习的算法在终端产品上落地,以获得更好的实时、准确率、可靠性,也避免了在云端可能存在的隐私安全等方面的问题。无论是哪种思路,其成功的应用,无疑都会对机器视觉的未来产生深远的影响。
总之,在机器的世界里,人类眼睛的工作——至少是部分工作——已经成了简单重复性的"力气活儿",在诸多要素的合力下,机器视觉代替甚至超越人类视觉的进程,已经停不下来了。
- Atmel针对工业机器视觉应用推出快速CMOS相机(10-22)
- 工业机器视觉系统市场迅猛发展,行业应用新视点逐步扩大(11-06)
- 基于DSP和FPGA的机器视觉系统设计与实现(03-07)
- Xilinx用于工业自动化的机器视觉解决方案(11-30)
- Xilinx多协议机器视觉摄像机参考设计(12-01)
- 德州仪器(TI)3D机器视觉参考设计(11-30)