本发明涉及目标检测算法,特别涉及一种基于pyolo动态自适应的小目标检测算法。
背景技术:
1、传统的目标检测算法中,常特征提取器与分类器结合的方式来抽取特征并区分目标类与其他类,这样的特征提取器结构造成了算法的泛化性较差,无法在广义任务上取得良好表现。在目前基于深度学习的yolo系列目标检测类算法的训练过程中,针对不同数据集的训练超参数选择基本是基于经验的人工选参,这种方法不但造成了模型的性能不稳定,而且训练速度也无法根据数据集特性得到控制。
技术实现思路
1、本发明提供了一种基于pyolo动态自适应的小目标检测算法,通过引入搜索优化算法到yolo结构中,提出独特的pyolo目标检测模型,实现对不同种类数据集以及目标大小的自适应训练,达到优化模型泛化性与检测性能的目的。
2、本发明提供了一种基于pyolo动态自适应的小目标检测算法,包括:
3、s1、获取图像数据,并进行数据预处理,以yolo模型的数据要求为标准将数据集划分为训练集和测试集;
4、s2、采用预设的优化搜索算法对所述训练集中的超参数进行优化处理,得到最优参数;其中,所述超参数包括图像的尺寸、批量大小;
5、s3、采用所述最优参数训练预设的pyolo目标检测模型,并对结果进行分析验证。
6、进一步地,步骤s2具体包括:
7、s21、初始化粒子的位置x和速度v;其中,位置表示为解空间中的坐标,速度表示为解空间中的速度向量;
8、s22、对于每个粒子,计算其在目标函数上的适应度值p和全局最优适应度g;其中,适应度值越高,表示该粒子在解空间中的位置越好;
9、s23、根据粒子的当前位置、速度和适应度值,以及全局最优位置和速度,更新粒子的速度和位置;
10、s24、比较每个粒子的适应度值,找到具有最高适应度值的粒子,将其作为新的全局最优位置;
11、s25、重复步骤s22-s24,直到达到预定的迭代次数或误差达到预定最小适应阈值;
12、s26、输出全局最优位置作为问题的最优解,得到所述最优参数。
13、进一步地,步骤s21中,初始化公式为:
14、xi=(xi1,xi2,...,xid),i=1,2,...,n
15、vi=(vi1,vi2,...,vid),i=1,2,...,n
16、其中,x为粒子当前位置,v为粒子当前速度,n为粒子个数,d为每个粒子的空间维度。
17、进一步地,步骤s22中,计算公式为:
18、pbest=(pi1,pi2,...,pip),i=1,2,...,n
19、gbest=(g1,g2,…,gd)
20、其中,pbest为粒子个体最佳适应度,gbest为粒子全局最佳适应度,n为粒子个数,d为每个粒子的空间维度。
21、进一步地,步骤s23中计算公式为:
22、v(t+1)=w·v(t)+c1·r1·[pbest(t)-x(t)]+c2·r2·[gbest(t)-x(t)]
23、x(t+1)=x(t)+v(t+1)
24、其中,v(t)为粒子在t时刻的速度,x(t)为粒子在t时刻的位置,w为速度惯性权重,c1、c2为加速度常数,r1、r2为在[0,1]区间内的随机数。
25、进一步地,步骤s3具体包括:
26、s31、获取训练图像数据,并进行数据预处理;
27、s32、从优化处理中获取所述pyolo目标检测模型的最佳参数;
28、s33、采用所述最佳参数和预处理的所述训练图像数据训练所述pyolo目标检测模型,并验证和分析结果。
29、本发明的有益效果为:
30、本发明通过使用优化寻参的方式,提升了传统目标检测算法的精度,并且在对于不同目标的自适应性上有极大提升,相对于传统的r-cnn结构在性能和速度上有明显优势。pyolo引入优化搜索的算法寻参,可以自动调整参数,不需要人工干预,这大大减轻了工程师的工作负担;可以通过全局搜索找到全局最优解,而不是陷入局部最优解;具有并行性和分布式计算能力,可以在多个处理器上同时进行计算,提高求解效率。用户无需自行进行多组参数组合和消融实验,这一系列传统操作将由自动参数寻优的方法完成,大大节省人力并且提高产品效果。
1.一种基于pyolo动态自适应的小目标检测算法,其特征在于,包括:
2.根据权利要求1所述的基于pyolo动态自适应的小目标检测算法,其特征在于,步骤s2具体包括:
3.根据权利要求2所述的基于pyolo动态自适应的小目标检测算法,其特征在于,步骤s21中,初始化公式为:
4.根据权利要求2所述的基于pyolo动态自适应的小目标检测算法,其特征在于,步骤s22中,计算公式为:
5.根据权利要求2所述的基于pyolo动态自适应的小目标检测算法,其特征在于,步骤s23中计算公式为:
6.根据权利要求1所述的基于pyolo动态自适应的小目标检测算法,其特征在于,步骤s3具体包括:
