1.一种基于改进YOLOv4的X光安检图像检测方法,其特征在于,包含以下步骤:S1.建立含有违禁品的X光安检图像数据集,并将数据集分为训练集和测试集;
S2.利用K‑means++聚类算法设置数据集的先验框;
S3.搭建YOLOv4网络模型,包含利用GHM‑C改进YOLOv4的置信度损失函数;
S4.利用训练集对改进的YOLOv4模型进行训练得到X光安检图像检测模型;
S5.利用测试集对X光安检图像检测模型进行测试;
步骤S3包含以下步骤:S31.YOLOv4主干网络使用CSPDarkNet53来提取特征,颈部网络使用spp和pan对特征进行融合,头部网络采用yolo head进行回归和预测;
S32.使用GHM‑C loss优化模型的置信度损失函数Lobj:GHM‑C loss为:
其中,N是每个mini‑batch的样本个数, 是二元交叉熵损失函数,gi是梯度模长,GD(gi)是梯度模长为gi的梯度密度;
改进后的置信度损失函数Lobj为:
2
其中, 是梯度密度协调参数: S是特征图中包含的网格单元个数,B是每个网格单元的回归框个数, 和 用来判断回归框中是否有目标物体, 和 分别表示回归框有目标物体的预测置信度以及真实置信度;
步骤S3中搭建YOLOv4网络模型时还包含利用非极大值抑制方法对冗余预测框进行筛选,具体包含以下步骤:S303.采用Soft NMS和Diou NMS相结合的非极大值抑制方法对检测时产生的冗余预测框进行筛选,Soft‑Diou NMS公式:其中,si为预测框分数,Bi是si当前类别预测框,M是当前类别得分最高的预测框,thresh是预设阈值。
2.根据权利要求1的一种基于改进YOLOv4的X光安检图像检测方法,其特征在于,步骤2包含以下步骤:S21.从数据集中随机选择一个样本作为聚类中心;
S22.采用K‑means++算法计算数据集中的每个样本与聚类中心的最近距离,然后计算每个样本成为下一个聚类中心的概率,最后采用轮盘法选出下一个聚类中心;
样本与聚类中心的IOU距离为:d(box,centroid)=1‑IOU(box,centiord)其中,box是样本标注框,centroid是聚类中心,IOU是样本标注框和聚类中心框的交并比;
S23.重复步骤S22,直到选出k个聚类中心;
S24.针对数据集中的每个样本,计算出它到k个聚类中心的IOU距离,并且将其分到距离最小的聚类中心所对应的类中,从而得到数据集中每个样本对应的先验框。
3.根据权利要求1的一种基于改进YOLOv4的X光安检图像检测方法,其特征在于,步骤4包含以下步骤:S41.修改YOLOv4的cfg文件,包括将每个yolo层中的classes修改成数据集的类别数量,在每个yolo层前的convolution层中修改filters,改成filters=(classes+5)*3;
S42.设置网络模型超参数,包括训练和测试时输入图片的尺寸,batchsize,训练轮数epoch,学习率;
S43.在训练之前对训练集采用Mosaic方法增强数据;
S44.使用增强后的训练集训练改进后的YOLOv4模型,在训练时采用自对抗训练提高训练效果,然后利用改进后的置信度损失函数、位置损失函数及分类函数构建的总损失函数进行反向梯度迭代更新权重直至模型收敛,保存模型收敛时对应的最优权重文件,从而得到X光安检图像检测模型。
4.根据权利要求3的一种基于改进YOLOv4的X光安检图像检测方法,其特征在于,步骤5具体为:将测试集输入X光安检图像检测模型进行违禁品检测,为了解决物体遮挡问题,检测时使用Soft NMS和Diou NMS相结合的非极大值抑制方法对冗余预测框进行筛选,从而得到违禁品位置和类别的图像。
5.根据权利要求1‑4中任一项所述的一种基于改进YOLOv4的X光安检图像检测方法,其特征在于,步骤S1中违禁品包括:枪、刀、扳手、钳子、剪刀、充电宝、打火机;
所述X光安检图像数据集构建步骤如下:利用标记工具对X光安检图像进行标注,得到违禁品的位置信息和类别信息的XML文件,接着将X光安检图像和XML文件按照Pascal Voc格式存放形成X光安检图像数据集。