Halcon机器视觉论坛

 找回密码
 会员注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 731|回复: 0
收起左侧

[视觉前沿] 基于卷积神经网络的轮毂图像识别算法设计与实现

[复制链接]

该用户从未签到

12

主题

12

帖子

28

积分

Rank: 1

积分
28
发表于 2018-7-18 16:15:56 | 显示全部楼层 |阅读模式

试用员工 |主题 12|帖子 12|积分 28

51Halcon诚邀您的加入,专注于机器视觉开发与应用技术,我们一直都在努力!

您需要 登录 才可以下载或查看,没有帐号?会员注册

x
目前的深度学习方法在图像识别领域已经取得了对传统算法的巨大优势,作为一家机器视觉公司,图灵也在轮毂的图像识别领域对此做了有效的尝试。
图像识别所能够取得的最好的成绩都是由深度卷积网络相关的算法创造的,这从侧面反映深度卷积网络在计算机视觉方面的良好性能。在一些相关领域,例如人脸识别、手写字体识别,深度卷积网络也取得了世界领先的成果。可以说深度卷积网络是现在用于图像识别的最好的算法,这也是图灵轮毂图像识别决定采用深度卷积网络算法的原因。
从算法本身的角度考虑,卷积神经网络在卷积层之间使用了共享的参数,这不仅减少了需要的内存大小,也减少了需要训练的参数数量,提高了算法的性能。同时也几乎不需要对图像进行一些预处理或者特征值提取,这是其他一些机器学习的算法所不具备的优势。
卷积神经网络包括卷积神经层、RectifiedLinearUnits 层(以下简称为ReLU 层)、Pooling 层和规范化层,其结构如图1 所示。
1.png
1 典型的卷积神经网络
一、图灵卷积神经网络的基本结构
1卷积神经层
卷积是图像识别中常用的算法,是指输出图像中的每个像素都是由输入图像的对应位置的小区域的像素通过加权平均所得,这个区域就叫做卷积核。一般而言,卷积核都是正方形的,所以都是用类似m×m 的方式表达,这里的m 即为区域的边长。卷积神经层,其实就是对图像的每个点进行卷积运算,卷积核都被作为训练参数。卷积神经层可以看作是对输入图像进行“抽象”的操作,经过几次处理之后,能够提取出图像的“特征值”。
经典的结构中,使用了11×11 卷积核这样的较大的卷积核,这样的神经层引入了很多的参数,虽然保证了最终的效果,但也降低了算法的性能。因此,图灵轮毂图像识别算法引入的结构中,仅使用了3×3 和5×5 这样的较小的卷积核。
2 ReLU 非线性函数
在经典的结构中,使用的神经网络激活函数是Rectified函数,在卷积神经网络中,这样的神经层一般叫做ReLU。在图灵轮毂图像识别算法中每个卷积神经层之后都用ReLU 处理。
3 Pooling
输入图像经过卷积神经层和ReLU 处理之后,图像中的每个像素点都包含了周围一小块区域的信息,造成了信息冗余。如果继续使用包含了冗余信息的图像,不仅会降低算法性能,还会破坏算法的平移不变性。
为了提高算法的性能和鲁棒性,这里需要对图像进行二次采样(Subsampling)。在深度卷积网络中,这样的操作又叫做Pooling,即将图像分成一小块一小块的区域,对每个区域计算出一个值,然后将计算出的值依次排列,输出为新的图像。图灵轮毂图像识别算法中使用的是可以重叠的、取最大值的Pooling 算法(Overlapping Max-Pooling),原因是可以稍微降低过度拟合。
4 规范化神经层(NormalizationLayer
规范化层是为了让图像更加具有对比性而设计的神经层,这一神经层的效果类似于对图像进行“增加对比度”的操作。显而易见的是,需要一个计算“平均值”的算法,然后按照一定的规则对图像的每个像素进行调整,使得图像的主体部分能够和背景更加具有区分度。目前常用的算法通常是Local Response Normalization(以下简称LRN),这一算法可以很有效地提高主题部分与其他部分的区分度。图灵轮毂图像识别亦采用这一算法。
二、图灵卷积神经网络的总体设计
在大多数的深度学习算法里,网络的深度都是很重要的参数,深度卷积网络也不例外。此外,为了改进算法性能并增加神经网络的深度,在新引入的结构中使用了卷积核较小的卷积层。同时,为了能够方便地调整算法,并兼顾算法的拓展性,引入的结构应当可以直接叠加而不必引入新的神经层。为此,图灵轮毂图像识别模型引入的新的结构如下图
2.jpg
2 图灵轮毂图像识别模型引入的新结构
在上图所示的新结构中,每个卷积层之后都包含有一层ReLU。在该结构的首尾处各有一个1×1 卷积核的神经层,可以将其理解为“粘合剂”,即通过使用了1×1 卷积核的神经层之后,使得与使用任何卷积核的神经层都可以直接相连。中间使用了3×3 卷积核和5×5 卷积核的神经层,既可以有效地提取图像特征值,又保证了这样的结构不会像较大的卷积核一样,引入过多的参数。
图灵设计的结构中使用一个7×7 卷积核的神经层,这样既可以保证训练的时间不至于过长,又能够有效地降低错误率。为此,网络的总体结构设计成图3 所示的结构。卷积神经层之后,使用了传统的全连接型的神经网络和Softmax 回归,这也是常使用的经典结构。
3.jpg
3 网络的总体结构
三、程序框架
实现深度卷积网络已经有了成熟的框架,图灵实验使用的是Caffe。Caffe 是一个可读性、简洁性和性能都很优秀的深度学习框架,并且直接集成了卷积神经网络神经层。由于深度卷积网络本身的特性,有时候用GPU 加速运算可以大大缩短算法训练时间,Caffe 也提供了相应的接口。
使用Caffe 实现卷积神经网络时,需要预处理数据,然后根据设计好的网络结构配置相应的文件,即可使用Caffe 训练并测试结果。
四、结果对比
用卷积神经网络实现的图像识别算法与传统算法相比,在图像识别率方面能提高1个百分点,在识别速度上稍快,已经具备了工厂实际布署的能力。

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

您需要登录后才可以回帖 会员登录 | 会员注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Halcon鸟叔机器视觉1鸟叔机器视觉 | 51Halcon官方客服咨询官方客服咨询 | Halcon切换助手使用反馈切换助手使用反馈 | 51Halcon论坛管理团队论坛管理团队

申请友链| 小黑屋| 手机版| Archiver| Halcon机器视觉论坛  

粤ICP备15095995号-2 粤公网安备44030602000670号

Powered by Discuz! X3.4 Licensed© 2015-2019 Comsenz Inc.

快速回复 返回顶部 返回列表