CN115909072A - 一种基于改进YOLOv4算法的弹着点水柱检测方法 - Google Patents
一种基于改进YOLOv4算法的弹着点水柱检测方法 Download PDFInfo
- Publication number
- CN115909072A CN115909072A CN202211504834.7A CN202211504834A CN115909072A CN 115909072 A CN115909072 A CN 115909072A CN 202211504834 A CN202211504834 A CN 202211504834A CN 115909072 A CN115909072 A CN 115909072A
- Authority
- CN
- China
- Prior art keywords
- water column
- algorithm
- detection
- improved
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/30—Assessment of water resources
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了用于一种基于改进YOLOv4算法的弹着点水柱检测方法,包括步骤一:通过霍夫曼线检测方法检测海天线,约束当前检测图像中的敏感区域;步骤二:利用基于密度的DBSCAN聚类算法+基于距离的K‑means聚类算法对水柱标记框进行聚类分析,获得更好的先验锚定框,输入YOLOv4网络中;步骤三:在路径聚合网络中加入混合注意力机制,以提高弱特征水柱目标的检测精度和定位精度,利用改进的YOLOv4PANet结构提取模糊水柱;本方法通过对YOLOv4进行改进,并利用改进的YOLOv4算法进行特征水柱的检测与定位,能够有效提高水柱的检测精度和定位精度,具有检测和定位精度高、检测效果鲁棒性好的特点。
Description
技术领域
本发明涉及水柱检测技术领域,具体涉及一种基于改进YOLOv4算法的弹着点水柱检测方法。
背景技术
长期以来,海军仍普遍采用人工方法探测海军火炮训练中弹着点与目标之间的偏移距离;存在准确性低、主观性和效率低下等问题;迫切建立一种新的高精度目标自动拾取系统,指导部队进行科学有效的训练;在目标自动选取系统中,水柱检测和定位的准确性将直接影响射击评价结果;
水柱检测属于移动目标检测,传统算法在移动目标检测中的应用已经得到了广泛的研究。在《计算机工程与应用》中,作者梳理了目标检测算法的发展和现状,并提出了研究前景;传统的算法包括尺度不变特征变换(SIFT)算法、PCA-SIFT算法、加速鲁棒特征(SURF)算法等;并指出PCA-SIFT算法和SURF算法分别简化了SIFT的匹配过程,因此速度相对较快,但基于特征点匹配的检测精度和定位精度也会下降;在《红外物理与技术》中,作者提出了一种基于新型级联分类器的目标检测方法,该方法由多尺度块-局部二值模式(MB-LBP)特征分类器、SIFT特征分类器和SURF特征分类器组成,精度较高;在“马琴,张兴忠,李海芳,邓红霞.基于谱残差和聚类法的运动目标检测研究[J].计算机工程与科学,2018,40(10):1867-1873.[7]”中,作者提出了一种基于光谱残差算法和K-means聚类算法的移动目标检测算法,该方法首先每两帧提取加速杆特征,登记图像;其次,利用谱残差算法从帧差结果中提取视觉显著特征,去除不准确匹配引起的噪声和伪运动目标;最后,经过形态学处理后,引入改进的K-means聚类算法对不连续轮廓进行聚类,形成完整的目标;
为了克服传统算法的局限性,人们开发出了基于深度学习的目标检测来移动目标检测;如在“方鲁平、何江、周国民。目标检测算法综述;《计算机工程与应用》,2018年,第54:11-18页”中,作者总结了基于深度学习的目标检测算法,包括更快的区域卷积网络(更快的R-CNN)算法、SSD算法、YOLO、YOLOv2、YOLOv3、YOLOv4、YOLOv5算法等,并指出YOLO系列和单镜头多盒检测器(SSD)算法都遵循R-CNN系列算法的方法对大数据集进行分类预训练,然后在小数据集上找到调整;在“李孟角,王浩,万志博,基于改进的YOLOv4的钢条表面缺陷检测,《计算机与电气工程》,2022,102:45-53”中,作者提出了一种基于改进YOLOv4算法的复杂行人检测模型,以解决行人姿态、尺度多样性和行人遮挡问题;该模型采用改进的K-means聚类算法对行人数据集的真实帧大小进行分析,然后利用路径聚合网络(PANet)进行多尺度特征融合,以提高检测效果;在“李谭,吕欣悦,莲晓峰,王葛,YOLOv4_Drone:基于改进的YOLOv4算法的无人机图像目标检测,《计算机与电气工程》,2021年,93:45:52”中,作者提出了一种基于改进的“只看一次”版本4(YOLOv4)算法的钢带表面缺陷检测方法,该方法将注意机制嵌入到主干网络结构中,将路径聚合网络修改为定制的接受域块结构,加强了网络模型的特征提取功能;在“Bochkovskiy,A;王C.Y.;Liao,H.Y.M.YOLOv4:目标检测的最佳速度和精度[J],arXiv,2020,204,109-124”中,作者利用空心卷积技术对特征图像进行重新采样,以提高特征提取和目标检测性能;此外,利用超轻量级子空间注意机制(ULSAM)为特征映射的每个子空间生成不同的注意特征映射,进行多尺度特征表示,最后,引入软非最大抑制(Soft-NMS),以减少由于遮挡造成的遗漏目标的发生;而上述方法虽在进行水柱检测时各有千秋,但仍存在水柱检测和定位精度低,定位偏差大的问题;
因此亟需设计一种新的水柱检测算法来进行水柱的及ENCE和定位,以解决上述现有技术存在的问题。
发明内容
针对上述存在的问题,本发明旨在提供一种基于改进YOLOv4算法的弹着点水柱检测方法,本方法通过对YOLOv4进行改进,并利用改进的YOLOv4算法进行特征水柱的检测与定位,能够有效提高水柱的检测精度和定位精度,具有检测和定位精度高、检测效果鲁棒性好的特点。
为了实现上述目的,本发明所采用的技术方案如下:
一种基于改进YOLOv4算法的弹着点水柱检测方法,包括
步骤一:利用霍夫曼线检测方法检测海天线,约束当前检测图像中水柱检测的敏感区域;
步骤二:利用基于密度的DBSCAN聚类算法+基于距离的K-means聚类算法对水柱标记框进行聚类分析,获得更好的先验锚定框,输入YOLOv4网络中;
步骤三:在路径聚合网络中加入混合注意力机制,对YOLOv4网络结构进行改进,并利用改进的YOLOv4 PANet结构提取模糊水柱。
优选的,步骤一所述的利用霍夫曼线检测方法检测海天线,约束当前检测图像中水柱检测的敏感区域的过程包括
步骤1.1.利用霍夫曼线检测方法进行海天线检测
(1)利用霍夫曼线检测方法进行通过点和线的对偶性检测完成霍夫曼空间中的曲线交点数检测,并构造一个“投票人”矩阵来近似霍夫空间;
(2)在表示投票者中图像有效点的线性位置的投票中加1;
(3)通过对票数排序来筛选票数最多的点,进而将该点转化为直角坐标系中的线,从而完成海天线检测;
步骤1.2将海天线上下1/3图像高度的区域设定为敏感区域,从而对当前图像中的水柱检测区域进行约束。
优选的,步骤1.2所述的对当前海天线检测图像中的敏感区域进行约束的过程包括
步骤1.21.首先将原始海天线检测图像降低到480*640;
步骤1.22.其次采用canny算法通过3*3的水平和竖直算子模板计算图像中各个像素的特征值,然后通过二值化将图像转换为二值图,显示出图像边缘像的纹理特征;
步骤1.23.最后利用Hoffman线检测算法检测地图中最长的线段;
步骤1.24.如果步骤1.23检测的地图中最长的线段中的目标像素数大于线段长度的2/3,视为海平面。
优选的,步骤1.23所述的利用Hoffman线检测算法检测地图中最长的线段的过程包括
(1)首先针对目标点P1,过该点做以α=0度(逆时针为正)作直线L1;
(2)统计坐标原点到直线L1的距离ρ;
(3)统计坐标原点到直线L1的垂线与x轴(逆时针为正)角度θ;
(4)循环执行步骤(1)-(3),针对点P1,以α为变量,步长为10度,取遍0-180,统计所有点的距离ρ和角度θ;
(5)循环执行步骤(4),取遍所有目标点Pi,统计所有点的距离ρ和角度θ;
(6)在霍夫曼空间中,将(ρ,θ)相同值个数最多的点,转换为直角坐标系就是待提取的直线。
优选的,步骤二所述的利用基于密度的DBSCAN聚类算法+基于距离的K-means聚类算法对水柱标记框进行聚类分析的过程包括
步骤2.1.设DBSCAN算法的邻域半径距离设置为0.1,最近邻的样本个数设置为25,利用DBSCAN算法对具有水柱标记框尺寸的聚类进行密度划分;
步骤2.2.用K-means聚类算法根据K值对DBSCAN中密度最高的簇进行划分;
步骤2.3.将目标标注框尺寸数据集作为初始数据集输入聚类算法,根据步骤2.1和步骤2.2得到一组先验锚定框。
优选的,步骤2.2所述的K值为5,所述的用K-means聚类算法根据K值对具有高密度的聚类进行划分过程包括
步骤2.21.在数据当中随机生成5个聚类中心,后计算数据当中每个样本到这5个聚类中心的距离,并将对应的样本分到距离最小的聚类中心所对应的簇当中;
步骤2.22.将所有样本归类之后,对于每一个5个簇重新计算每个簇的聚类中心,也就是每个簇中的所有样本的质心,重复上述操作,直到聚类中心不发生改变为止。
优选的,步骤三所述的在路径聚合网络中加入混合注意力机制,利用改进的YOLOv4 PANet结构提取模糊水柱的过程包括
步骤3.1.在YOLOv4特征融合网络末端的三个分支中各增加了一个混合注意力机制模块,对YOLOv4进行改进;
步骤3.2利用改进的YOLOv4PANet结构提取模糊水柱。
优选的,步骤3.1所述的改进后的YOLOv4算法网络结构包括Backbone网络、Neck网络和Head网络,
所述Backbone网络为CSPParknet53网络,CSPParknet53网络由5个CSPNet残差块组成,且CSPParknet53网络的激活函数为Mish激活函数;
所述Neck网络由SPP模块和PANet组成,其中所述SPP模块执行13×13、9×9、5×5和1×4不同规模最大池操作;所述PANet基于特征金字塔网络进行了改进;
所述Head网络的最终输出为13×13,26×26,52×5252的检测头,分别检测大、中、小目标。
优选的,步骤3.2所述的利用改进的YOLOv4PANet结构提取模糊水柱的过程包括
步骤3.21.设输入图像的大小为608*608*3,输入到第一个CBAM模块的输入特征图的大小为152*152*256;
步骤3.22.输入特征图经两个并行的MaxPool层和Avgpool层,将特征图从152*152*252*1*256改为1*1*256;
步骤3.23.特征图经过Share MLP模块,首先将通道数压缩为1*1*16,然后扩展到1*1*256;
步骤3.24.根据通过ReLU激活函数的特征图得到两个结果,并将这两个结果相加,通过sigmod激活函数的特征图得到通道注意机制的输出结果;
步骤3.25.将输出结果与初始输入特征图相乘,得到由通道注意力机制增强的特征图;
步骤3.26.将注意力机制增强的特征图通过最大池化和平均池化转换为152*152*1特征图,将两个特征图拼接,接着通过7*7卷积转换为1通道特征图,通过sigmod函数得到归一化的权重图,将权重图乘以通道注意力机制增强的特征图,则可得到尺寸为152*152*256的空间注意力机制特征图;
步骤3.27.利用空间注意力机制生成的特征图,YOLO Head分析位置损失、分类损失和置信度损失,完成弹着点水柱检测。
本发明的有益效果是:本发明公开了一种基于改进YOLOv4算法的弹着点水柱检测方法,与现有技术相比,本发明的改进之处在于:
本发明提出了一种基于改进YOLOv4算法的弹着点水柱检测方法,在使用时,首先,本方法通过霍夫曼线检测方法检测海天线,约束当前检测图像中的敏感区域,提高了水柱检测的检测精度;其次,利用DBSCAN+K-means聚类分析算法改进了YOLOv4的先验边界框的大小选择,使先验边界框更加典型;最后,在PANet中加入CBAM,提高了弱特征水柱目标的检测精度和定位精度;实验结果表明,上述算法能有效的提高弹着点水柱的检测精度和定位精度,具有检测和定位精度高、检测效果鲁棒性好的优点。
附图说明
图1为本发明基于改进YOLOv4算法的弹着点水柱检测方法的算法流程图。
图2为本发明YOLOV4算法的算法结构图。
图3为本发明霍夫曼线性检测框架图。
图4为本发明基于霍夫曼空间的海上天线检测图。
图5为本发明聚类算法示意图。
图6为本发明运行DBSCAN+K-means聚类算法的聚类结果图。
图7为本发明基于DBSCAN+K-means聚类算法生成的先验锚定图。
图8为本发明YOLOV4算法Neck模块的结构示意图。
图9为本发明小水柱检测结果比较图。
图10为本发明改进后的YOLOv4算法的消融实验效果图。
图11为本发明实施例2算法比较运行结果图。
图12为本发明利用目标检测算法定位水柱目标的像素偏差曲线图。
其中:在图3中,图(a)为本发明空间直角坐标系中四个散点示意图,图(b)为本发明空间直角坐标系转换为霍夫曼空间示意图;在图4中,图(a)、(b)、(c)为本发明不同倾斜程度的海天线图,图(d)、(e)、(f)为本发明霍夫曼直线检测结果图;
在图5中,图(a)为本发明K-means聚类结果图,图(b)为本发明DBSCAN聚类的结果图;
在图7中,图(a)为本发明水柱标注框图,图(b)为本发明基于K-means确定的先验盒图,可以看出,运行YOLOv4算法的检测框明显大于标注框,(c)为本发明基于DBSCAN+K-means算法确定的先验边界框图,可以看出运行YOLOv4算法的检测框与标注框基本一致;
在图9中,图(a)为本发明YOLOv4算法检测结果图,可以看出小水柱未检测到,图(b)为本发明改进YOLOv4算法检测结果图,可以看出检测到所有水柱;
在图10中,图(a)为本发明小型水柱检测效果图,图(b)为本发明模糊水柱检测效果图;
在图11中,图(a)为本发明清晰水柱运行结果图,图(b)为本发明模糊水柱运行结果图,图(c)为本发明小浪花运行结果图,图(d)为本发明大水柱运行结果图。
具体实施方式
为了使本领域的普通技术人员能更好的理解本发明的技术方案,下面结合附图和实施例对本发明的技术方案做进一步的描述。
实施例1:参照附图1-12所示的一种基于改进YOLOv4算法的弹着点水柱检测方法,包括
步骤一:通过霍夫曼线检测方法检测海天线,约束当前检测图像中水柱检测的敏感区域,从而提高水柱检测的检测精度
霍夫曼线检测过程需要结合区域增长理论、霍夫曼空间变换和统计学原理;区域增长算法的基本原理是将图像中具有相似属性的像素进行合并,以实现目标与背景之间的分割目标;由于构成同一对象的像素具有很高的相似性,因此对象和背景可以通过区域增长进行分割;
步骤1.1利用霍夫曼线检测方法进行海天线检测
霍夫曼线检测的基本原理是利用点和线的对偶性,设在笛卡尔坐标系中,直线可以用其在y轴上的斜率和截距来表示,直线可以用其与原点的垂直长度和霍夫曼空间中垂直轴与x轴之间的夹角θ来表示,即直线任一点在霍夫曼空间中的坐标为(ρ,θ)
ρ=xcosθ+ysinθ (1)
在本实施例中,xoy表示直角坐标系,(ρ,θ)表示霍夫曼空间坐标,θoρ表示霍夫曼空间做坐标系,(x0,y0)表示直角坐标系任一点坐标;
通过平面上一个点的直线表示为霍夫空间中的曲线,表示为
ρ=x0 cosθ+y0 sinθ (2)
因此,将线性目标存在的可能性可以转换为由公式(1)转换得到的曲线交点数;如图3所示,通过三个点的直线线2表示为霍夫曼空间中三条曲线的交点;霍夫曼直线检测思想简单的解释就是通过过直角坐标系中的任意点旋转直线(一定步长,旋转至180度),然后统计哪一条直线中的点最多,含有点最多的线可直接提取出来;霍夫曼直线检测的功能是在二值化图像中提取图中的直线,由于海天线具有直线特征,因此可以提取;
在实际计算过程中,需要对自变量进行离散化,并构造一个“投票人”矩阵来近似霍夫空间;然后,在表示投票者中图像有效点的线性位置的投票中加1;最后,可以通过对票数进行排序来筛选行位置,完成海天线的检测;
步骤1.2利用霍夫曼线检测方法对当前检测图像(海天线)中的敏感区域进行约束
步骤1.21.首先将原始检测图像降低到480*640;
步骤1.22.其次采用canny算法通过3*3的水平和竖直算子模板计算图像中各个像素的特征值,然后通过二值化将图像转换为二值图,显示出图像边缘像的纹理特征;
步骤1.23.最后利用Hoffman线检测算法检测地图中最长的线段;
(1)首先针对目标点P1,过该点做以α=0度(逆时针为正)作直线L1;
(2)统计坐标原点到直线L1的距离ρ;
(3)统计坐标原点到直线L1的垂线与x轴(逆时针为正)角度θ;
(4)循环执行步骤(1)-(3),针对点P1,以α为变量,步长为10度,取遍0-180,统计所有点的距离ρ和角度θ;
(5)循环执行步骤(4),取遍所有目标点Pi,统计所有点的距离ρ和角度θ;
(6)在霍夫曼空间中,将(ρ,θ)相同值个数最多的点,转换为直角坐标系就是待提取的直线;
步骤1.24.如果采用Hoffman线检测算法检测地图中最长的线段中的目标像素数大于线段长度的2/3,则视为海平面;考虑到海天线检测对蓝色敏感,以图像的蓝色通道作为输入,检测效果如图4所示;
从图4中可以看出,基于霍夫曼空间的海天线检测算法可以清晰地显示海天线的纹理,对大倾斜的海天线具有良好的检测能力;
步骤二:利用基于密度的DBSCAN聚类算法+基于距离的K-means聚类算法(K-means)对水柱标记框架进行聚类,获得更好的先验锚定框,输入YOLOv4网络中,提高水柱定位精度
在使用YOLOv4网络时,需要预先预设一个优先边界框来确定检测目标的长宽比,并在每个网格中生成指定数量的先验锚定框;
目前,YOLOv4算法使用K-means聚类算法来确定先验锚定框的大小;聚类中心的数量越大,与数据集的拟合效果越好;然而,当K值大于阈值时,聚类效果没有明显改善;K-means聚类算法的思想是从初始数据中随机选择K个样本作为初始聚类中心,然后计算每个样本到聚类中心的距离d,距离d通常根据二维盒的中心点计算;
在实际情况中,水柱具有生长和消散的过程,在生长初期和最终耗散阶段都停留较长时间,因此中小型水柱的数量密度较大;目标选择精度是水柱与目标之间的误差,这反映在水柱生长初始阶段的定位精度上;由于K-means聚类算法对欧氏距离进行聚类,而忽略了密度,因此应采用基于密度的聚类算法;目前常用的基于密度的聚类算法包括均值位移算法和DBSCAN算法;由于本实施例水柱的锚定框只需要将水柱大致分为生长过程(高密度)和耗散过程(低密度)两类,因此不需要定位密度最高的位置,平均位移算法不易通过设置带宽根据样本密度划分水柱;因此,本实施例选择了DBSCAN算法;
在使用DBSCAN算法进行聚类分析之前,需要确定两个参数:一个是最近邻区域的半径,表示以一个不动点为中心点的圆场的范围;一个是相邻区域中至少包含的点的数量;由于DBSCAN算法基于数据推断出簇的数量,因此它不需要预先确定簇的数量,而且它可以生成任何形状的簇;采用K-means聚类算法和DBSCAN算法对标签盒的大小进行了聚类,结果如图5所示;
在图5中,Kmeans算法的K值为4,DBSCAN算法的相邻区域的半径为0.1,样本数至少为25个;根据分类结果,K-means平均分于欧氏距离上,忽略了密度信息;DBSCAN按密度划分,但在密度较高的点调整参数进一步划分不容易;
为了保证水柱生长初期阶段的高定位精度,初期阶段的簇数应尽可能多;基于上述原因,本实施例提出了DBSCAN+K-means聚类算法来确定合适的先验边界框;
步骤2.1.首先,用DBSCAN算法根据聚类对具有水柱标记框尺寸的聚类进行密度划分
步骤2.11.设DBSCAN算法的邻域半径距离设置为0.1,最近邻的样本个数设置为25,从而对样本进行划分;DBSCAN算法原理:从样本中选择一点,给定半径epsilon和圆内的最小近邻点数min_points如果该点满足在其半径为epsilon的邻域圆内至少有min_points个近邻点,则将圆心转移到下一样本点;若一样本点不满足上述条件,则重新选择样本点;按照设定的半径epsilon和min_points进行迭代聚类;
步骤2.2.然后用K-means聚类算法根据K值对具有高密度的聚类进行划分,划分结果如图5所示;本实施例去K值为5对数据进行划分;K-means聚类算法原理:
步骤2.21.首先在数据当中随机生成5个聚类中心,后计算数据当中每个样本到这5个聚类中心的距离,并将对应的样本分到距离最小的聚类中心所对应的簇当中;
步骤2.22.将所有样本归类之后,对于每一个5个簇重新计算每个簇的聚类中心,也就是每个簇中的所有样本的质心,重复上述操作,直到聚类中心不发生改变为止;
步骤2.3.本实施例将目标标注框数据集中标记的目标标注框尺寸(目标标注框的长度和宽度)作为初始数据集输入聚类算法,根据步骤2.1和步骤2.2最后得到一组较好的先验锚定框如图6所示;
步骤三:在PANet中加入CBAM,以提高弱特征水柱目标的检测精度和定位精度,利用改进的YOLOv4 PANet结构提取模糊水柱
步骤3.1在路径聚合网络(PANet)中加入混合注意力机制(CBAM),对YOLOv4网络结构进行改进
本实施例在YOLOv4特征融合网络末端的三个分支中各增加了一个CBAM模块;针对集成CBAM模块的小水柱的特性,提高了水柱的重量,同时抑制非目标区域的重量,从而提高水柱的整体检测精度;PANet模块的改进情况如图7所示;
步骤3.2利用改进的YOLOv4PANet结构提取模糊水柱
步骤3.21.结合图2和图7,假设输入图像的大小为608*608*3,输入到第一个CBAM模块的输入特征图的大小为152*152*256;
步骤3.22.输入特征图经过两个并行的MaxPool层和Avgpool层,将特征图从152*152*252*1*256改为1*1*256;
步骤3.23.然后特征图经过Share MLP模块,首先将通道数压缩为1*1*16,然后扩展到1*1*256;
步骤3.24.根据通过ReLU激活函数的特征图得到两个结果,并将这两个结果相加,然后通过sigmod激活函数的特征图得到通道注意的输出结果;
步骤3.25.将输出结果与初始输入特征映射相乘,得到由通道吸引机制增强的特征映射;
步骤3.26.将注意机制增强的特征图通过最大池化和平均池化转换为152*152*1特征图,然后将两个特征图拼接,通过7*7卷积转换为1通道特征图,通过sigmod函数得到智慧注意的特征图,最后将输出结果乘以注意机制增强的特征图改为152*152*256;当时,特征图已经增强了水柱的信息;
步骤3.27.利用YOLO头分析位置损失、分类损失和置信度损失,可以加快收敛速度,提高精度;通过对图7的改进,小水柱的检测结果如图8所示;
优选的,本实施例所述的改进YOLOv4算法的网络结构主要由骨干网络、颈网络、头网络三个部分组成;该算法的网络结构如图1所示:
所述Backbone网络为CSPParknet53网络,它主要由5个CSPNet残差块组成,CSPNet残差的引入不仅减少了网络计算,而且增强了特征提取,在激活函数方面,CSPParknet53网络利用Mish激活函数进一步增强了深度网络信息的传播;
所述Neck网络由SPP(空间金字塔)模块和PANet的组成,其中SPP模块执行13×13、9×9、5×5和1×4不同规模最大池操作,有效增加了网络的接受域,提取了显著的上下文特征;PANet主要基于特征金字塔网络(FPN)进行了改进,在FPN的基础上添加自底向上路径,增强不同特征图之间的融合;
所述Head网络的最终输出为13×13,26×26,52×5252的检测头分别检测大、中、小目标。
最后,利用预先设定的先验框大小和相对偏移量,得到预测框的位置和大小。
实施例2:步骤四:为验证如实施例1所述的基于改进YOLOv4算法的弹着点水柱检测方法的精确性和可行性,设计本实施例进行验证
1.测试平台介绍
本实施例实验环境的CPU为i7-10875H,GPU为RTX2060,内存为16G;在win11操作系统中使用Python编程语言;深度学习框架是基于张量流2的,并使用Cuda和Cudnn来加速网络模型;
2.评价指标
在实验中,以精度(P)、查全率(R)和平均精度(AP)作为评价指标作为衡量模型质量的指标。以IOU阈值0.6作为检测阈值,即检测框与真实帧之间的重叠面积超过60%,作为阳性检测示例。计算公式如下:
其中,TP表示真实例子,即实际检测到的阳性样本水柱的数量也是阳性样本水柱的数量,FN表示假反例,即检测到为阴性样本但实际为阳性样本,FP表示假阳性样本,即检测到的水柱目标为阳性样本但实际为阴性样本;
检测偏差定义为当IOU大于0.6时,检测盒的中心点与尺寸盒的中心点之间的距离;具体定义如下:
δaccuracy(x1c,y1c)(x2c,y2c)式中,表示检测偏差,并分别表示检测盒和标记盒的中心坐标,当未检测到目标,或者偏差大于标注框的宽度时,将检测精度记录为标注框的宽度;
所有算法(更快的R-CNN、SSD、YOLOv4、YOLOv5和改进的YOLOV4)都在Python中进行了测试;
其中:各算法的实验参数选择如下:
(1)训练更快的R-CNN的参数设置为:输入图像大小为608*608,在骨干部分使用Resnet50;训练集、验证集和测试集的比例为6:2:2;训练600张图像,batch_size为4,epoch为500,训练更快的R-CNN花费约3.4G内存,训练时间约为8.6小时,最终损失函数值为0.3542;
(2)训练SSD的参数设置为:输入图像大小为608*608,主干部分采用vgg;训练集、验证集和测试集的比例为6:2:2;训练600张图像,batch_size为4,epoch为500,训练SSD花费约3.4G内存,训练时间约为7.8小时,最终损失函数值为0.5437;
(3)训练YOLOv5的参数设置为:输入图像大小为608*608,主干由CBL、瓶颈ekCSP/C3和SPP/SPPF等组成;训练集、验证集和测试集的比例为6:2:2;训练600张图像,批量大小为4,epoch为500,消耗约3.3G内存,训练时间约为8-9小时后,最终损失函数值为0.2663;
(4)训练YOLOv4和改进后的YOLOv4的参数设置为:输入图像大小为608*608,主干由暗网53+ResX组成,训练集、验证集和测试集的比例为6:2:2;训练了600张图像,批量大小为4,epoch为500;YOLOv4算法的训练花费约为3.5G内存,训练时间约为8.2小时,最终损失函数值为0.3124;改进后的YOLOv4训练花费约3.8G内存,训练时间约为9.1小时,最终损失函数值为0.2324;
3.实验结果
3.1本实施例设置了消融实验和水平比较试验,在消融实验中,将YOLOv4与以下改进进行了比较:
(1)DBSCAN+K-means,
(2)CBAM-BasedYOLOv4PANet结构改进;
结果如图10所示;
采用水平比较测试:将更快的R-CNN、SSD、YOLOv4、YOLOv5算法作为比较算法,用于检测水柱,共检测到200张图像,检测结果如图11所示,统计数据如图12和表1所示;
表1:目标检测算法操作数据表
从表1可以看出,YOLOv4、YOLOv5和改进的YOLOv4算法的检测速度满足实时要求(30以上);Faster R-CNN、SSD算法、YOLOv4、YOLOv5和改进的YOLOv4算法的mAP都在90%以上,但改进的YOLOv4算法的性能最好;此外,改进后的YOLOv4算法的定位精度是最好的;
从图12可以看出,本实施例中较快的R-CNN、SSD、YOLOv4、YOLOv5和改进后的YOLOv4算法具有较高的定位精度,总体上约为10像素,但改进后的YOLOv4的定位精度最好,当图像帧数为100-130帧时,由于图像模糊,所有算法都有较大的定位偏差。
5.结论
本发明实例1针对弹着点水柱检测的具体场景,提出了一种改进的YOLOv4水柱检测算法;首先,本方法通过霍夫曼线检测方法检测海天线,约束当前检测图像中的敏感区域,从而提高水柱检测的检测精度;其次,利用DBSCAN+K-means聚类分析算法改进了YOLOv4的先验边界框的大小选择,使先验边界框更加典型;最后,在PANet中加入CBAM,以提高弱特征水柱目标的检测精度和定位精度;与Faster R-CNN、SSD、YOLOv4、YOLOv5算法相比,该算法能够有效地提高水柱的检测精度和定位精度,为USV目标采集提供了一种有效的水柱检测和定位方法。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (9)
1.一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:包括
步骤一:利用霍夫曼线检测方法检测海天线,约束当前检测图像中水柱检测的敏感区域;
步骤二:利用基于密度的DBSCAN聚类算法+基于距离的K-means聚类算法对水柱标记框进行聚类分析,获得更好的先验锚定框,输入YOLOv4网络中;
步骤三:在路径聚合网络中加入混合注意力机制,对YOLOv4网络结构进行改进,并利用改进的YOLOv4 PANet结构提取模糊水柱。
2.根据权利要求1所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤一所述的利用霍夫曼线检测方法检测海天线,约束当前检测图像中水柱检测的敏感区域的过程包括
步骤1.1.利用霍夫曼线检测方法进行海天线检测
(1)利用霍夫曼线检测方法进行通过点和线的对偶性检测完成霍夫曼空间中的曲线交点数检测,并构造一个“投票人”矩阵来近似霍夫空间;
(2)在表示投票者中图像有效点的线性位置的投票中加1;
(3)通过对票数排序来筛选票数最多的点,进而将该点转化为直角坐标系中的线,从而完成海天线检测;
步骤1.2将海天线上下1/3图像高度的区域设定为敏感区域,从而对当前图像中的水柱检测区域进行约束。
3.根据权利要求2所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤1.2所述的对当前海天线检测图像中的敏感区域进行约束的过程包括
步骤1.21.首先将原始海天线检测图像降低到480*640;
步骤1.22.其次采用canny算法通过3*3的水平和竖直算子模板计算图像中各个像素的特征值,然后通过二值化将图像转换为二值图,显示出图像边缘像的纹理特征;
步骤1.23.最后利用Hoffman线检测算法检测地图中最长的线段;
步骤1.24.如果步骤1.23检测的地图中最长的线段中的目标像素数大于线段长度的2/3,视为海平面。
4.根据权利要求3所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤1.23所述的利用Hoffman线检测算法检测地图中最长的线段的过程包括
(1)首先针对目标点P1,过该点做以α=0度(逆时针为正)作直线L1;
(2)统计坐标原点到直线L1的距离ρ;
(3)统计坐标原点到直线L1的垂线与x轴(逆时针为正)角度θ;
(4)循环执行步骤(1)-(3),针对点P1,以α为变量,步长为10度,取遍0-180,统计所有点的距离ρ和角度θ;
(5)循环执行步骤(4),取遍所有目标点Pi,统计所有点的距离ρ和角度θ;
(6)在霍夫曼空间中,将(ρ,θ)相同值个数最多的点,转换为直角坐标系就是待提取的直线。
5.根据权利要求1所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤二所述的利用基于密度的DBSCAN聚类算法+基于距离的K-means聚类算法对水柱标记框进行聚类分析的过程包括
步骤2.1.设DBSCAN算法的邻域半径距离设置为0.1,最近邻的样本个数设置为25,利用DBSCAN算法对具有水柱标记框尺寸的聚类进行密度划分;
步骤2.2.用K-means聚类算法根据K值对DBSCAN中密度最高的簇进行划分;
步骤2.3.将目标标注框尺寸数据集作为初始数据集输入聚类算法,根据步骤2.1和步骤2.2得到一组先验锚定框。
6.根据权利要求5所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤2.2所述的K值为5,所述的用K-means聚类算法根据K值对具有高密度的聚类进行划分过程包括
步骤2.21.在数据当中随机生成5个聚类中心,后计算数据当中每个样本到这5个聚类中心的距离,并将对应的样本分到距离最小的聚类中心所对应的簇当中;
步骤2.22.将所有样本归类之后,对于每一个5个簇重新计算每个簇的聚类中心,也就是每个簇中的所有样本的质心,重复上述操作,直到聚类中心不发生改变为止。
7.根据权利要求1所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤三所述的在路径聚合网络中加入混合注意力机制,利用改进的YOLOv4 PANet结构提取模糊水柱的过程包括
步骤3.1.在YOLOv4特征融合网络末端的三个分支中各增加了一个混合注意力机制模块,对YOLOv4进行改进;
步骤3.2利用改进的YOLOv4 PANet结构提取模糊水柱。
8.根据权利要求7所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤3.1所述的改进后的YOLOv4算法网络结构包括Backbone网络、Neck网络和Head网络,
所述Backbone网络为CSPParknet53网络,CSPParknet53网络由5个CSPNet残差块组成,且CSPParknet53网络的激活函数为Mish激活函数;
所述Neck网络由SPP模块和PANet组成,其中所述SPP模块执行13×13、9×9、5×5和1×4不同规模最大池操作;所述PANet基于特征金字塔网络进行了改进;
所述Head网络的最终输出为13×13,26×26,52×5252的检测头,分别检测大、中、小目标。
9.根据权利要求7所述的一种基于改进YOLOv4算法的弹着点水柱检测方法,其特征在于:步骤3.2所述的利用改进的YOLOv4 PANet结构提取模糊水柱的过程包括
步骤3.21.设输入图像的大小为608*608*3,输入到第一个CBAM模块的输入特征图的大小为152*152*256;
步骤3.22.输入特征图经两个并行的MaxPool层和Avgpool层,将特征图从152*152*252*1*256改为1*1*256;
步骤3.23.特征图经过Share MLP模块,首先将通道数压缩为1*1*16,然后扩展到1*1*256;
步骤3.24.根据通过ReLU激活函数的特征图得到两个结果,并将这两个结果相加,通过sigmod激活函数的特征图得到通道注意机制的输出结果;
步骤3.25.将输出结果与初始输入特征图相乘,得到由通道注意力机制增强的特征图;
步骤3.26.将注意力机制增强的特征图通过最大池化和平均池化转换为152*152*1特征图,将两个特征图拼接,接着通过7*7卷积转换为1通道特征图,通过sigmod函数得到归一化的权重图,将权重图乘以通道注意力机制增强的特征图,则可得到尺寸为152*152*256的空间注意力机制特征图;
步骤3.27.利用空间注意力机制生成的特征图,YOLO Head分析位置损失、分类损失和置信度损失,完成弹着点水柱检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211504834.7A CN115909072A (zh) | 2022-11-29 | 2022-11-29 | 一种基于改进YOLOv4算法的弹着点水柱检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211504834.7A CN115909072A (zh) | 2022-11-29 | 2022-11-29 | 一种基于改进YOLOv4算法的弹着点水柱检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115909072A true CN115909072A (zh) | 2023-04-04 |
Family
ID=86482169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211504834.7A Pending CN115909072A (zh) | 2022-11-29 | 2022-11-29 | 一种基于改进YOLOv4算法的弹着点水柱检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115909072A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117787021A (zh) * | 2024-02-28 | 2024-03-29 | 中国人民解放军海军工程大学 | 激光远场能量密度估计方法 |
-
2022
- 2022-11-29 CN CN202211504834.7A patent/CN115909072A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117787021A (zh) * | 2024-02-28 | 2024-03-29 | 中国人民解放军海军工程大学 | 激光远场能量密度估计方法 |
CN117787021B (zh) * | 2024-02-28 | 2024-05-07 | 中国人民解放军海军工程大学 | 激光远场能量密度估计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109740460B (zh) | 基于深度残差密集网络的光学遥感图像舰船检测方法 | |
CN111091095B (zh) | 一种遥感图像中船只目标的检测方法 | |
CN113569667B (zh) | 基于轻量级神经网络模型的内河船舶目标识别方法及系统 | |
CN107992818B (zh) | 一种光学遥感图像海面船只目标的检测方法 | |
CN110443201B (zh) | 基于多源影像联合形状分析与多属性融合的目标识别方法 | |
CN110263712A (zh) | 一种基于区域候选的粗精行人检测方法 | |
CN110008900B (zh) | 一种由区域到目标的可见光遥感图像候选目标提取方法 | |
CN112818905B (zh) | 一种基于注意力和时空信息的有限像素车辆目标检测方法 | |
CN114067118B (zh) | 一种航空摄影测量数据的处理方法 | |
CN111915583A (zh) | 复杂场景中基于车载红外热像仪的车辆和行人检测方法 | |
CN113159215A (zh) | 一种基于Faster Rcnn的小目标检测识别方法 | |
Zheng et al. | Building recognition of UAV remote sensing images by deep learning | |
CN112417931A (zh) | 一种基于视觉显著性的水面物体检测和分类的方法 | |
Zhang et al. | Nearshore vessel detection based on Scene-mask R-CNN in remote sensing image | |
CN110008899B (zh) | 一种可见光遥感图像候选目标提取与分类方法 | |
CN115909072A (zh) | 一种基于改进YOLOv4算法的弹着点水柱检测方法 | |
CN114550134A (zh) | 基于深度学习的交通标志检测与识别方法 | |
Laban et al. | Convolutional neural network with dilated anchors for object detection in very high resolution satellite images | |
CN111597939B (zh) | 一种基于深度学习的高铁线路鸟窝缺陷检测方法 | |
CN109977892B (zh) | 基于局部显著性特征和cnn-svm的舰船检测方法 | |
CN111666953B (zh) | 一种基于语义分割的潮汐带测绘方法及设备 | |
CN106407989A (zh) | 基于快速自动密度聚类的可变尺度红外小目标的检测方法 | |
CN114005045A (zh) | 基于轻量级深度神经网络的旋转框遥感目标检测方法 | |
CN114842353B (zh) | 基于自适应目标方向的神经网络遥感影像目标检测方法 | |
CN115631422B (zh) | 一种基于注意力机制的浒苔识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |