改进Faster R-CNN的快件搬运机器人视觉定位策略

2021-08-24 07:57田星星涂玲英周意入
湖北工业大学学报 2021年4期
关键词:角点快件卷积

田星星, 涂玲英, 周意入, 秦 宇

(湖北工业大学电气与电子工程学院,湖北 武汉 430068)

随着电子商务的迅猛发展,现代化物流快件搬运已成为智能化转型的热点研究问题[1-2]。国内第一台AGV由北京起重运输机械研究所研制,采用电磁导航的方式,该定位方式保养维修困难且易受外界干扰。2013年,沈阳新松公司向市场展示了一种新型惯性导航方式的AGV,其绝对定位的方式产生的误差具有累积性,精确度比较低[3-5]。2015年,阿里天猫Geek+团队和国外亚马逊公司相继研发的仓储AGV与“Kiva”机器人,均采用二维码进行定位与导航,成功将机器视觉技术应用于AGV,但同时二维码类型图案在工业场地上铺设保养不方便[6-7]。

在机器视觉领域,Ross B.Girshick[8]相继提出了R-CNN、Fast R-CNN和Faster R-CNN这一系列目标检测算法,其中Faster R-CNN可以看做是RPN和Fast R-CNN的结合,且用RPN完全替代了Selective Search算法生成候选框,但只在单层卷积层的feature map上生成候选框且RPN和最后的分类与回归层都各自用目标函数进行分类与回归,导致运算量还是偏大,精度仍不高。

为改进上述问题, 在Faster-RCNN的网络模型基础上增加卷积层,在多层卷积层的feature map上生成候选框且用两个3×3卷积核分别进行卷积运算,直接进行分类和回归。该改进的Faster-RCNN检测到所设计导航图案中目标的区域后,再通过Harris角点检测算法提取目标区域的参考角点,继而使用PnP算法计算出快件搬运机器人的坐标位置和偏转角。最后,通过仿真设计的实验对其有效性进行验证。

1 快件搬运机器人模型

图1为快件搬运机器人模型三维图,基本结构主要分为驱动结构和举升结构两个部分。其中,驱动结构左右两边选用相同的体小量轻和响应速度快的伺服电机,且对称安装。当两台伺服电机连线中点位置的工业相机定位到位置信息后,每台伺服电机分别带动一个驱动轮,两个驱动轮再通过前后四个相同规格且同样对称安装的小万向轮实现该机器人的差速行驶转向及位置纠偏。

图 1 快件搬运机器人的三维模型

快件搬运机器人一般在工业场地上沿着预设好的轨道中线运动,图2为其差速驱动数学模型,在XOY坐标系中左右两侧驱动轮的速度分别设为Vr和Vl,机器人移动线速度设为V,移动角速度为ω,左右轮之间的距离设为D,则在当前坐标系中该机器人的移动线速度和移动角速度关系可表示为:

图 2 快件搬运机器人的差速运动模型

假设该机器人的转弯半径为R,则

R=V/ω=D(Vr+Vl)/(Vr-Vl)

由此,通过对该机器人两轮速度作不同的规划,能够得到相对应的不同的运动状态如下:

1)Vr=Vl时,该机器人作直线运动,并且V=Vr=Vl,R为无穷远。

进一步地进行该机器人行驶时速度与位置的数学关系分析,选择其工业相机中心点作为载体质心,任意时刻轴连线的中垂线和X轴的夹角记为θ(t),则在Δt时间内该机器人所转过的角度Δθ与转动角速度ω的关系可表示为:

积分可得到(t)与左右车轮运动速度Vl(t)和Vr(t)关系如下:

从上式可知:该机器人上的工业相机定位到偏转角等位置信息后,其主控制器处理后通过调节两台伺服电机的差速输出即可得到新的位置。

2 导航定位策略

2.1 导航图案设计及其目标检测算法概述

