欢迎进入上海阳合供应链管理有限公司!
  •  13472705338 

  • 果蔬类自动化立体仓库的货位优化研究
  • 高职院校化学药品仓库管理
  • 装备仓库管理系统的设计与实现
  • 自动化立体高架仓库的消防设计研究
  • 某仓库建筑预作用喷水灭火系统设计探讨
  • 甲类危险化学品仓库调研及管理研究
  • 最新动态

    当前位置:首页 >> 走进阳合 >> 新闻资讯 >>   资讯详细新闻资讯

    卷积神经网络物体检测算法在物流仓库中的应用

      信息来源:   发布时间:2021-12-14  点击数:

    0概述

    物体识别与检测是计算机视觉领域的基本任务之一, 也是人工智能与模式识别的关键问题之一。物体识别的任务主要是识别特定图像中的各类物体, 而物体检测的任务主要强调是各类物体在图片中的位置信息, 例如用一个矩形框标出被检测道德物体在图片中的位置。物体检测与识别技术已广泛应用于自动驾驶、无人机、工业机器人、人脸识别以及安防检测系统中, 在军事领域和民用领域都有其重要的应用价值。

    当前深度学习在物体检测方面的性能的提升主要是基于有监督的大规模数据的学习方法。预先设计好的深度卷积神经网络 (Deep Convolutional Neural Network, DCNN) 通过大量标注数据进行训练 (网络训练一般是指不断迭代, 使网络参数收敛到最优值的过程) , 在训练的过程中, 采用反向传播 (Back Propagation, BP) 算法不断地更新网络参数, 最终得到适合该任务且具有最优参数的网络模型, 最后将训练好的参数进行数据测试。卷积神经网络 (Convolutional Neural Network, CNN) 训练得到模型的性能, 非常依赖于数据集的规模大小以及标注的质量。

    传统物体检测算法的基本设计思路是“人工设计特征+分类器”的模式, 比如尺度不变特征变换[1] (Scale-invariant Feature Transform, SIFT) +支持向量机[2] (Support Vector Machine, SVM) 、方向梯度直方图[3,4] (Histogram of Oriented Gradient, HOG) +SVM以及变形的组件模型[5] (Deformable Parts M odel, DPM) 等。而深度卷积神经网络具有“自动设计特征”的功能, 前面网络可以提取一些底层的特征 (颜色和轮廓特征等) , 后面的网络可以提取更加高级和抽象的特征。另外人工设计的特征不仅对光照条件、尺度变化以及物体的遮挡等因素比较敏感, 而且对同时进行多类物体的识别与检测有较大的困难, 相反基于DCNN架构的物体识别与检测算法可以很好地同时解决上述2个问题。另外, 随着近年来DCNN网络结构的不断优化以及图形处理器 (Graphics Processing Unit, GPU) 的性能不断提升, 已经可以实现实时的基于DCNN的物体检测算法例如YOLO[6] (You Only Look Once) 网络结构的实时检测速率可以达到37 frame/s。

    目前大多数基于深度学习物体检测是关于自然场景或者室内场景, 比如2个常用的物体检测的公开数据集Image Net和Pascal VOC (Pascal Visual Object Classes) 分别是采集自然场景中的图像, 而很少有基于工业应用环境下的物体检测数据集。更没有关于物流仓库的公开数据集, 而采用深度学习的方法实现无人智能叉车对特定物体识别与检测的任务, 关键的第一步就是建立高质量仓库环境下的大规模训练数据集。通过与多家大规模物流公司合作, 采集实际物流仓库的中的大量真实图片, 来建立实际的仓库托盘数据集。

    本文提出一种基于Dense Net的物体检测算法, 即将单次多箱探测器 (Single Shot Multi Box Detector, SSD) 框架中的基础网络改进为Dense Net中的Block模块, 并将改进算法用于真实物流环境中的托盘检测。

    1 深度学习模型设计

    1.1 卷积神经网络

    卷积神经网络是一种将卷积运算应用于神经网络的特殊人工神经网络, 是当前实现深度学习算法的主要途径以及研究人工智能计算机视觉方向的主要工具, 其一般主要包括卷积、激活函数、池化操作 (Pooling) 以及Dropout技术等4个主要部分。

    1.1.1 卷积运算

    本文涉及的卷积运算均是以二维图像信号矩阵I作为输入与相应的二维卷积核矩阵K (Kernel) 进行卷积运算, 该运算可以表示为矩阵S:

     


    其中, S (i, j) 为卷积后的计算结果, i、j分别表示横坐标与纵坐标, m、n表示分别表示卷积核横轴与纵轴的大小。

    在对输入图像矩阵I进行卷积运算后, 其输出的特征图的大小可以用式 (2) 计算得到:

     


    其中, 若I'表示输入图像的宽度, 则W表示输出特征图的宽度, 若I'表示输入图像高度, 则W也表示输出特征图的高度, F表示卷积核 (也称为滤波器) 的大小, 一般的卷积核是宽度和高度相等的方阵, P表示进行卷积运算之前输入图像四周补0的行数 (或者列数) , S'表示卷积核每次移动的步幅 (Stride) 。

    二维卷积运算过程如图1所示, 将与卷积核相同大小的框从输入图像的左上角滑动到右下角, 再将每次滑动时所选取的图像的区域与卷积核对应元素相乘再相加得到相应的结果。

    图1 二维卷积运算

    图1 二维卷积运算  下载原图


    1.1.2 激活函数

    在卷积神经网络中, 需要将上述计算得到的S (i, j) 输入激活函数f (S (i, j) ) 中计算得到新的值。激活函数 (Activation Function) 的作用是在整个网络中引入非线性因素, 增强网络的非线性表征能力, 并克服线性函数表达能力不足的困难。激活函数一般可以选择Sigmoid[7]函数、tanh函数以及修正线性单元 (Rectified Linear Unit, Re LU) 函数等。Sigmoid函数可以将实数输入映射到 (0, 1) 之间, 其导数均小于0.25, 特别是在输入值的绝对值越大时, 导数值越小, 这时如果是多层神经网络会在训练的时候出现梯度弥散[8] (Vanishing Gradient) 的现象, 即梯度值接近于0, 而无法通过反向传播更新网络参数, 使网络无法达到最优的参数。双曲正切函数tanh相对于sigmoid函数的优点是输出均值为0, 但是在输入绝对值偏大时, 还是会出现梯度弥散问题。Re LU函数是最近几年应用比较广泛的激活函数[9], 因为计算比较简单、收敛快, 所以本文中卷积神经网络的激活函数选择的是Re LU函数。

    1.1.3 Pooling操作

    在CNN中一般Pooling[10]操作主要包括Max Pooling和Mean Pooling, Max Pooling是取区域中的最大值, Mean Pooling是取区域中的平均值。Poo Ling操作的作用是减少下一层输入的大小, 减少计算量以及参数个数, 提高鲁棒性, 扩大感知区域, 另外, 还可以防止过拟合。以前用Mean Pooling操作比较常见, 但是最近几年学者研究证明使用Max Pooling可以是网络的性能更强, 故本文网络中均采用Max Pooling操作, 而不是用Mean Pooling操作。Max Pooling运算原理如图2所示。

    图2 Max Pooling运算原理

    图2 Max Pooling运算原理  下载原图


    1.1.4 Dropout技术

    Dropout[11]技术是指在每次训练神经网络时, 以一定的概率随机的选择一些隐层节点进行忽略, 如图3[12]所示, 使用Dropout层, 部分神经元可能不会参加运算 (图3 (b) 中的标为“”即不参加运算) 。在本文中隐层节点Dropout的概率值设为0.3, Dropout技术的应用可以是每次训练的网络模型都不尽相同, 这样通过大量的训练, 可以将其看作是一种网络模型的平均方法。从上述Dropout的原理可以看出, 其主要作用在于避免网络的过拟合以及提高网络的泛化能力, 特别是对于现在比较流行的深层卷积神经网络非常有效。

    图3 Dropout技术原理

    图3 Dropout技术原理  下载原图


    1.2 Dense Net网络

    Dense Net由文献[13]提出, 其结合了Highw ay Netw orks[14]、Res Net[15]以及Goog Le Net[16]的优点, 是目前最好的卷积神经网络之一, 其网络设计的核心部分为Block。Block的主要特点是其中的各层网络采取跳跃式连接的方式 (skip connect) , 即上一层卷积结果不仅与下一层相连, 而且后面的每一层都直接相连。这样设计的好处可以体现在增强梯度的传播, 促进网络的收敛以及增加网络的层数。另外, 最重要的作用是后面的网络与前面的多层网络进行连接的方式, 可以促进前面的信息的传递, 而不会经过多层网络传递而丢失。

    图4表示一个简单的Block, 其中实线长方体表示该Block的输入, 每一层的最后一个虚线长方块表示上一层进行卷积运算得到的特征图。

    图4 Block方法的基本原理

    图4 Block方法的基本原理  下载原图


    最终, 其第l层所得到的特征图是以所有的前向特征图连接之后卷积的结果, 如下:

     


    其中, 表示特征图之间的连接运算, 结果是特征图的长与宽不变, 而通道数相加。

    除了一般卷积神经网络的参数以外, Block中还有2个特定的参数:1) 每层卷积的输出的通道数k, 可以理解为图4中虚线长方体的厚度;2) Block中卷积的层数l。最后Block的输出通道数可以由式 (4) 计算得到:

     


    其中, C0为Block输入的通道数, Cout为Block输出的通道数。

    1.3 融合Dense Net与SSD的托盘检测算法

    鉴于DCNN在物体识别与检测的优越性能, 本文分析和改进当前优秀DCNN物体识别与检测算法, 并将其应用于物流仓库无人自主智能叉车项目中。无人叉车是现代物流仓库自动化进程发展的重要趋势之一, 其可以极大地提高现代仓储行业自动化水平, 实现货物的自动转运和24 h无人作业, 减少人工成本, 提高物流效率, 减少物流成本。

    本文改进的托盘检测卷积神经网络基本结构如图5所示, 融合Dense Net和SSD[17]回归检测算法。另外, 本文设计的网络结构将原SSD网络Conv9_2后面的Conv10_2以及Pooling层所得到的特征图去掉。实验发现, 原SSD模型中Conv10_2和Pooling层所得到的特征维数远小于前几层所得到的特征维数, 产生严重的不平衡, 故将其去掉。

    图5 改进的融合Dense Net和SSD的检测算法

    图5 改进的融合Dense Net和SSD的检测算法  下载原图


    由图5可知, 网络模型的第一部分是VGG16[18] (Visual Geometry Group) , 将VGG16后面的用于分类的全连接层 (如FC6和FC7层等) 全部去掉, 并在VGG16后面依次加上Block1、Block2、Block3以及Block4。当k=24时, 各Block模块的参数设置如表1所示。

      

    表1 Block模块参数  下载原图



    表1 Block模块参数

    表1 Block模块参数

    在预测阶段, 根据Block1、Block2、Block3和Block4卷积层得到4种不同尺度的特征图来预测物体边界框 (Bounding Box) 的位置以及相应的置信度, 而不同于Overfeat[19]与YOLO只使用了单一尺度的特征图。使用不同尺度的特征图进行预测可以提高网络检测物体时的尺度不变性[15], 而代替使用不同尺度的输入图片提高尺度不变性[17,20]

    在边界框预测阶段, 将边界框的位置信息, 即几何中心坐标 (cx, cy) 以及长度 (w) 与高度 (h) 编码为网络的4个节点值, 用回归的方法进行预测。

    在置信度预测阶段, 对于每一个预测的边界框, 需要识别其中所包含的物体属于哪一个类别。同预测边界框一样, 设定 (c+1) 个网络节点用来预测该边界框属于每一类别的概率 (c+1表示数据集中的类别数和背景) 。

    对于训练目标函数, 本文网络的训练目标损失函数与Multibox[18,21]和SSD[17]中的相同, 如式 (5) 所示, 它是预测的位置损失 (Lloc) 与置信度损失 (Lconf) 的加权和:

     


    其中, N表示边界框位置真值所匹配到的预测的边界框的数量, 位置损失是采用Smooth L1损失函数, 而置信度损失采用Softmax损失函数。

    2 实验结果与分析

    2.1 数据采集与标注

    本文采集了实际物流仓库中4 620张图片, 借助开源的数据标注工具label Img, 该工具可以直接将标注的矩形框生成为可扩展标记语言 (Extensible M arkup Language, XM L) 文本文件, 该XM L文件类似于Pascal VOC 2012数据集中物体检测的标注结果。托盘标记实例如图6所示, 将采集的每张图片中包含的感兴趣物体 (本文主要指人和托盘) 用矩形框标出, 并生成了相应的标记XML文件, 在标记完所有采集的仓库照片后, 形成了本文用于训练与测试托盘检测算法的仓库数据集。

    图6 托盘标记实例

    图6 托盘标记实例  下载原图


    2.2 数据预处理

    本文数据预处理主要包括对数据集随机化和均值计算两部分, 它们均是提高网络训练速率以及性能不可或缺的步骤。

    2.2.1 数据集随机化处理

    在数据预处理之前, 先将上述标记的仓库物体检测数据集图片以及对应的标记数据XML文件进行随机化处理。因为在神经网络训练的过程中需要使用随机梯度下降法 (Stochastic Gradient Descent, SGD) 对网络的参数进行更新, 而图片随机化处理可以提高梯度下降方向的随机性, 从而提高网络收敛的速率, 减少网络的训练时间。

    2.2.2 均值计算

    在计算均值之前, 首先将数据集一分为三, 一份为训练集 (train set) , 图片数量约占总数据集的60%, 其他两份分别为验证集 (validation set) 和测试集 (test set) , 分别约占图片总数的20%。然后计算训练集的均值。在训练网络时, 先将要输入网络的图片减去均值, 再进行训练和测试, 该做法同样有利于提高网络训练的速率和性能。

    2.2.3 网络训练过程

    采用改进的卷积神经网络结构进行参数训练, 训练过程中学习率大小的设置非常重要, 如果学习率 (Learning Rate) 太大, 收敛的速度较快, 但是训练误差会出现震荡, 无法收敛到全局最优值, 如果学习率太小, 网络的收敛速度非常慢, 在训练过程需要花费很长时间才能达到最优。一般在整个训练过程中, 采用动态调整网络学习率的策略在开始训练时, 可以设置较大的学习率, 使网络快速地达到一个低级的优化程度, 然后再减小学习率, 使网络以中等的收敛速度达到一个中级的优化程度, 最后再进一步减小学习率, 可以使网络逐渐地达到最优状态。根据上述学习率的设计原则, 训练时的学习率设置如下:1) 初始迭代次数 (0~100 000) 设为0.01;2) 中间迭代次数 (100 001~300 000) 设为0.001;3) 最后优化阶段 (300 001~480 000) 设为0.000 1。

    本文采用标记托盘数据集进行网络训练的过程如图7所示, 横轴是训练的迭代次数, 左边的纵轴表示的是训练时的log损失值, 右边纵轴表示的是训练过程中验证集的网络测试平均正确率 (mean Average Precision, m AP) 。

    图7 网络训练过程收敛曲线

    图7 网络训练过程收敛曲线  下载原图


    从图7可以看出, 300 000迭代次数之前网络收敛速度较快, 随着迭代次数的增加, loss迅速减小, 测试m AP也迅速增加。在最后优化阶段之后, 收敛速度逐渐减小, loss减小和m AP增大的速率明显下降, 最终loss和m AP趋于稳定, 即可表示网络参数已基本到最优, 收敛到定值, 在托盘测试集上, m AP指标为67.4%。另外, 使用本文改进的网络, 在pascal VOC2012公开数据集上进行训练测试, m AP指标可以达到69.5%。在公开数据集测试的结果明显好于托盘数据集上的结果, 其原因是实际标记的数据集质量没有公开数据集好, 而且在托盘数据集中会出现很多较小托盘, 这比较难以检测到, 同时也降低了测试的m AP指标。实验时所用的计算机CPU型号为Intel Core i7-6700K, 主频4.0 GHz, GPU型号为TITAN X, 显存12 GB, 训练迭代480 000次, 需要50 h左右, 测试时帧率可达到42 frame/s。表2为本文方法与其他当前最好的物体检测方法比较结果, 所用的测试数据集为Pascal VOC2007。从表2可知, 本文改进方法在较好的m AP前提下, 测试的帧率是最快的。

      

    表2 在Pascal VOC2007上的测试指标  下载原图



    表2 在Pascal VOC2007上的测试指标

    表2 在Pascal VOC2007上的测试指标

    2.3 结果分析

    由于人的检测无论是通过Image Net还是Pascal VOC的数据集, 进行训练都可以得到较好的检测结果, 虽然本文也对人进行了相应的训练与检测, 但是更强调对托盘的检测, 故人的检测结果在本部分将不呈现。图8为使用本文改进的深度学习物体检测算法以及应用于所建立的数据集对托盘的检测效果。从图8可以看出, 无论是光照条件、物体的尺度或者颜色等变化, 还是复杂的外界干扰 (如货物与托盘的纹理颜色特征非常相似, 有些托盘还有部分的遮挡) , 本文的改进物体检测算法适合应用于仓库这种复杂的工业环境中。

    图8 托盘检测结果

    图8 托盘检测结果  下载原图


    3 结束语

    基于现代物流仓库中无人驾驶叉车对物体识别与检测的应用场景, 本文建立真实的现代物流仓库托盘检测数据库, 并成功将基于深度学习的物体检测算法应用于托盘位置检测。实验结果表明, 该改进算法能够在满足实时性的条件下, 提高托盘的检测准确率。同时, 改进算法对托盘的遮挡、光照条件以及托盘类型的变化具有较好的适应性。

    标签: 仓库 仓库管理



    友情链接 :图书管理软件   飞机   软件测试  保温材料   洒水车厂家   装修中式别墅  电锅炉  国际货代     明泰铝业  集成吊顶  成都活动策划公司 货代管理软件 进出口代理清关公司 模具钢  烟雾净化器 工作服价格 工业设计公司 激光打标机   电子签章   植发多少钱  上海展台搭建   网页设计公司   网上商城  电磁流量计   钢制暖气片
    上海货代  定制礼品   香港服务器租用 精品资源网   餐饮项目  纺织品检测
     磁性过滤器  上海物流公司
    膏药OEM 爬架网 远程工作 污水提升器
    防爆配电箱  网店转让   加速器
    沪公网安备31010702002684号 沪ICP备14036201号-29