一种基于注意力机制的港口环境下目标检测方法、系统、终端及可读存储介质

文档序号:26007748发布日期:2021-07-23 21:26阅读:135来源:国知局
一种基于注意力机制的港口环境下目标检测方法、系统、终端及可读存储介质

本发明属于目标检测技术领域,具体涉及一种基于注意力机制的港口环境下目标检测方法、系统、终端及可读存储介质。



背景技术:

在港口环境下,司机在中控室通过摄像机视频画,远程操作轮胎吊进行作业。在司机进行工作时,其工作区域可能进入行人或者车辆。然而,当有人或车辆进入时,若司机未看到人或车辆时,其操作的集装箱可能碰到车或者人,导致安全事件发生。

针对上述问题,目前的解决方案是司机在中控室操控轮胎吊作业时,同时查看轮胎吊机身所载摄像机的拍摄画面中是否有车辆或行人,若有则停止作业,等车辆或行人通过后再进行作业。这种解决方案会导致司机的作业效率降低,因为司机需要时刻警惕是否有异常车辆或行人进入工作区域;而且行人和车辆的目标体积较小,存在司机未发现的情况,从而容易导致安全事故发生。

近年来,基于深度学习的目标检测算法越来越受到人们的关注。其中,yolov3目标检测算法在速度和精度上达到了一定的权衡,其不仅速度快而且精度较高。在此背景下,研究一种基于yolov3目标检测算法的港口环境下实时监测轮胎吊工作环境中是否有车辆和行人的方法尤其重要。



技术实现要素:

本发明的目的是提供一种基于注意力机制的港口环境下目标检测方法、系统、终端及可读存储介质,所述方法为轮胎吊司机工作时提供了一种辅助的监控手段,一定程度可提高轮胎吊司机工作效率并有助于减少安全事故的发生。

一方面,本发明提供的一种基于注意力机制的港口环境下目标检测方法,包括如下步骤:

步骤s1:采集港口环境下轮胎吊作业监控范围内的图像数据,利用图像数据中的含检测目标的图像构建样本集;

步骤s2:将样本集进行k-means聚类以获取k个先验瞄框prioranchor;

步骤s3:对样本集中的图像进行预处理,并输入基于注意力机制的yolov3目标检测模型进行训练,得到港口环境下的目标检测模型;

其中,在所述yolov3目标检测模型中的fpn网络架构中增设通道及空间注意力模块ca-sam,所述通道及空间注意力模块ca-sam包括通道注意力子模块和空间注意力子模块,分别表示为ca子模块和sa子模块;

所述ca子模块中对输入的特征图fc分别进行最大池化(maxpool)、平均池化(avgpool)以及将maxpool与avgpool的结果进行通道拼接(concat)操作,再输入至共享参数的多层神经网络(mlp网络),再将所述mlp网络的通道输出结果相加形成通道注意力mc特征图,然后将输入特征图fc与所述通道注意力mc特征图进行点乘输出的全局最大化与全局平均化的特征图fc′;

所述sa子模块对全局最大化与全局平均化的特征图fc′进行不同的卷积操作;

所述目标检测模型的输入参数为预处理后的图像,输出结果包括对应图像的预测框中是否存在检测目标;

步骤s4:利用所述港口环境下目标检测模型进行目标检测。

本发明提供的所述方法利用yolov3目标检测模型实现了港口环境下实时监测轮胎吊工作环境中是否有车辆和行人等检测目标,充分利用了yolov3目标检测算法在速度和精度上的优势。另外,本发明根据港口环境下目标检测的独有特性以及需求对yolov3目标检测算法进行了优化,在yolov3目标检测模型中,选择darknet53网络提取特征,然后用使用fpn网络架构进行特征融合。本发明在fpn网络中增加了通道及空间注意力模块。

其中,针对ca子模块,由于目标分类网络所输入的图像相对于整个图像来说其是占了较大比重;而目标检测任务相对来说其目标相对图像较小,若直接采用均值操作神经网络可能无法学到较好的特征。而全局最大池化是特征图上的极值,能更好的反应某个特征通道对物体的响应,因此考虑将全局池化与平均池化进行通道上的拼接,让网络自动学习特征;并且可以并行加入全局平均池化与全局最大池化。

针对sa子模块,对进行全局最大化与全局平均化的特征图进行不同的卷积操作,而不是简单的使用单个卷积操作,可以提升卷积神经网络学习邻域语义特征的能力。

可选地,所述sa子模块的实现过程如下:

对特征图fc′进行maxpool以及avgpool操作并将maxpool以及avgpool操作后的2个特征图进行concat操作,对concat操作后的特征图分别进行若干个不同大小卷积并再次进行concat操作,然后再进行1×1的卷积得到空间注意力特征图ms,最后将空间注意力特征图ms与特征图fc′进行点乘得到输出特征图fs。

其他,卷积的大小是有多种实现方式,可以任意选择,譬如对concat操作后的特征图分别进行1×1、3×3、5×5的卷积。

可选地,在所述yolov3目标检测模型中的特征金字塔fpn网络架构中设有前景背景分割模块,表示为fbm模块;

其中,所述fbm模块设置在所述空间注意力模块ca-sam之后,所述fbm模块对所述空间注意力模块ca-sam输出的特征图fs分别进行不同膨胀率的膨胀卷积,再进行concat操作得到特征图,并利用softmax函数从所述特征图中提取前景特征图,然后将所述前景特征图的维度扩展到与特征图fs相同,再将其与特征图fs进行点乘得到特征图ds。

可选地,所述yolov3目标检测模型中的fpn网络架构的最终检测分支上设有rfb模块,所述rfb模块利用不同的普通卷积以及不同膨胀卷积对输入的特征图进行操作,并将操作后的多组特征图进行concat操作以及卷积降维,再将concat操作后的特征图进行1×1卷积得到所述yolov3目标检测模型输出的最终的特征图。

可选地,所述rfb模块中卷积的设置如下(其卷积核大小核膨胀率可以根据自己的需要适应性修改的):

