APP下载

图像识别技术在油库装车作业中的应用

2022-05-21孟征

今日自动化 2022年2期
关键词:油罐车图像识别

孟征

[摘    要]多仓油罐车的装油口都集中在一起,在将鹤管对接到装油口上时,一旦疏忽接错了装油口,不但会造成配送数量错误,也极易发生混油、冒顶等事故,甚至引发火灾、爆炸。为了防范上述风险,利用视频图像识别技术,通过对车辆装车作业的视频图像进行深度学习,自动识别鹤管与装油口的实际对接情况,并在此基础上进行装车仓位的核对验证,避免装错仓位或接错鹤管,从而保障装车安全。

[关键词]油罐车;装油口;图像识别;仓位验证

[中图分类号]TP391.41;G647 [文献标志码]A [文章编号]2095–6487(2022)02–0–03

Application of Image Recognition Technology in Loading Operation of Oil Depot

Meng Zheng

[Abstract]The oil loading ports of multi bin oil tanker are concentrated together. When the operator connects the crane pipe to the oil loading port, once the oil loading port is inadvertently connected, it will not only cause the wrong distribution quantity, but also easily lead to oil mixing, roof falling and other accidents, and even fire and explosion. In order to prevent the above risks, the video image recognition technology is used to automatically identify the actual connection between the crane tube and the oil loading port through in-depth learning of the video image of vehicle loading operation, and on this basis, the loading bin is checked and verified to avoid loading the wrong bin or connecting the wrong crane tube, so as to ensure the loading safety.

[Keywords]oil tank truck; oil loading port; image recognition; bin verification

1 現状

在油库的公路装车作业中,现在都是采用底部罐装方式,这种方式安全环保,且能实现多仓同时装车。但是,由于多仓油罐车的装油口都集中在一起,在将鹤管对接到装油口上时,一旦疏忽接错了装油口,不但会造成配送数量错误,也极易发生混油、冒顶等事故,甚至引发火灾、爆炸。用户迫切需要能自动判断鹤管与装油口对接的正确性,以防范上述风险。

市场上的现有产品,是采用传感器之间的信号比对方式。这种方式需要在装油口和鹤管上安装电子传感设备,当两者接近时传感器之间产生感应信号,信号通过无线方式传输到发油控制系统,从而判断正确性。这种方式要求司机操作时需要将鹤管上的传感器对准装油口上的传感器,否则就会出现感应不到、感应错位等现象。此种方式的缺陷是:依赖于对接时传感器之间的距离,可靠性不易保证;提高了装油作业的操作难度;需改造车辆,实施工作量大;车辆上的传感器易遗失损坏;传感器电池需要定期更换,维护繁琐。

2 解决思路

采用视频图像识别技术,通过对车辆装车作业的视频图像进行深度学习,最终使得机器可以对鹤管与装油口的实际对接情况进行自动识别,在此基础上就可以进行业务信息的核对验证,判断对接的正确性,对于错误的对接情况进行报警,禁止装车,保障装车安全。

这种方法只需要在发油岛上的合适位置安装摄像机,无需在车辆和鹤管上加装设备,对原有装车作业流程没有任何影响,平时只要注意保持镜头表面干净就行,系统实施和维护较简单。

3 具体方法

建立训练系统、识别系统、分析系统,采用机器学习技术实现装油口和鹤管的智能识别,与发油系统进行数据交互,最终实现验证结果对发油启动的连锁控制。

整个系统的工作过程为:从视频系统中获取大量现场的油罐车装油口、鹤管、编号等视频图像,对图像进行筛选、增广后形成训练样本库和验证样本库;然后对训练样本进行标记,利用样本库对网络识别模型进行训练,最终形成可用的网络识别模型。

当需要进行识别时,分析系统从发油控制系统获取装车启动信号,根据配置信息生成对应装车位的识别命令发送给识别系统。识别系统一旦接收到识别命令,立刻截取指定装车位的视频图像,然后利用网络识别模型对图像进行识别,最后将识别结果返回给分析系统。分析系统将识别结果与装车单据信息进行比对验证,得出是否可以装车的结论,并将此结论发送给发油控制系统,发油控制系统据此启动装车泵开始装车,或拒绝装车并报警。系统数据流如图1所示。

3.1 建立训练和验证的样本库

样本的生成流程如图2所示。

