机器视觉与卷积神经网络

简介:

根据2016年嵌入式视觉联盟进行的嵌入式视觉开发者调查2,77%的受访者表示目前正在或计划将要利用神经网络来处理分类工作。卷积神经网络并不是一个最近才出现的新概念。但是随着机器视觉的发展,卷积神经网络的应用也变得越来越重要了。

机器视觉卷积神经网络.jpg

早在1968年,加拿大神经生物学家David Hubel与瑞典神经生理学家Torsten Wiesel针对猫科动物视觉皮层进行了合作研究。视觉皮层是大脑皮层中主要负责将视觉数据处理成可用信息的部分。因此他们的目标是寻求如何从大脑接受到眼睛所采集的视觉图像信息(比如“我看到一个苹果”)中,获得目标对象有用信息方式的答案。这两名研究人员给猫演示不同走向的光条,在这一过程中发现视觉皮层的不同细胞会根据光条的走向被激活并做出反应。他们同时还发现复杂的光线图案,比如眼睛的形状,能够激活视觉皮层更深层部位的细胞。通过Hubel和Wiesel的努力,最终研发出一个能够演绎细胞激活和转发特定图像信息过程的模型。这也为计算机辅助图像分类建模奠定了基础。

30年后,法国计算机科学家Yann LeCun再次为Hubel和Wiesel所取得的成就所激励。他将视觉皮层功能的演绎叠加到一个演算中 -- 并从中成功创建出第一个卷积神经网络应用。

但即便如此,卷积神经网络在之后的很多年仍未能适用于实际操作和应用。其中最主要的原因是卷积神经网络需要投入大量的计算能力。使用串行技术处理数据的CPU处理器需要对数据记录挨个进行分析,意味着在这一网络能够最终应用于工作之前需要花费多年时间。

直到图形处理器单元(GPU)的出现,能够对数据实现并行处理,卷积神经网络才再一次被人们记起 -- 实际上近年来卷积神经网络的发展已经有了很大的起色。研究人员对卷积神经网络在笔记识别、医疗诊断、自动驾驶车辆预警系统,机器人物体识别以及生物识别技术应用方面取得的巨大成功感到欣慰。与其它竞争性学习技术相比,卷积神经网络在具有挑战性的应用中通常能够产生更好的结果。包括Google、IBM、微软和Facebook等大型企业所投资的数十亿美元巨额资金无不表现出其对这一领域的极大兴趣以及这一技术本身所具有的巨大潜力。

卷积神经网络不仅需要密集的处理器运作;同样对数据有极大需求。对卷积神经网络进行一次彻底培训,需要输入大量已经分类的图像数据。目前开发人员能够自由访问与此相关的数据库。最常用的图像数据库之一是ImageNet1。 它包含超过1400万幅分类图像。同时还有一系列针对具体分类问题而存在的专门数据库。比如,一个名为德国交通标志识别基准的数据库中就保存了5万余幅关于交通标志的图像。在这一例子中,卷积神经网络在2012年测试中取得了高达99.46%的成功率 -- 超过人工分类取得的98.84%。然而,在实践过程中,开发人员通常会面临高度专业化的分类问题,因此无法获取自己的图像数据库。但幸运的是,现在他们并不需要采集数百万张图像。一项被称为“迁移学习”的技术小窍门能够大大减少所需的图像数量,有时甚至只需要几百或几千幅图像。

目前已经开发出一系列适用于卷积神经网络的深度学习框架:包括Caffe,Torch和Theano在内的众多软件库都是专为这一课题而研发。2015年11月,Google甚至为此开放了内部机器学习软件TensorFlow,这一软件是从图像搜索到Google Photo等多种Google产品的基本组成部分。

嵌入式相机(Baslerdart BCON)通过柔性带状线材与具有FPGA(XilinxZynq)的处理单元相连接。图像数据的分类在FPGA上运行,因此可以进行实时计算。配置了FPGA的嵌入式视觉系统具备一系列能够完美适用于卷积神经网络的优点: FPGA能够执行卷积操作和网络所需的其它数学运算,以便对图像进行并行和高速分类任务。此设置提供实时图像分析和分类功能。

相比GPU,FPGA所需功耗更小,因此更适合低功耗的嵌入式系统。微软研究院最近发布的一份报告8显示,FPGA能够比GPU节省10倍功耗。