对输入的特征图分别进行1×1普通卷积和3*3大小且膨胀率为1的膨胀卷积、3×3普通卷积和3×3大小且膨胀率为3的膨胀卷积、5×5的普通卷积和3×3大小且膨胀率为5的膨胀卷积,然后,将以上三组卷积的特征图进行concat操作;且将concat操作后的特征图进行1×1卷积得到最终的特征图。

可选地,步骤s4中利用所述目标检测模型进行目标检测过程为:

获取先验区域以及相机id号;

将图像输入至所述目标检测模型得到初始的预测结果;

再利用非极大值抑制nms算法以及基于区域的非极大值抑制rbi算法优化所述初始的预测结果,过程如下a-d:

a:根据置信度对所有预测结果进行置信度降序排序,放入列表list_a中;

b:从所述list_a中取出置信度最高的预测框box_a放入list_b中,在所述list_a中删除所述box_a,再计算box_a与list_a中剩下的所有预测框的ioui,i表示list_a中第i个预测框;

其中,a矩形框与b矩形框的iou表示为:

c:保留ioui<δ的预测框,其中δ为预设阈值,重复第b步,直至所述list_a为空,退出循环,得到nms的预测结果list_b;

d:对nms后的预测结果list_b使用rbi算法进行结果筛选;其中,计算所述list_b的中的预测框与先验区域的rbi值,若满足rbi值大于阈值thresh,且对应图像的相机id符合目标检测要求,则将所述预测框放入对应的检测结果,所述rbi值的计算公式如下:

rbi=iou(area,new_list)>thresh

其中,area为先验区域;new_list为所述list_b的中的预测框;

所述相机id的检测要求为:图像中预测框内的目标与相机id配置的检测目标为同一类目标;

其中,若检测目标为车辆和行人,在轮胎吊腿部设置4个摄像机,用于检测先验区域的行人和车辆,在轮胎吊顶部安装1个摄像机,用于检测先验区域的行人。

可选地,所述基于注意力机制的yolov3目标检测模型的训练过程的损失函数loss如下:

loss=lossx,y,w,h+lossobj+noobj+losscls+0.1×lseg

其中,坐标损失lossx,y,w,h如下:

式中g代表将原图进行fpn操作后特征图的大小,n表示检测目标的类别数目,表示的是第i个位置是否存在第j类检测目标,存在为1,不存在为0;d为包含预测框predbox与真实框gtbox的最小外接矩形;predbox为预测框,gtbox为真实框;iou表示矩形框predbox与predbox之间的交并比。

置信度损失lossobj+noobj式子如下:

式中,表示的预测出的第i个位置是否存在第j类检测目标,存在为1,不存在为0;表示第i个位置是否存在第j类检测目标,存在为1,不存在为0;表示第i个位置存在检测物体时表示为1,否则为0;表示第i个位置不存在检测物体时为1,否则为0;

类别损失losscls式子如下:

其中,表示的是预测出的第i个位置是否存在第j类检测目标,存在为1,不存在为0;pij表示的是第i个位置是否存在第j类检测目标,存在为1,不存在为0。

lseg为辅助分支的损失,采用二值交叉熵计算损失。

通过使用pytorch框架,搭建上述yolov3目标检测模型即可得到相港口环境下行人与车辆目标检测模型,使用上述损失函数进行模型参数优化,最终将训练好的模型保存到硬盘以供后续使用。

第二方面,本发明提供的一种基于上述方法的系统,包括:

数据采集以及处理模块:用于采集港口环境下轮胎吊作业监控范围内的图像数据,利用图像数据中的含检测目标的图像构建样本集;

聚类模块:用于将样本集进行k-means聚类以获取k个先验瞄框prioranchor;

目标检测模型构建模块:用于对样本集中的图像进行预处理,并输入基于注意力机制的yolov3目标检测模型进行训练,得到港口环境下的目标检测模型;

其中,在所述yolov3目标检测模型中的fpn网络架构中增设通道及空间注意力模块ca-sam,所述通道及空间注意力模块ca-sam包括通道注意力子模块和空间注意力子模块,分别表示为ca子模块和sa子模块;

所述ca子模块中对输入的特征图fc分别进行maxpool、avgpool以及将maxpool与avgpool的结果进行concat操作,再输入至共享参数的mlp网络,再将所述mlp网络的通道输出结果相加形成通道注意力mc特征图,然后将输入特征图fc与所述通道注意力mc特征图进行点乘输出的全局最大化与全局平均化的特征图fc′;所述sa子模块对全局最大化与全局平均化的特征图fc′进行不同的卷积操作;

所述目标检测模型的输入参数为预处理后的图像,输出结果包括对应图像的预测框中是否存在检测目标;

目标检测模块:用于利用所述港口环境下目标检测模型进行目标检测。

第三方面,本发明提供的一种终端,包括处理器和存储器,所述存储器存储了计算机程序,所述处理器调用所述计算机程序以执行:所述一种基于注意力机制的港口环境下目标检测方法的步骤。

第四方面,本发明提供的一种可读存储介质,存储了计算机程序,所述计算机程序被处理器调用以执行所述一种基于注意力机制的港口环境下目标检测方法的步骤。

有益效果

本发明公开的一种基于注意力机制的港口环境下目标检测方法实现了港口环境下通过计算机视觉技术辅助司机进行工作周围异常环境的预警,即目标识别,一定程度上克服了现有技术漏检的缺陷,且该方法可广泛应用于港口环境下轮胎吊工作区域环境内行人与车辆检测,以及时预警进而减少安全事故的发生率,更有利于提高司机的工作效率。

此外,本发明根据港口环境下目标检测的独有特性以及需求对yolov3目标检测算法进行了优化,在yolov3目标检测模型中,选择darknet53网络提取特征,然后用使用fpn网络架构进行特征融合。本发明在fpn网络中增加了通道及空间注意力模块。

其中,针对ca子模块,由于目标分类网络所输入的图像相对于整个图像来说其是占了较大比重;而目标检测任务相对来说其目标相对图像较小,若直接采用均值操作神经网络可能无法学到较好的特征。而全局最大池化是特征图上的极值,能更好的反应某个特征通道对物体的响应,因此考虑将全局池化与平均池化进行通道上的拼接,让网络自动学习特征;并且可以并行加入全局平均池化与全局最大池化。针对sa子模块,对进行全局最大化与全局平均化的特征图进行不同的卷积操作,而不是简单的使用单个卷积操作,可以提升卷积神经网络学习邻域语义特征的能力。