当快件搬运机器人沿着预设好的轨道中线行驶时,笔者拟在其轨道中央等间距地铺设一些导航图案,行驶路径导引图见图3。这些图案间距小于工业相机的视觉直径,并且每张都是以白色为衬底,里面所包含的小矩形大小不一,颜色均为红色、黄色、绿色和蓝色。这种导航图案不仅设计简单,而且在工业场地上铺设保养极为方便。

图 3 行驶路径导引图

近些年来,计算机视觉技术在各类机器人导航定位中得到发展,R-CNN,Fast R-CNN和Faster R-CNN这一系列目标检测算法被相继提出,其可以检测上述导航图案中的目标区域。

R-CNN首先通过Selective Search算法得到大约1000-2000个候选框,再将每个候选框尺寸固定到227×227后送入CNN中提取特征,然后将这些feature map集合放入21个SVM中进行分类,之后利用非极大值抑制算法得到每个目标类别中得分最高的生成框,最后用回归器对生成框回归操作以精修其位置。由于每个候选框都需要送入CNN中逐一提取,这种目标检测算法图像处理速度过慢,且分类与回归没有统一到一个网络模型中,占用大量的内存空间。

Fast R-CNN先将原图送入CNN中提取特征,再将Selective Search算法得到的近2000个候选框映射到刚提取的feature map上,生成对应的图像块,然后通过ROI-Pooling层统一到相同的尺度上,最后经过两个全连接层的特征连在各自的损失函数上,一个是用于分类的softmax函数,另一个是用于生成框回归的smooth的L1范式。这种目标检测算法只在末尾处理每个候选框,并且将分类与回归统一到一个网络模型中,既节省了图像处理时间又节省了内存空间。但是,候选框用Selective Search算法来获取,仍存在速度慢的问题。

Faster R-CNN的模型框图见图4,其可以看作是RPN和Fast RCNN的结合。

图 4 Faster-RCNN模型框图

Faster R-CNN首先利用Fast R-CNN将原图送入CNN中进行特征提取,接着RPN网络在某一卷积层提取的feature map上利用锚框生成法生成锚框。锚框生成法在feature map 所划分的单元格中心点生成k个不同尺寸和长宽比的候选框,初步回归和分类后传入Fast RCNN的ROI Pooling层,统一到相同的尺寸,然后进行精确的分类和回归。锚框生成模型见图5。

图 5 锚框生成模型

这种目标检测算法中的RPN虽然将Selective Search算法产生候选框的环节有效地替代并整合到了深度卷积神经网络中,但是RPN只在单层的 feature map 上生成候选框,这样会遗漏一些小目标。其次,RPN和最后的分类与回归层都各自用目标函数分类与回归,导致运算量还是偏大。

2.2 Faster-RCNN算法的改进

针对Faster RCNN目标检测算法存在的问题作出进一步改进,即在多层卷积层的featuremap上生成候选框后,直接进行分类与回归。具体设计方案是:首先选用VGG-16网络模型(CNN常用的网络模型),将其最后两层全连接层改成卷积层,并在后面增加四层卷积层(图6),再把Conv4-3、Fc7、Conv8-2、Conv9-2、conv10-2这5层不同卷积层提取到的feature map划分成8×8,4×4两种尺寸的单元格,然后用锚框生成法在每个划分成的单元格中心点生成候选框,之后用两个3×3卷积核分别进行卷积运算,最后一个用softmax函数进行多分类,另一个用smooth的L1范式进行回归,不进行二次分类与回归。

图 6 改进的VGG-16网络模型

对于提取为W×H的feature map,锚框生成法生成候选框的个数为5×W×H个,尺度集设为[1∶1,1∶2,1∶3,2∶1,3∶1],尺寸的大小由下式定义:

可知m为5;sizemin为尺寸最小值,取0.2;sizemax为尺寸最大值,取0.96。尺度集用pr={1,2,3,1/2,1/3}表示,则每一个候选框的长宽可由下式进行计算:

当用锚框生成法生成这些候选框后,将其映射回原图基本上覆盖了整张图片,然后计算每个候选框和真实框区域位置的交并比,即重叠程度IOU。当IOU>0.5时标记为正样本,否则标记为负样本。由于负样本数量过多会造成网络模型难以收敛,故通过正负样本数量1∶3的比例和IOU值排序从高到低两个原则剔除一些IOU值特别小的负样本。