FPGA的大型片上存储和带宽使卷积神经网络能够对更高分辨率的图像进行实时分类。能够与FPGA直接连接的相机(如Basler's dart BCON相机)能够将数据直接传送到FPGA。这是处理器密集型应用程序(如卷积神经网络)的一个主要优势,因为通过USB传输的数据在到达FPGA之前必须通过不同的硬件组件(比如主机控制器)运行。实现相机与FPGA的直接连接能够保证更加高效的工作性能。

卷积神经网络在机器视觉应用领域中发挥越来越大的作用。2015年3进行的同一项调查显示,仅61%的受访者有此打算。2016年进行的该项调查还发现,86%的卷积神经网络被用于分类算法。这一结果表明,除了像Google或Facebook这样拥有庞大规模和丰富资源的大公司之外,普通的公司也能够自主研发基于卷积神经网络的产品或服务。

本文由朗锐智科编辑整理(www.lrist.com),如有侵权请联系本站。

相关文章
|
1月前
|
机器学习/深度学习 计算机视觉 Python
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力本文提出了一种简单且高效的卷积神经网络(ConvNets)注意力模块——SimAM。与现有模块不同,SimAM通过优化能量函数推断特征图的3D注意力权重,无需添加额外参数。SimAM基于空间抑制理论设计,通过简单的解决方案实现高效计算,提升卷积神经网络的表征能力。代码已在Pytorch-SimAM开源。
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力
|
28天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络:从理论到实践
【10月更文挑战第35天】在人工智能的浪潮中,深度学习技术以其强大的数据处理能力成为科技界的宠儿。其中,卷积神经网络(CNN)作为深度学习的一个重要分支,在图像识别和视频分析等领域展现出了惊人的潜力。本文将深入浅出地介绍CNN的工作原理,并结合实际代码示例,带领读者从零开始构建一个简单的CNN模型,探索其在图像分类任务中的应用。通过本文,读者不仅能够理解CNN背后的数学原理,还能学会如何利用现代深度学习框架实现自己的CNN模型。
|
27天前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第36天】探索卷积神经网络(CNN)的神秘面纱,揭示其在图像识别领域的威力。本文将带你了解CNN的核心概念,并通过实际代码示例,展示如何构建和训练一个简单的CNN模型。无论你是深度学习的初学者还是希望深化理解,这篇文章都将为你提供有价值的见解。
|
1月前
|
机器学习/深度学习 监控 自动驾驶
卷积神经网络有什么应用场景
【10月更文挑战第23天】卷积神经网络有什么应用场景
89 2
|
1月前
|
机器学习/深度学习 自然语言处理 算法
什么是卷积神经网络
【10月更文挑战第23天】什么是卷积神经网络
48 1
|
1月前
|
机器学习/深度学习 人工智能 算法
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
车辆车型识别,使用Python作为主要编程语言,通过收集多种车辆车型图像数据集,然后基于TensorFlow搭建卷积网络算法模型,并对数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django搭建web网页端操作界面,实现用户上传一张车辆图片识别其类型。
79 0
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
|
28天前
|
机器学习/深度学习 人工智能 自动驾驶
深入解析深度学习中的卷积神经网络(CNN)
深入解析深度学习中的卷积神经网络(CNN)
42 0
|
1月前
|
机器学习/深度学习 人工智能 TensorFlow
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第32天】本文将介绍深度学习中的一个重要分支——卷积神经网络(CNN),以及其在图像识别领域的应用。我们将通过一个简单的代码示例,展示如何使用Python和TensorFlow库构建一个基本的CNN模型,并对其进行训练和测试。
|
1月前
|
机器学习/深度学习 自然语言处理 TensorFlow
深度学习中的卷积神经网络(CNN)及其应用
【10月更文挑战第26天】在这篇文章中,我们将深入探讨卷积神经网络(CNN)的基本原理、结构和应用。CNN是深度学习领域的一个重要分支,广泛应用于图像识别、语音处理等领域。我们将通过代码示例和实际应用案例,帮助读者更好地理解CNN的概念和应用。
|
1月前
|
机器学习/深度学习 算法 计算机视觉
深度学习与生活:如何利用卷积神经网络识别日常物品
【10月更文挑战第24天】在这篇文章中,我们将探索深度学习如何从理论走向实践,特别是卷积神经网络(CNN)在图像识别中的应用。通过一个简单的示例,我们将了解如何使用CNN来识别日常生活中的物体,如水果和家具。这不仅是对深度学习概念的一次直观体验,也是对技术如何融入日常生活的一次深刻反思。文章将引导读者思考技术背后的哲理,以及它如何影响我们的生活和思维方式。