附图说明

图1-a、图1-b分别为港口轮胎吊正面1-5号摄像机安装示意图、港口轮胎吊侧面图1-5号摄像机安装示意图;

图2为数据集目录图;

图3为darknet53卷积神经网络示意图;

图4-a为改进的注意力多级感受野fpn网络图;图4-b为ca-sam模块中的改进通道注意力模块ca;图4-c为ca-sam模块中的改进的空间注意力模块sa;图4-d为前景背景分割模块(fbm模块);图4-e为嵌入的rfb模块示意图;

图5为实施例1基于yolov3目标检测模型的港口环境下先验区域车辆与行人检测方法的实施流程图;

图6-a为轮胎吊顶部摄像机5号所拍摄的行人在先验区域外的原图;图6-b为检测结果图,行人在先验框外,故未框选行人;

图7-a为轮胎吊腿部相机5号所拍摄的行人在先验区域内的原图;图7-b为检测结果图,行人在先验框内,故框选出行人;

图8-a为轮胎吊腿部相机5号所拍摄的车辆在先验区域内的原图;图8-b为检测结果图,车辆在先验框内,又因为程序设置5号相机不需检测车辆,故未框选车辆;

图9-a为轮胎吊腿部相机1号所拍摄的无检测物体在先验区域内的原图;图9-b为检测结果图,因无需检测物体,故未框选任何物体;

图10-a为轮胎吊腿部相机1号所拍摄的车辆在先验区域内的原图;图10-b为检测结果图,因需检测车辆,故框选出所检测的车辆;

图11-a为轮胎吊腿部相机1号所拍摄的行人在先验区域内的原图;图11-b为检测结果图,因需检测行人,故框选出所检测的行人;

具体实施方式

本发明提供的一种基于注意力机制的港口环境下目标检测方法是为了实现港口环境下的目标检测,该检测目标常常为行人和车辆,因此,本发明下述将以目标为行人和车辆为例进行陈述,其他可行的实施例中,对其不进行具体的限定。下面将结合实施例对本发明做进一步的说明。

本发明实施例设置了先验区域,并检测先验区域是否包含车辆或者行人,若存在则给出其类别以及位置信息;并可根据港口环境相机所设置的相机id号不同,监控不同的物体。轮胎吊上装有不同得摄像机,用于监控不同区域。附图中图1-a为港口轮胎吊正面图,图1-b为轮胎吊吊侧面示意图,从图可知,本发明在轮胎吊腿部安装有1-4号摄像机,轮胎吊顶部安装有5号摄像机。由于现场的工作需求,在监控时,设置1-4号轮胎吊腿部摄像机所拍摄画面用于可监控周围的车辆与行人,5号轮胎吊摄像机相机所拍摄画面可用于监控行人。

基于上述设置,本发明实施例提供的一种基于注意力机制的港口环境下目标检测方法,包括以下步骤:

步骤s1:在港口环境下,采集车辆与行人数据集。

步骤s2:将数据集划分为训练集与测试集,并进行k-means聚类以获取9个瞄框(anchor)

步骤s3:将训练集中的图片预处理后输入基于注意力机制的yolov3目标检测模型进行训练,得到港口环境下用于检测车辆与行人的目标检测模型,将最终训练好的模型保存至硬盘。

步骤s4:加载的目标检测模型,设定需要检测的先验区域及相机id号,输入图像到步骤s3所述的的目标检测模型中,再基于设置的先验区域以及相机id使用nms算法以及rbi算法优化初始的预测结果。

所述步骤s1的具体方法为:

步骤s1.1:采集视频数据并保存。其中,本实施例中优选采集视频数据,其他可行的实施例中,对其不进行具体的限定,非视频的图像数据也可以应用于模型训练。

采集各种天气(雨天、阴天、晴天)、不同时间(白天、下午、傍晚、晚上)、各个不同轮胎吊四周环境所拍摄的视频,根据相机的不同保存为mkv格式或mp4格式。

步骤s1.2:将视频数据拆分成图片序列,并对含有车辆或行人的图片进行标注。

采用ffmpeg软件根据不同的视频格式分别进行处理,筛选出具有车辆或者行人的图片序列并保存到硬盘中;使用labelimg软件进行标注,保存为xml格式。

本实施例中采集各种天气下的数据有利于提高模型的预测可靠性。其中,图像的保存格式是依据所选用的软件算法来确定的,因此,本发明并不局限于上述格式,其可以根据实际需求进行适应性调整。

所述步骤s2的具体方法为:

步骤s2.1:对所标注的数据集划分为训练集和测试集。

使用程序获取输硬盘中数据集的图片路径,将图片路径进行随机打乱,然后按照9:1的比例,将前90%的图片复制到如images目录下的train目录下,后10%的图片标移动到images目录下的val文件夹。同理,将标注好的标注xml文件以同样的方式,将前90%图片所对应的xml复制到annotations目录下的train目录下,后10%的图片标移动到annotations目录下的val文件夹。在进行yolov3训练时,程序所读取的为txt文件,故需将xml格式的标注文件转换为txt格式。将annotations目录下的train目录中所对应的xml标注文件转换为txt格式,并保存到labels目录下的train目录,同理将annotations目录下的val目录下转换为txt格式,并保存到labels目录下的val目录。txt文件中每行的格式为{id,x,y,w,h},其中id表示类别,x,y为图像坐标,w,h为相对图片宽和高归一化到0-1的浮点数,数据集最终目录结构如附图2所示。

步骤s2.2:对数据集进行k-means聚类,获取合适的k个prioranchor,本实施例中k=9。

k-means进行anchor聚类的算法步骤如下:

1)将所有图片中的检测目标所属的矩形框提取出来,将每个矩形框转化为对应的宽(w)与高(h),共得到n组宽高,每个宽与高的组合称之为anchorbox。

2)从n个anchor中随机挑选k组anchorbox,称之为prioranchor。