2.3 Harris角点检测算法与PnP定位算法介绍

Harris角点检测算法的核心是利用局部窗口在图像上进行移动判断灰度是否发生较大的变化。若从各个方向上移动小窗口,此窗口区域内图像的灰度发生了较大变化,那么就认为遇到了角点。该算法可以有效地提取上述改进后目标检测算法定位目标区域的角点。

PnP算法最后解决的是:已知相机内部参数(焦距参数和畸变参数)以及n个世界坐标系和图像坐标系参考点的情况下,利用这几个参考点之间的对应关系求解相机在拍摄图像时所处位姿。该算法可根据Harris角点检测算法提取的角点计算出快件搬运机器人沿预设路径时的偏转角以及坐标位置。

3 改进的Faster RCNN算法仿真实验

3.1 仿真实验图像样本训练与测试

针对2.3提出的目标检测算法优化模型的训练与测试:在第一阶段:利用Pascal Voc 数据集包含的21个类别近30000张图片进行迁移学习,满足其大数据量学习的需要;在第二阶段,先通过绘图软件绘制了125张2.1方案所设计的图片,之后对这些图片进行了数据增强处理,其步骤是先通过镜像翻转处理,图片数量增加至4倍变为500张,再对每张图片进行模糊处理,图片数量增加至1000张且增强了该算法在模糊背景下的目标检测能力。最后将这1000张图像样本分为两份,80%的样本用于第二次训练,剩余20%的样本用于最终的测试。

本实验硬件采用gtx1070显卡以及inter corei7处理器,软件环境为Windows 10操作系统,在Tensorflow框架下phython语言进行开发,图7和图8分别为Faster RCNN算法和改进的Faster RCNN算法在相同实验条件下部分测试样本的结果显示,其中Rr、Yr、Gr、Br分别代表红色矩形、黄色矩形、绿色矩形和蓝色矩形。

图 7 Faster RCNN算法两组测试结果

图 8 改进的Faster RCNN算法两组测试结果

3.2 仿真实验测试结果分析

首先定义改进前和改进后两种算法的图像样本测试正确率和精确度分别为cor1、cor2和acc1、acc2,则改进前算法图像每个样本里红、黄、绿、蓝四钟颜色小矩形的识别正确值(正确区分出四色小矩形值为1,反之为0)和定位精确值(测试图像结果显示的值)分别为R-cor1i,Y-cor1i,G-cor1i,B-cor1i和R-acc1i,Y-acc1i,G-acc1i,B-acc1i;改进后算法的图像每个样本里红、黄、绿、蓝四钟颜色小矩形的识别正确率和定位精确度分别为R-cor2i,Y-cor2i,G-cor2i,B-cor2i和R-acc2i,Y-acc2i,G-acc2i,B-acc2i。cor1、cor2和acc1、acc2的计算公式分别如下:

i∈(1,2,3,…,200)

i∈(1,2,3,…,200)

根据以上公式计算改进前后两种算法测试200个样本的统计情况见表1。

表1 改进前、后算法正确率和准确度统计表

4 结论

对快件搬运机器人驱动结构的导航定位技术进行研究与改进,在Faster R-CNN的网络模型基础上增加卷积层,在多层卷积层的feature map上生成候选框且用两个3×3卷积核分别进行卷积运算,直接进行分类和回归。测试结果显示相比Faster-RCNN,改进的目标检测算法定位图像中目标类别的正确率同为100%,精确度提高了3%。之后用Harris角点检测算法提取参考角点,继而使用PnP算法计算出坐标位置,也即提高了该机器人的导航定位精度。

猜你喜欢
角点快件卷积
基于全卷积神经网络的猪背膘厚快速准确测定
一种改进的自适应FAST 角点检测算法
多支撑区域模式化融合角点检测算法仿真
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
模拟退火算法求解排队中的加急问题
基于点云聚类的垛型角点检测方法
角点检测技术综述①
放不放快件箱收件人说了算