刘泳志 陈卓辉 程文轩 何兴杰 刘易
成都理工大学核技术与自动化工程学院 成都市 610000
摘 要:目前国内火车站、机场等重要场所的安检大多采用人工肉眼辨别的方法,对危险物品进行识别。其中可能存在识别疲劳等诸多因素造成对危险物品进行误判。本文将提出一种机器视觉的技术,旨在代替人眼进行更高效及精确的针对危险物品及其他进行识别监测。此外可通过对机器进行建库训练,将一些非常见但存在潜在危险的成像图导入库中,便于减少偶然事件的发生,以此加强火车站、机场等重要场所的安全工作。
关键词:机器视觉;X射线成像;安检
1引言
安检安全问题一直是目前比较棘手的问题,特别是在汽车站、火车站、机场等一些人流量大的场所。据不完全统计,每年国内发生的大大小小的安检事件就有上万起。所以为了保障人民群众的生命财产安全,在这些重要场所入口处通常会设置多层安检,常见的安检大多为安检人员手持金属探测仪检查以及安检机扫描。但危险品的种类样貌千奇百怪,传统的安检能检查出大部分常见的危险品,包括金属利器、枪支弹药、易燃易爆品等等,但对于一些非金属利器(陶瓷刀等)、塑胶爆炸物等就不那么易于识别了[1],况且安检人员在进行长时间的工作后,容易造成视觉疲劳等因素,以及安检机所生成的图像为平面的,并不能立体的反映实际物品情况,从而导致一些危险品不能被识别检查。故增强重要场所的安检已经刻不容缓。
针对这个问题提出了一种机器视觉的技术,同在通过X射线透射物品成像的基础上,引进该方法来代替传统的人工识别。并且通过进行相应的识别训练来扩充图像库,以此达到代替肉眼进行更高效及精确的对危险物品及其他进行监测的效果。
2原理介绍及模型构建
2.1 X射线成像原理
X射线为粒子流,它在穿透物质的过程中会发生能量衰减,其衰减是由于光子与物质相互作用使射线被吸收和散射而引起的,其中衰减的程度与物质的种类及其厚度紧密相关。
X射线在穿透不同物体时产生的衰减程度各异,并且穿透同种物体不同厚度的衰减过程也不相同,因此图像采集设备所接收到的射线量,所形成的X射线图像灰度也不相同[2]。由于X射线的透射不会对检测的物体造成永久性损坏,并且不受被检测物体体积形状的限制,故被广泛应用于安检工作中。
2.2 图像库介绍
目前初步用于训练的图像库为TENSORFLOW官网中提供的示例程序图像库,有五种花的图像,如向日葵、蒲公英、郁金香、雏菊、玫瑰。该图片库是利用FLICKER网站,各网友提供,并被官方引用制作成为一个数据包,供学习下载。
https://storage.googleapis.com
2.3 机器学习及图像预处理
2.3.1 机器学习及训练环境
机器学习模型是图像识别分类的主要研究方法之一。[4]
本项目使用的软件为python版本3.7.9、tensorflow-cpu版本2.3.0,同时通过使用keras.preprocessing加载已经下载在计算机的图片数据。每类图片中80%用来训练卷积神经网络,20%用于每批次训练结束后验证正确率。对图片像素值进行归一化,即将像素RGB值除以255,每个批次32张图片。利用keras函数库中layers.Conv2D函数建立了三个隐藏层,激活函数全部选择relu函数,每层建立后用MaxPooling2D函数对矩阵池化。为了防止过度拟合图片的选择用Dropout方法在训练过程中随机将激活设置为0,我们设置的概率为0.2。最后将矩阵平化成一个一维数组,用以分类最终结果。
图 1 神经网络节点图的概况报告
共3989285个网络节点,最终有5种输出结果。
2.3.2 图像预处理
图像的预处理目的在于去除掉一些干扰信息,并增强需要的纹理信息,从而提高图像识别的准确率。
由于我们所获得的训练样本有限,雏菊类有633张图片,蒲公英899张,玫瑰641张,向日葵698张,郁金香799张,为了提供足够多的训练样本,我们将每张图片进行旋转、拉伸、截取形成新图用于训练,如下图2所示:
.png)
图 2 单张雏菊图片的变换示例
最终获得9倍的训练样本数据。通过这些图片训练出来的神经网络,可以更加良好地识别放置在检测装置的不同角度,面对不同方向的目标物体,使得我们对目标样品检测的准确率更高,抗干扰能力更强,普适能力更强。
3模拟测试结果
目前以花朵为初测对象,目的在于代替非常规形状的利器进行模拟识别测试。且花朵种类繁多,图片多样,对于图像分类的要求更高。更利于测试图形分类检测功能。
对于我们已经强化过的样本图片,我们将全部图片输入神经网络,重复训练15代,每一代中有20%的图片用于效验当前代神经网络对图片的预测准确性。所有图片通过TENSORFLOW自带随机抽样算法,添加随机种子,在图片库中随机抽选图片输入神经网络,以防训练不充分。随后利用MATLPT库中的绘制折线图工具,对训练网络结果报告进心准确度折线图绘制,直观看到每代神经网络训练的准确率提升。每代训练结果如图3所示:
图 3 训练结果准确率折线图
.png)
可以看到在训练后期,训练的准确率已经达到80%,验证的准确率也接近75%。丢失率普遍较低。model.save保存这个神经网络模型,即保存各节点参数。为了达到动态识别的效果,需要提高效率,直接利用摄像头传来的模型,加入神经网络,运算得分类结果。用LOAD_MODEL加载模型。
在互联网上找寻相关或不相关的新图片,利用这个模型,来对图片进行预测分类,验证该网络是否达到预期目标。用MAPLOT工具对模型的5个输出节点的输出进行柱状图绘制,直观感受到该神经网络对各类花的识别概率。
图 4 未经训练的向日葵图
.png)
图 5 神经网络识别结果柱状图
图 6 未经训练的雏菊图
图 7 神经网络识别结果柱状图
.png)
图 8 未经训练的噪声图
图 9 神经网络识别结果柱状图
由图可知,将识别结果限制为概率大于70%是合理的,这样可以排除干扰噪声,当某一通道检测概率大于70%时,可以认为神经网络识别到的就是这个类型的图片。
有了已经训练好的模型,只需要将摄像头采集的实时图片送入这个神经网络模型,计算判别就可以实现一种动态识别的效果了。我们在此利用openCV库,中的VideoCapture函数进行摄像头调用,调整识别帧率,大约1秒为2张图片进行计算分类并输出结果。设置检测限为70%概率,动态效如下图所示:
图 9 无目标物体时的检测效果图
图 10 目标物体向日葵出现时的检测效果图
通过实际的实验,可以看到当向日葵只出现一半在镜头时,神经网络可以很快的识别到向日葵,且准确率非常高。依次测试其他几种花类,玫瑰、蒲公英、雏菊、郁金香都能够达到很好的识别效果,误判别概率低。
可以得出结论,只要有大量X成像的危险物品透视图,如瓶子、刀、枪等都可以用这种方法,训练得一个神经网络来智能自动判别危险物品种类。计算量较小,可以将程序加载在jetson-nano上配合摄像头,成为一个具有机器视觉的独立运行装置。
4总结
本文基于机器视觉的技术对X射线成像后的图像进行精确识别研究。在进行机器学习中,对图像进行预处理,并且提取有用的纹理特征信息导入到图像库中进行不断的训练识别,最后测试模型。从而提高对常见危险品及罕见的可疑物品的识别成功率。
从实验结果证明,机器视觉对模拟物品的图像识别成功率较高,丢失率在可控范围内。然而本次研究仍要需要进行更深层次的探索,例如对重叠物、可拆卸枪支、固态易燃品等多类进行深度学习模型。对于这些研究,期待在以后的工作中继续研究。
参考文献:
[1]刘豪.我国地铁安检现状及对策研究[J].物流工程与管理,2019,41(03):142-144.
[2]顾乐旭. 基于X射线安检图像的刀具识别系统设计[D].东北电力大学,2018.
[3]陈滨. X射线透视成像目标提取与识别方法研究[D].东南大学,2017.
[4]朱建臣,王神龙.机器视觉在轮胎及压痕图像分类研究的应用[J/OL].小型微型计算机系统:1-7[2021-03-25].
[5]郑金州,鲁绍栋.CT技术在安检领域应用综述[J].CT理论与应用研究,2012,21(01):157-165.
[6]朱文杰.基于机器视觉的物体识别与抓取控制系统[J].物联网技术,2019,9(03):37-38+41.
[7]张红涛,刘迦南,谭联,许帅涛.基于计算机视觉的棉铃虫成虫雌雄自动判别研究[J].环境昆虫学报,2019,41(04):908-913.
作者简介:刘泳志(1999-02-02),男,汉族,籍贯:广西玉林市,学历:本科,研究方向:核工程与核技术