3)计算每个anchor与k个prioranchor之间的距离。在对anchor进行聚类时,距离度量如式(1)所示,离那个prioranchor的距离越近,则将该anchor划分到对应prioranchor类别的anchorbox。计算完所有的anchorbox属于的类别后,使用均值法更新k个prioranchor的值;

dis[i]=1-iou(boxes[i],clusters)(1)

3)重复第2)步,直到所有anchorbox所属的类别不发生改变。

式中,dis[i]为距离度量向量,包含了anchor与k个prioranchor的距离值。boxes[i]表示第i个矩形框,cluster表示k个anchor列表,iou为boxes[i]与k个prioranchor之间的iou。

当计算a矩形框与b矩形框的iou时,iou可表示为如(2)式:

其中,a∩b表示a矩形与b矩形相交的面积,a∪b表示a矩形面积加上b矩形面积减去a∩b面积。iou的范围为[0,1]。故dis[i]=1-iou(boxes[i],clusters),范围为[0,1]。其值越小表示两者的iou越大,其维度为1*k。

所述步骤s3的具体方法为:

步骤s3.1:训练图像的预处理。

为了增强yolov3模型的鲁棒性,需对训练集的图像数据进行预处理以增强图像数据的多样性。本实施例中设定的预处理的方式主要包括:1)图像像素内容的变换;2)图像空间几何变换;3)图像与标签归一化。

s3.1.1:图像像素内容的变换

①依据选取的随机概率p,对图像的整体亮度进行改变。若p小于0.5,则像素值保持不变;否则像素值如式(3)进行变换,对图片中的每个像素值img加上delta,delta取值范围为[-32,32]。当像素值小于0时取0,像素值大于255时,取255。

img=img+delta,ifp<0.5(3)

②依据概率p,对图像的整体对比度进行改变。若p小于0.5,则像素值保持不变;否则像素值如式(4)进行变换,对图像的中每个像素值img乘以val∈[0.5,1.5],当像素值小于0时图像的像素值取0,像素值大于255时,图像的像素值取255。

img=img*val,val=[0.5,1.5]ifp<0.5(4)

③将图片从rgb颜色空装换到hsv颜色空间,依据概率p,然后对色调(h)通道的值进行改变。若p小于0.5,则像素值保持不变;否则像素值进行如式(5)进行变换,对图像h通道的每个像素值img(h)加上delta,delta取值范围为[-18,18],当像素值小于0时图像的像素值取0,像素值大于255时,图像的像素值取255。

img(h)=img(h)+delta,ifp<0.5(5)

④依据概率p,对图像的饱和度(s)进行改变。若p小于0.5,则像素值保持不变;否则对图像s通道的每个像素值进行如式(6)所示变换,对图像s通道像素值img(s)乘以val∈[0.5,1.5],当像素值小于0时图像的像素值取0,像素值大于255时,图像的像素值取255。

img(s)=img(s)*val,ifp<0.5(6)

⑤将图片从hsv颜色空间装换到rgb颜色空间,依据概率p,对图像的通道进行改变。将rgb随机排列,变换为不同的颜色通道。包括rgb,rbg,brg,bgr,grb,gbr六种。

s3.1.2:图像空间几何变换

①以概率p,对图像进行水平镜像进行如式(6)变换。

img(y)=img(width-y)ifp<0.5(7)

img(y)表示的是输出图片。

②以概率p,对图像随机裁剪。

对图像进行随机裁剪。求出图像中最大物体框,求出可移动范围,然后在可移动范围区间进行随机裁剪。

img(y)=crop(img,bbox)(8)

crop表示对输入图片集标注框进行随机裁剪,输入为图片img以及标注框bbox,输出为图片img(y)。

s.3.1.3:输入转换为统一的格式

①图像进行通道转换。将opencv所读bgr格式图像转换为rgb格式图像。

②图像大小归一化。将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小缩放至416*416*3。

③图像数值归一化,标签数值归一化,进行式(8)及(9)所示变换。

img=img/255.0(9)

其中,labelx表示图片标注框的x坐标、labely表示图片标注框的y坐标、labelw表示图片标注框的宽、labelh表示图片标注框的高;img_width表示图片的宽,img_height表示图片的高。

将图片归一化到0-1之间的浮点数,矩形框(label_box)依图像大小归一化0-1之间的浮点数。

步骤s3.2:设置训练参数,该训练参数是所述yolov3目标检测模型中需要训练的参数,依据损失函数进行优化确定训练参数。

训练参数为:epoch:100;batch_size:4;图片大小:416*416*3;使用的优化算法为adam算法;初始学习率为0.001:

步骤s3.3:输入yolov3目标检测模型进行训练,并保存模型。

s3.3.1使用darknet53进行特征提取;

在yolov3目标检测模型中,用于特征提取的基础网络称之为darknet53。其网络结构图如附图3所示:

将步骤3.1中预处理过的批处理图片,输入yolov3的特征提取网络darknet53。通过darknet53获取特征图c3、c4、c5。其大小分别为n×52×52×256、n×26×26×512、n×13×13×1024。其中n为训练的批尺寸(batch_size),表示卷积神经网络进行梯度下降训练所需的样本数。对于darknet5特征提取网络中的输出c3、c4、c5特征图,c3相对于原图下采样8倍,c4相对于原图下采样16倍,c5相对于原图下采样32倍。特征图c3、c4、c5具有不同的感受野,特征图大小越小,其感受野越大,c3、c4、c5特征图的感受野由小到大,用于检测不同大小的物体。

s3.3.2基于注意力机制的特征金字塔网络。

由于融合不同层级的特征图可以提供更丰富的特征,以提升检测效果。在yolov3中使用fpn网络架构进行特征融合,本发明对其fpn结构进行改进,增加了通道及空间注意力模块,并将rfb模块融入检测分支之前。

输入的训练图片大小为416*416*3,经过darknet53特征提取网络后,c3、c4、c5分支具体大小分别为n×52×52×256、n×26×26×512、n×13×13×1024。经过附图4所示改进fpn网络,c5通过如图ca-sam、rfb等操作后操作,得到prediction3,其大小为13*13*[3*(4+1+c)];c4通过上图蓝色框所示upsample、concat、ca-sam、rfb等操作后,其大小为26*26*[3*(4+1+c)];同理,c3通过上图蓝色框所示upsample、concat、ca-sam、rfb等操作后,其大小为52*52*[3*(4+1+c)],由于本实施例中只需检测车辆与行人,故其中c=2。

对于其中的ca-sam采用的是改进后的cbam模块,其分为通道注意力与空间注意力两个子模块,分别表示为ca子模块和sa子模块。

图4-b为ca子模块,对输入ca模块的特征图进行通道注意力。该模块为对senet中的squeeze-excitaion模块进行改进。其主要区别是senet中主要采用的是全局均值化操作,由于目标分类网络所输入的图像相对于整个图像来说其是占了较大比重;而目标检测任务相对来说其目标相对图像较小,若直接采用均值操作神经网络可能无法学到较好的特征,而全局最大池化是特征图上的极值,能更好的反应某个特征通道对物体的响应,因此考虑将全局池化与平均池化进行通道上的拼接,让网络自动学习特征;并且可以并行加入全局平均池化与全局最大池化。本实施例中,具体过程为对大小为h*w*c(对应宽*高*通道数)的特征图fc分别进行maxpool、avgpool以及对两者进行通道concat,输出1*1*c,1*1*c,1*1*2c,然后输入至共享参数得mlp网络,该mlp网络为三层全连接网络,分别为fc1、fc2、fc3,其输出得通道数目分别为c、c/16、c,激活函数分别为relu、relu、sigmoid函数,最终将三者进行相加,形成通道注意力mc特征图,然后将输入特征图与通道注意力mc特征图进行点乘,最终输出的特征图为

fc′=mc*fc。

空间注意力改进后的子模块为sa,见图4-c,对输入sa模块所得特征图进行空间注意力。该模块采用类似inception网络的思想,对进行全局最大化与全局平均化的特征图进行不同的卷积操作,而不是简单的使用单个卷积操作,以提升卷积神经网络学习邻域语义特征的能力。具体的操作为分别对fc′进行maxpool以及avgpool,然后2个大小h×w×1特征图,并对其进行concat操作,得到h×w×2的特征图,对该特征图进行1×1、3×3、5×5的卷积并进行concat操作,最后再进行1×1的卷积以增加非线性,然后得到空间注意力特征图ms。同理,将其与fc′进行点乘,最终输出特征图为fs=ms×fc′。

由于在不同的环境下,港口环境下可能存在不同的噪声,为了让卷积神经网络减少误检,提出在检测分支前加入前景与背景显著图,对检测分支网络之前的特征进行进一步的增强。具体来说,在fpn的检测头之前加入前景背景显著图辅助分支,将其对ca-sam输出的特征fs进行进一步增强。通过采用前景背景分割模块(fbm模块),见图4-d,可利用分割图信息用来增强前景特征,削弱背景特征,fdm对fs输入不同膨胀率的膨胀卷积,将特征图w*h*2通过softmax函数后,然后取出前景特征图w*h*1,然后将其维度扩展到与fs相同,再将其与特征图fs进行点乘,ds=fs*fas[:,:,:,1]。该分支在下文的损失函数中需要计算损失,即采用二值交叉熵损失函数计算的0.1*lseg就是该损失,为前景背景分割损失。

为了在检测分支具有更大感受野,将rfb模块嵌入到yolov3的最终检测分支中,以获取更大的感受野,见图4-e。rfb模块如图4-d所示:其主要利用不同普通卷积以及不同膨胀卷积进行扩大感受野,分别进行1×1普通卷积和3*3大小且膨胀率为1的膨胀卷积、3×3普通卷积和3×3大小且膨胀率为3的膨胀卷积、5×5的普通卷积和3×3大小且膨胀率为5的膨胀卷积,将以上三组卷积的特征图进行concat操作并进行1×1卷积降维得到需要的prediction特征图。

对于yolov3中每个预测图predictionm(m=1,2,3),其最后的特征的channel维度变化为[3*(4+1+c)],c=2,(4+1+c)所对应参数为{tx,ty,tw,th,pobj,ci},其中,(tx,ty)相对于图像网格坐标的偏移,(tw,th)为相对先验框(prioranchor)缩放比例系数;pobj代表当前瞄框所对应的anchor是否是背景的概率,即anchor就是当前物体中心点加上所预测的宽与高得到的瞄框;ci,i=0,1表示预测值属于某种物体的概率,i=0表示为汽车,i=1为行人。

s3.3.3预测值编码与解码。

测试时,需要对特征图进行解码,其中,bx表示预测的物体中心点x坐标,by表示预测的物体中心点y坐标,bh表示预测的物体的宽,bw表示预测物体的高,对预测值解密如下所示:

其中,δ(tx)表示是边界框相对所划分网格cx的横坐标偏移,δ(ty)表示的是相对所划分网格cy的纵坐标偏移,pw表示的相对先验框(prioranchor)的宽,ph表示的是相对先验框(prioranchor)的高;tw表示预测宽相对先验框(prioranchor)的宽的缩放系数,th表示预测高相对先验框(prioranchor)的高的缩放系数。对(bx,by,bw,bh)乘以每个特征图所对应的下采样倍数,即可得到预测框相对于原图的信息。

训练时,只需将标签使用上述式子进行变换,即可求出tx,ty,tw,th。即训练时,包含检测目标的目标框标签使用上述式子进行变换可以得到tx,ty,tw,th,进而将实际结果{tx,ty,tw,th,pobj,ci}与预测框的{tx,ty,tw,th,pobj,ci}进行比对,采用下文的损失函数进行模型训练。

s3.3.4训练并保存模型。

使用步骤s3.2中训练参数,将预处理后的图片输入yolov3目标检测模型进行训练,其损失函数定义如下式:

loss=lossx,y,w,h+lossobj+noobj+losscls+0.1×lseg(12)

其中坐标损失lossx,y,w,h式子如下:

式中g代表将原图进行fpn操作后的特征图的大小,n表示检测目标的类别数目,表示的是第i个位置是否存在第j类检测目标,存在为1,不存在为0;d为包含predbox与gtbox的最小外接矩形;predbox为预测框,gtbox为真实框;predbox矩形框与gtbox矩形框的iou表示为:

其中物体置信度损失lossobj+noobj式子如下:

式中,表示预测出的第i个位置是否存在第j类目标的概率值(该概率为前景与背景目标值);表示第i个位置是否存在第j类检测目标,存在为1,不存在为0;表示第i个位置存在检测物体时表示为1,否则为0;表示第i个位置不存在检测物体时为1,否则为0。

类别损失losscls式子如下:

其中,表示的是预测出的第i个位置第j类物体的概率值;pij表示的是第i个位置是否存在第j类检测目标,存在为1,不存在为0。

lseg为辅助分支的损失,采用二值交叉熵计算损失。

通过使用pytorch框架,搭建上述yolov3目标检测模型即可得到相港口环境下行人与车辆目标检测模型,训练的参数步骤s3.2设置,并使用上述损失函数进行模型参数优化,最终将训练好的模型保存到硬盘以供后续使用。

所述步骤s4的具体方法为:

步骤s4.1对预测结果进行非极大值抑制(non-maximumsuppression,nms)。

nms算法目的是为了去掉冗余的检测框,其根据预测物体置信度进行排序,当预测框与当前所保留的框之间的iou超过一定程度的时候,置信度低的框会被舍弃。

具体的流程如下:

(1)根据置信度,对所有预测结果进行置信度降序排序,放入列表list_a中

(2)从list_a中取出置信度最高的检测结果box_a放入list_b中,将box_a从list_a删除,计算box_a与list_a中剩下的所有预测框的ioui,i表示list_a中第i个预测框。

(3)保留ioui<δ的预测框,其中δ=0.4。重复第(2)步,当list_a为空,退出循环,nms算法结束。

步骤s4.2设置先验区域及相机id,对nms后的预测结果list_b使用rbi算法进行结果筛选。

对于步骤s4.1中所获取的list_b的中的框,需要与所设置的先验区域进行计算,若满足rbi值大于thresh,且相机id满足一定条件,则将框放入对应的检测结果。定义rbi为下式:

rbi=iou(area,new_list)>thresh(16)

其中area为priorarea或toparea,priorarea表示1-4号轮胎吊腿部摄相机所设置的先验区域,toparea表示为5号轮胎吊摄像机所设置的先验区域,阈值thresh可以根据场景进行设置为0-1中某个值。

上述的相机id与检测物体关系为:根据摄像头的不同camerai(i=1,2,3,4,5),分别检测不同的物体。对于轮胎吊腿部1-4号摄像机设置为检测先验区域的行人与车辆,对于5号轮胎吊5号摄像机设置为检测行人。

应用实例1:

本实例是针对轮胎吊顶部摄像机(5号相机)所拍摄图像,整体实施流程图如图5所示,基于yolov3目标检测模型的港口环境下先验区域车辆与行人检测方法整体步骤如下:

步骤s1:对不同轮胎吊的工作区域进行数据采集,并制作车辆与行人数据集。

步骤s1.1:采集视频数据并保存。

对不同位置、不同天气、不同时间的轮胎吊所处的位置进行摄像机监控,将所拍摄的视频保存为mkv格式或者mp4格式。

步骤s1.2将视频数据拆分成图片序列,并对含有车辆或行人的图片进行标注。

采用ffmpeg软件根据不同的视频格式分别进行处理,以得到图片序列并将图片序列保存到硬盘中。使用labelimg进行标注,筛选出具有车辆或行人的图片(每张图片中至少含有一种物体),保存格式为voc中的xml格式。xml格式包含的信息有:物体的类(如车辆或行人),物体相对图片的位置信息,box的信息格式表示为{xmin,ymin,xmax,ymax}。

步骤s2:将数据集划分为训练集与测试集并进行k-means聚类,获取9个anchor。

步骤s2.1划分训练集与测试集。

划分训练集与测试集的方法如下:按照9:1的比例,划分训练集与测试集。将前90%的图片复制附图2中image目录得训练目录,后10%的图片附图2image目录的val目录。同理,将标注好的标注xml文件以同样的方式,按照训练集与测试集分别移动到annotaions中的train与val目录中。在训练时,程序需要使用得格式需要进行转换,提前将训练集及测试集中的xml文件转换为yolo格式的标注文件。具体为通过解析xml文件,保存为对应的txt格式。txt文件每行的格式为{id,x,y,w,h},其中id表示类别,x,y,w,h为相对原图的宽和高归一化到0-1的浮点数。训练集及测试集所对应的txt文件分别保存至附图2所示labels目录中的train及val目录。

步骤s2.2使用k-means算法进行anchor聚类。

步骤s3:将训练集图片进程预处理后,输入yolov3目标检测模型进行训练,得到车辆与行人检测模型,将最终模型保存至硬盘。

s3.1图片的预处理。

训练时图像的预处理主要是为了增强对环境的检测鲁棒性效果。其主要包括图像像素内容的变换,以及空间几何变换以及最后的图像及标签归一化。

图像像素内容的具体变换包括图像的整体亮度、对比度、色度、饱和度以及图像通道进行改变。以概率p对图像进行整体的亮度以及对比度的改变,见式(3)与式(4);同理,将rgb空间图像转换到hsv图像空间,以概率p对图像整体的色度进行改变,见式(5);同理,以概率p对图像的整体的饱和度进行改变,见式(6);同理,以概率p对图像进行通道的改变,其通道排列方式可以为rgb、rbg、brg、bgr、grb、gbr六种中的一种。

图像的空间几何变换主要包括水平镜像和crop图像操作。以概率p为阈值随机进行对图像进行水平镜像。同理,以概率p进行图像的crop操作。

为了以统一的格式进行输入进入yolov3目标进程模型进行训练,需要转换为统一的格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。

步骤s3.2:设置训练参数。

训练参数为:epoch:100;batch_size:4;图片大小:416*416*3;使用的优化算法为adam算法;初始学习率为0.001:

步骤s3.3:输入yolov3目标检测模型进行训练,并保存模型。

进行以上图像预处理步骤以后,将预处理并进行归一化后的图片输入yolov3目标检测模型进行训练。