(1)原始图像的获取:对监控录像视频按指定帧数截取视频图像并保存。设置指定帧数为16,读取目标视频文件,读取视频帧数,将帧数变量与指定帧数相除判断是否达到指定帧倍数,若达到则保存一张此时帧的图片,循环进行直到将视频读取完毕。

(2)数据增广:①剔除无效图片,将数据清洗过的文件按数字编号“1,2,3…”重新命名;②进行一次增广,采用水平翻转与镜像翻转扩充数据;③在一次增广的基础上进行二次增广,采用均值扰动、卷积、锐化、特定方向上边缘检测、添加高斯噪声、高斯扰动、改变对比度、放射变换、按像素加等方法再次扩充数据。

(3)数据标记:使用labelImg对接口及鹤管进行标记。检测目标分类如下:鹤管(0、1、2)、装油接口(oil port)、油气回收口(recovery port)。

(4)数据集划分:训练集、验证集按照0.91∶1的比例进行划分,然后转化标注数据文件为yolo格式。

(5)训练参数修改:对数据集使用K-means方法更新anchors,然后转换yolo权重文件为适合keras库的模型文件。修改batchsize的大小,避免显存不足报错,直至程序能顺利运行。

算法训练的总样本量为38 551张图像,涵盖装油口保护罩、装油口、油气回收接口及编号为0、1、2的鹤管,保证了样本的多样化,样本数量、种类均覆盖充足。

3.2 建立基础算法

由于在司机按下启动按钮后需要系统很快反馈识别结果,通常不超过1 s,另外,还经常会出现多个装车位同时启动装车的情况,这意味着系统需要具备同时对多个图像进行识别处理的能力,而且系统在对图像进行识别时,不仅需要同时检测出图像中有哪些类型的物体,如装油口、鹤管等,还要识别出它们在图像中的具体位置。因此,系统采用的图像识别算法必须在保证准确率的情况下速度也要快,经过比较分析,选择了YOLOv3算法。YOLO以速度见长,处理速度可以达到45 f/s,这得益于其识别和定位合二为一的网络设计,而且这种统一的设计也使得训练和预测可以端到端的进行,即可以将检测样本整体输入,经中间层的特征提取,就可以在输出层回归出所有类型物体的预测框的坐标信息与类别信息。YOLOv3相比于前代的算法,既平衡了检测速度与准确率,又增大了神经网络的层数,从而更深地提取对象特征,让准确率更进一步得到提升。

具体识别将神经网络中的神经元接收到的输入作为输入信号,经过激活函数的激活值作为输出信号,同时设置一个恒定虚警率,满足输入数据和输出结果分布不均匀时,可以自适应地调整阈值,提升分类效果。其中,当relu函数定义为y=f(x)、输入为X=[X1,X2,X3,…,Xm]、权重为ω=[ω1,ω2,ω3,…,ωm]时,输出值为:

Y=f(ωTX+b)

式中,f(*)表示激活函数;ωT表示权重ω的共轭转置;X表示输入数据;b表示修正项。因此,节点的激活值为:

Rn=M·f(ωTX+b)

式中,M表示二值掩模矩阵,且服从伯努利分布取值,并根据激活值进行设定。具体的,根据设定的阈值,当节点的激活值大于阈值时,M二值掩模矩阵中的元素取值为1,小于阈值时取值为0。根据节点激活值构成的集合,从中选取一个数值作为兴趣程度判定的阈值,通过判断将低于阈值的节点删除,从而实现优化。其中,删除的节点集合为所有节点集合减去保留节点的集合,即:

R-=R-[(1-γ)Rh+γR1]S

式中,R-表示删除的节点;R表示所有的节点;γ表示保留比例;Rh表示高于阈值的节点;R1表示低于阈值的节点;S表示保留节点的比率。

在样本数据不足的情况下,为提高卷积神经网络提取特征的表达性能,在保留特征的原始数据不破坏情况下,对特征尺度转换迁移融合,从而进行特征重用。

为解决样本图像单一问题,在针对网络摄像头视频流的处理上,结合样本分类扩充图像,同时分析样本的不平衡度。具体的,扩充过程中,在变换图像大小,旋转角度时,对应的旋转角度、縮放比例系数和对比系数分别在区间(0°,90°]、[0.5,1.5]和[0.2,1.8]随机生成。

3.3 算法改进

由于油罐车停靠位置及摄像机角度等客观因素,检测目标常常相近并互相遮挡,而YOLOv3网络的细节区分度较差,会导致漏检、误检等错误,因此需要针对这些情况对算法进行改进。主要采用以下方法:

(1)增加多尺度预测,提供尺寸不一的边界框,参考YOLOv2将多尺度放到训练数据采样上所采用的feature map,设置边界框。

(2)分析YOLOv3在不同激活函数上的训练时间以及分类错误率,结合其他网络的相应表现,选择使用relu函数作为激活函数。

(3)dropout优化,改善在模型参数过多、训练样本过少的情况下导致的训练模型过拟合现象,通过忽略一半特征检测器,降低过拟合及错误率,提高分类的精度。

(4)增加正则化约束,提升网络性能。

(5)特征尺度转换迁移融合,在保留特征的原始数据不破坏情况下变换特征图的尺度大小。通过在主干网络中将特征图缩小迁移融合,进行特征重用,以提高卷积神经网络提取特征的表达性能。

(6)为解决样本图像单一问题,在针对网络摄像头视频流的处理上,结合样本分类扩充图像,同时分析样本的不平衡度。

(7)针对YOLOv3模型IOU值不理想问题,对anchor值进行聚类优化。①利用DBSCAN聚类算法在忽略中心点的情况下获得若干数量的类;②为了获得检测目标的局部和整体信息,通过增加多尺度进行聚类,进一步为对检测目标的轮廓信息进行多尺度聚类;③经过多尺度聚类和卷积操作,可以获得初代特征图;④将这些类作为输入数据,通过K-means算法进行划分聚类,这样便可以获得准确的中心点位置。DBSCAN聚类算法,可以在忽略中心点的情况下,得到首次较好聚类效果,通过结合K-means算法可以有效加速数据集收敛,提升小目标分类精确度。

3.4 优化识别过程

将训练成功后生成的参数文件从训练服务器复制到识别服务器中,同时更新anchors,完成网络模型(图结构、张量、值)的迁移。识别时自动将需要识别的实际图像导入网络模型中,网络会预测出一系列的候选对象,再用NMS(非极大值抑制算法,阈值为0.5)来移除一些多余的候选对象,防止出现一个目标被多次检测的问题。剩余的候选对象就是识别结果,将它们的类别和坐标在图像中标出后输出,即完成识别优化过程。

3.5 系统集成

在发油系统、识别系统和分析系统之间建议采用网络UDP传输协议实现系统间的数据交换,保证数据交换的实时性。

为保证系统的持续运行,三个系统之间定时发送心跳信息,当超过一定时间没有收到心跳信息时表明对方系统出现异常,立刻进行报警提示,方便及时进行维护。

为便于事后查询数据和问题追溯,系统应记录识别过程中的每个步骤产生的数据信息,通过分析这些数据,也有利于系统的不断优化。

摄像头必须是网络摄像头,其数量可以根据油库具体情况进行配置。

4 结论

在油库现场按照上述方法对实际装车情况进行了验证。系统能够在1 s内反馈单个摄像头的识别结果,对于被遮挡部分小于1/5的装油口,识别率可达到95%,在摄像机摆放位置良好,图像清晰无遮挡时的识别率可达100%,实用效果良好。

通过图像识别的方式实现了油库装车过程中的装油口对接正确性验证,防止了油罐车的混油和冒顶,消除了由此引发的火灾、爆炸等危险事故隐患,是一个值得推广的方法。

由于各个油库的环境有差异,油罐车装油口的形式也存在不一致的情况,因此,还需要针对这些特殊情况进一步训练网络识别模型,进一步提高识别率,达到更好的实用效果。

参考文献

[1] 张琦,张荣梅,陈彬.基于深度学习的图像识别技术研究综述[J].河北省科学院学报,2019,36(3):9.

[2] 鞠默然,罗海波,王仲博,等.改进的YOLO V3算法及其在小目标检测中的应用[J].光学学报,2019,39(7):245-252.

[3] 郦涛.基于人工智能的图像识别技术的研究[J].通讯世界,2019(8):69-70.

猜你喜欢

油罐车图像识别
基于计算机视觉的图像识别技术研究
无人驾驶技术中红外图像识别准确率的实验研究
尼日利亚南部油罐车爆炸 致20余人死亡
尼日尔发生油罐车爆炸事故致55人死亡
人工智能背景下图像识别技术浅析
尼日尔油罐车爆炸,56死
《图像识别初探》教学案例
基于字典学习的正则化鲁棒稀疏表示肿瘤细胞图像识别
图像识别交互系统
油罐车的“尾巴”