其中特征提取部分采用如图3所示的darknet53的深度卷积神经网络,其产生c3、c4、c5三个特征图,其特征的通道维度分别为256,512,1024。特征图c3、c4、c5具有不同的感受野,c3、c4、c5特征图的感受野由小到大,故可以用于检测不同大小的物体。在yolov3中,c3、c4、c5分别用于检测小、中、大的物体。

对于其中的ca-sam采用的是改进后的cbam模块,其分为通道注意力与空间注意力两个子模块,如图4-b的ca子模块和图4-c的sa子模块。

为了在检测分支具有更大感受野,将rfb模块嵌入到yolov3的最终检测分支中,以获取更大的感受野。rfb模块如图4-d所示最后得到需要的prediction特征图。

当得到以上三个预测特征图predictioni,i=1,2,3后,在训练与测试时需要对特征图进行编码与解码。在前向推理时,需要对特征值进行编码,如式(11)所示,得出物体边界框下采样所对应的{bx,by,bw,bh},然后乘以当前预测特征图下采样的倍数即可得到相对原图的坐标与长宽信息。训练时,对式(11)进行变换,即可求出训练时所需要的真实标签对应的值所对应原图的格子偏移及缩放系数tx,ty,tw,th。

当进行训练时,采用的损失函数如式(12)所示,使用上述所述损失函数及s3.2所述训练参数进行训练,将训练好的模型保存到硬盘以供后续使用。

步骤s4:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

使用labelimg等工具进行框选,获取先验区区域坐标,记下先验区域坐标xi,yj,坐标所构成的区域为矩形或者其他形状均可。在本实例中,选用的是矩形,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250),设定相机id=5,相机id=5的相机仅检测先验框内的行人。

进行以上步骤后,即可将图6-a(大小为640*360)所示原图输入步骤s3所保存的模型中。

测试时,首先运行程序,在gpu上加载模型。然后预处理图像,调整为合适的输入格式:利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。将预处理为统一输入格式的图像,输入正在运行的模型,可获得如图4所示的预测结果prediction1、prediction2、prediction3,即3个预测结果,每个prediction中含有的预测框的数量不一定,其取决于输出的特征图的大小。对预测特征图的编码与解码,见式(11),然后对预测结果使用nms算法以及rbi算法进行筛选。

nms算法的目的是为了去掉冗余的检测框,具体的流程如下:

(1)根据置信度,对所有预测结果进行置信度降序排序,放入列表list_a中

(2)从list_a中取出置信度最高的检测结果box_a放入list_b中,将box_a从list_a删除,计算box_a与list_a中剩下的所有预测框的ioui,i表示list_a中第i个预测框。

(3)保留ioui<δ的预测框,其中δ=0.4。重复第(2)步,当list_a为空,退出循环,nms算法结束。

rbi算法采用利用式(16)算法筛选结果list_b中的检测框,当上述roirect与list_b的iou值大于thresh时,并根据相机id=5筛选出类别为人的预测框。满足这两个条件时,保留该预测框至result中,否则抛弃该预测框。

如图由于该行人位于蓝色的先验框之外,因此不进行框选。最终检测的结果图如图6-b所示。

应用实例2:

对轮胎吊顶部摄像机所拍摄图片7-a(大小为640*360)进行行人检测。由于在应用实例1中已阐述训练模型的过程,故此实施例中只包含输入模型预测结果相应步骤。

步骤1:预处理图像,调整为合适的输入格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数,标注矩形框为待检测区域,即限定区域。

步骤2:将预处理为统一输入格式的图像,输入正在运行的车辆与行人检测模型。使用如图(4)所示darknet53特征提取网络,并经过附图4所示fpn特征金字塔进行特征融合后,可获得如图4所示的预测结果prediction1、prediction2、prediction3,对预测特征图的编码与解码见式(11),然后对编码后的预测结果使用nms算法以及rbi算法进行筛选。步骤3:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

程序中设置相机id为5号,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250))。

使用nms算法的去掉冗余的检测框,具体的流程如下:

(4)根据置信度,对所有预测结果进行置信度降序排序,放入列表list_a中

(5)从list_a中取出置信度最高的检测结果box_a放入list_b中,将box_a从list_a删除,计算box_a与list_a中剩下的所有预测框的ioui,i表示list_a中第i个预测框。

(6)保留ioui<δ的预测框,其中δ=0.4。重复第(2)步,当list_a为空,退出循环,nms算法结束。

设置workrect为上述值,设定相机id=5。rbi算法采用利用式(13)算法筛选结果list_b中的检测框,当上述roirect与list_b的iou值大于thresh时,并根据相机id=5筛选出类别为人的预测框。满足这两个条件时,保留该预测框至result中,否则抛弃该预测框。

由于该行人位于蓝色的先验框之内,程序使用框图进行标记所检测行人,最终检测的结果图如图7-b所示。

应用实例3:

对轮胎吊顶部摄像机所拍摄图片8-a(大小为640*360)进行行人检测。由于在应用实例1中已阐述训练模型的过程,故此实施例中只包含输入模型预测结果相应步骤。

步骤1:预处理图像,调整为合适的输入格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。

步骤2:将预处理为统一输入格式的图像,输入正在运行的车辆与行人检测模型。使用如图(4)所示darknet53特征提取网络,并经过附图4所示fpn特征金字塔进行特征融合后,可获得如图4所示的预测结果prediction1、prediction2、prediction3,对预测特征图的编码与解码见式(11),然后对编码后的预测结果使用nms算法以及rbi算法进行筛选。

步骤3:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

程序中设置相机id为5号,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250))。

使用nms算法的去掉冗余的检测框,具体的流程如下:

(7)根据置信度,对所有预测结果进行置信度降序排序,放入列表list_a中

(8)从list_a中取出置信度最高的检测结果box_a放入list_b中,将box_a从list_a删除,计算box_a与list_a中剩下的所有预测框的ioui,i表示list_a中第i个预测框。

(9)保留ioui<δ的预测框,其中δ=0.4。重复第(2)步,当list_a为空,退出循环,nms算法结束。

设置workrect为上述值,设定相机id=5。rbi算法采用利用式(16)算法筛选结果list_b中的检测框,当上述roirect与list_b的iou值大于thresh时,并根据相机id=5筛选出类别为人的预测框。满足这两个条件时,保留该预测框至result中,否则抛弃该预测框。

由于原图中仅有车辆,而5号摄像机相机不需要检测车辆,检测图中为框选先验框中的车辆,检测最终结果如图8-b所示。

应用实例4:

对轮胎吊腿部摄像机所拍摄图片9-a(大小为720*1280)进行车辆与行人检测。由于在应用实例1中已阐述训练模型的过程,故此实施例中只包含输入模型预测结果步骤。

步骤1:预处理图像,调整为合适的输入格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。

步骤2:将预处理为统一输入格式的图像,输入正在运行的车辆与行人检测模型。使用如图(4)所示darknet53特征提取网络,经过附图4所示fpn特征金字塔进行特征融合后,可获得如图4所示的预测结果predictionl、prediction2、prediction3,对预测特征图的编码与解码见式(11),然后对编码后的预测结果使用nms算法以及rbi算法进行筛选。

步骤3:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

程序中设置相机id为1号,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250))。

使用nms算法以及rbi算法筛选结果,由于原图中不含有车辆及行人,而1号摄像机相机需要检测车辆与行人,检测最终结果如图9-b所示。

应用实例5:

对轮胎吊腿部摄像机所拍摄图片10-a(大小为720*1280)进行车辆与行人检测。由于在应用实例1中已阐述训练模型的过程,故此实施例中只包含输入模型预测结果步骤。

步骤1:预处理图像,调整为合适的输入格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。

步骤2:将预处理为统一输入格式的图像,输入正在运行的车辆与行人检测模型。使用如图(4)所示darknet53特征提取网络,并经过附图4所示fpn特征金字塔进行特征融合后,可获得如图4所示的预测结果prediction1、prediction2、prediction3,对预测特征图的编码与解码见式(11),然后对编码后的预测结果使用nms算法以及rbi算法进行筛选。

步骤3:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

程序中设置相机id为1号,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250))。

使用nms算法以及rbi算法筛选结果,由于该车辆位于蓝色的先验框之内,程序使用框图进行标记所检测车辆,检测最终结果如图10-b所示。

应用实例6:

对轮胎吊腿部摄像机所拍摄图片11-a(大小为720*1280)进行车辆与行人检测。由于在应用实例1中已阐述训练模型的过程,故此实施例中只包含输入模型预测结果步骤。

步骤1:预处理图像,调整为合适的输入格式。利用opencv将bgr通道图像转换为rgb通道图像;将图像进行padding为方形,原图拷贝到对应区域,其他区域填充为0;将图片大小归一化到至416*416*3。采用式(9)将图片归一化到0-1之间的浮点数;并将标注矩形框boxes用式(10)归一化到0-1之间浮点数。

步骤2:将预处理为统一输入格式的图像,输入正在运行的车辆与行人检测模型。使用如图(4)所示darknet53特征提取网络,并经过附图4所示fpn特征金字塔进行特征融合后,可获得如图4所示的预测结果prediction1、prediction2、prediction3,对预测特征图的编码与解码见式(11),然后对编码后的预测结果使用nms算法以及rbi算法进行筛选。

步骤3:设定需要检测的先验区域及相机id,基于nms及rbi算法进行结果优化,并显示结果。

程序中设置相机id为1号,设定先验框为roirect(point(100,50),point(540,50),point(540,250),point(100,250))。

使用nms算法以及rbi算法筛选结果,由于该行人位于图11-a蓝色的先验框之内,程序使用红色框进行标记所检测行人,检测最终结果如图11-b所示:

基于上述6个应用实例应当可以充分理解本发明的构思。应当说明的是,上述实施例和应用实例中均利用设置的先验区域以及相机id进行了预测结果的优化,其他可行的实施例中对优化步骤是否执行不进行具体的限定。

在一些可行的方式中,本发明还提供一种基于上述方法的系统,其包括:

数据采集以及处理模块:用于采集港口环境下轮胎吊作业监控范围内的图像数据,利用图像数据中的含检测目标的图像构建样本集;

聚类模块:用于将样本集进行k-means聚类以获取k个anchor;

目标检测模型构建模块:用于对样本集中的图像进行预处理,并输入基于注意力机制的yolov3目标检测模型进行训练,得到港口环境下的目标检测模型;

其中,基于注意力机制的yolov3目标检测模型的架构请参照前文的方法内容的阐述,在此不再赘述。

所述目标检测模型的输入参数为预处理的图像,输出结果包括对应图像中是否存在目标;

目标检测模块:用于利用所述港口环境下目标检测模型进行目标检测。

其中,各个单元模块的具体实现过程请参照前述方法的对应过程。应当理解,上述单元模块的具体实现过程参照方法内容,本发明在此不进行具体的赘述,且上述功能模块单元的划分仅仅是一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。同时,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

在一些可行的方式中,目标检测模块是首先利用目标检测模型进行目标检测得到初始的预测结果,再利用nms算法以及rbi算法优化所述初始的预测结果。

在一些可行的方式中,本发明还提供一种终端,包括处理器和存储器,所述存储器存储了计算机程序,所述处理器调用所述计算机程序以执行:所述一种基于注意力机制的港口环境下目标检测方法的步骤。

在一些可行的方式中,本发明还提供一种可读存储介质,存储了计算机程序,所述计算机程序被处理器调用以执行所述一种基于注意力机制的港口环境下目标检测方法的步骤。

应当理解,在本发明实施例中,所称处理器可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。

所述可读存储介质为计算机可读存储介质,其可以是前述任一实施例所述的控制器的内部存储单元,例如控制器的硬盘或内存。所述可读存储介质也可以是所述控制器的外部存储设备,例如所述控制器上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述可读存储介质还可以既包括所述控制器的内部存储单元也包括外部存储设备。所述可读存储介质用于存储所述计算机程序以及所述控制器所需的其他程序和数据。所述可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要强调的是,本发明所述的实例是说明性的,而不是限定性的,因此本发明不限于具体实施方式中所述的实例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,不脱离本发明宗旨和范围的,不论是修改还是替换,同样属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1