技术领域
本发明涉及一种基于神经网络的双路回声目标定位方法、设备及存储介质,属于人工智能技术领域。
背景技术
近年来,随着科技的进步,回声定位技术获得了广泛的关注。目前在回声数据目标定位方面,现有技术采用多路(大于两路)回声数据处理,同时使用传统的信号处理技术,计算过程复杂,而且由于需要进行多路回声数据处理,增加了目标定位计算的时间,影响了目标定位的效率。
现在人工智能发展迅速,特别是深度学习、神经网络的应用促进了很多领域的发展,双路回声数据的目标定位这一问题如果也利用神经网络技术来解决无疑会促进回声定位技术的发展,大大提高目标定位的效率,减少技术的成本。
现在技术中采用神经网络进行回声定位的方法缺乏具体的网络结构,且采用的网络结构比较传统单一,在进行实际的双路回声数据目标定位时,存在训练困难和识别不准确的问题。
发明内容
针对现有技术的不足,本发明提供一种基于神经网络的双路回声目标定位方法;
本发明还提供了一种计算机设备和存储介质。
术语解释
1、超声波脉冲发射器:超声波脉冲发射器可以用来实现超声波的发射,遇到障碍物的时候超声波就会进行反射,本发明发射信号频率范围为5~20kHz。
2、双路超声波脉冲接收器:由两路组成的超声波脉冲接受器,分为左路和右路,能够同时采集由目标反射而来的超声波反射信号,双路接收器的使用能够更好的进行目标定位,本发明中接收器系统采样率大于50kHz,反射信号的频带宽度与发射信号相同。
3、神经网络:人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。
4、PyTorch:PyTorch是一个开源的Python机器学习库,基于Torch,底层由C++实现,应用于人工智能领域,如计算机视觉、自然语言处理,PyTorch是由Facebook的人工智能研究团队开发。
5、BatchNormalization:批归一化,简称BatchNorm或BN,是神经网络中一种特殊的层,数据经过该层后可以加快梯度下降的求解速度,它使得可以使用更大的学习率更稳定地进行梯度传播,增加了网络的泛化能力。
6、ReLU:线性整流函数(Rectified Linear Unit,ReLU),又称修正线性单元,是一种人工神经网络中常用的激活函数(activation function)。
7、学习率:在神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。
本发明的技术方案如下:
一种基于神经网络的双路回声目标定位方法,包括步骤如下:
(1)采集不同角度双路回声数据,双路回声数据是指利用双路超声波脉冲接收器获取的左路超声波反射信号和右路超声波反射信号;
(2)对步骤(1)采集的不同角度双路回声数据预处理后制作双路回声数据集,并分为训练集、验证集和测试集;
(3)利用PyTorch搭建神经网络模型,使用步骤(2)得到的训练集对该神经网络模型进行训练,使用步骤(2)得到的验证集进行验证,并保存训练好的神经网络模型;
(4)将测试集输入训练好的神经网络模型进行测试,检验训练好的神经网络模型的泛化能力和模型的准确率。测试集是没有训练过的数据,如果模型在测试集上方位角和俯仰角的识别准确率依然很高,那么证明该神经网络有着很好的泛化能力。
根据本发明优选的,步骤(1)中,通过超声波脉冲发射器来发射信号,利用双路超声波脉冲接收器来接收反射信号,从而采集不同角度双路回声数据。
根据本发明优选的,步骤(1)中,采集不同方位角和俯仰角的双路回声数据,其中方位角的取值范围是0°-180°,变化间隔为10°,俯仰角的变化范围是20°-70°,变化间隔为5°。
根据本发明优选的,步骤(2)中,对步骤(1)采集的不同角度双路回声数据预处理后制作双路回声数据集,是指:
将步骤(1)采集的双路回声数据制作成.csv文件,每个双路回声数据为一行;
对每个双路回声数据进行标注,每个双路回声数据的标签label是经过归一化每个双路回声数据后的方位角和俯仰角,标签label的方位角是
根据本发明优选的,步骤(2)中,按照7:2:1的比例将双路回声数据集划分为训练集、验证集和测试集。验证集和测试集的存在能够更好的查看训练效果和检验模型的泛化能力。
根据本发明优选的,所述神经网络模型包括卷积层、BatchNormalization层和ReLU激活函数、两层全连接层。
卷积层有助于提取双路回声数据中的特征;使用BatchNormalization层,因为数据经过归一化和标准化后可以加快梯度下降的求解速度,它使得可以使用更大的学习率更稳定地进行梯度传播,增加了网络的泛化能力;使用ReLU激活函数可以有效避免梯度的消失,便于更好的训练。
进一步优选的,卷积层的卷积核大小采用的是2×2,步长是2。使用步长为2的卷积能够减少相应的参数量。
使用步骤(2)得到的训练集对该神经网络模型进行训练,是指:导入深度学习所需要的包;定义相应的超参数,这里使用的学习率是0.0001;实例化相应的数据类;实例化网络;定义优化器,这里使用的是Adam优化器,能够使得计算更加高效;定义损失函数;确定训练的迭代次数,然后开始训练即可。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现基于神经网络的双路回声目标定位方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现基于神经网络的双路回声目标定位方法的步骤。
本发明的有益效果在于:
1、本发明利用双路回声数据进行目标定位,在单GPU上测试进行一次目标定位所需时间仅为0.02s,大大减少了目标定位的成本和时间,提高了目标定位的效率。
2、本发明实现了人工智能领域和实际双路回声定位相结合,实现技术的实际应用,有利于推动产研结合和发展。
3、本发明实现思路清晰,采用的神经网络结构简单,泛化能力强,回声定位效果显著,具有良好的应用价值,值得推广应用。
附图说明
图1为本发明基于神经网络的双路回声目标定位方法流程示意图;
图2为本发明神经网络模型的网络结构示意图;
图3为本发明神经网络模型训练过程中训练损失变化示意图;
图4为本发明神经网络模型训练过程中验证集正确率示意图。
具体实施方式
下面通过实施例并结合附图对本发明做进一步说明,但不限于此。
实施例1
一种基于神经网络的双路回声目标定位方法,如图1所示,包括步骤如下:
(1)采集不同角度双路回声数据,双路回声数据是指利用双路超声波脉冲接收器获取的左路超声波反射信号和右路超声波反射信号;
步骤(1)中,通过超声波脉冲发射器来发射信号,利用双路超声波脉冲接收器来接收反射信号,从而采集不同角度双路回声数据。采集不同方位角和俯仰角的双路回声数据,其中方位角的取值范围是0°-180°,变化间隔为10°,俯仰角的变化范围是20°-70°,变化间隔为5°。每个方位角和俯仰角需要采集100次数据,这样就会获得19×11×100=20900个双路回声数据。
(2)对步骤(1)采集的不同角度双路回声数据预处理后制作双路回声数据集,按照7:2:1的比例将双路回声数据集划分为训练集、验证集和测试集;验证集和测试集的存在能够更好的查看训练效果和检验模型的泛化能力。是指:
将步骤(1)采集的双路回声数据制作成.csv文件,该csv文件共有20900个数据,每个双路回声数据为一行;
对每个双路回声数据进行标注,每个双路回声数据的标签label是经过归一化每个双路回声数据后的方位角和俯仰角,标签label的方位角是
(3)利用PyTorch搭建神经网络模型,使用步骤(2)得到的训练集对该神经网络模型进行训练,使用步骤(2)得到的验证集进行验证,并保存训练好的神经网络模型;如图2所示,神经网络模型包括卷积层、BatchNormalization层和ReLU激活函数、两层全连接层。
卷积层有助于提取双路回声数据中的特征;使用BatchNormalization层,因为数据经过归一化和标准化后可以加快梯度下降的求解速度,它使得可以使用更大的学习率更稳定地进行梯度传播,增加了网络的泛化能力;使用ReLU激活函数可以有效避免梯度的消失,便于更好的训练。
卷积层的卷积核大小采用的是2×2,步长是2。使用步长为2的卷积能够减少相应的参数量。
使用步骤(2)得到的训练集对该神经网络模型进行训练,是指:导入深度学习所需要的包;定义相应的超参数,这里使用的学习率是0.0001;实例化相应的数据类;实例化网络;定义优化器,这里使用的是Adam优化器,能够使得计算更加高效;定义损失函数;确定训练的迭代次数,然后开始训练即可。
训练1000个epoch之后训练集上损失的变化情况如图3所示,其中,横轴代表epoch数,即训练的迭代次数,纵轴代表训练的损失值,从图3中可以看出,随着epoch不断增加,损失不断减小;验证集准确率变化情况如图4所示,其中,横轴代表epoch数,即训练的迭代次数,纵轴代表神经网络模型在验证集上的准确率,从图4中可以看出,随着epoch不断增加,准确率不断增加,最终可以达到94.26%的准确率;在测试集上达到90%以上的准确率,可以看出模型具有较好的泛化能力。在实际应用中可以根据实际需要增加相应的数据集从而进一步提高模型的泛化能力和相应的准确率。
(4)将测试集输入训练好的神经网络模型进行测试,检验训练好的神经网络模型的泛化能力和模型的准确率。测试集是没有训练过的数据,如果模型在测试集上方位角和俯仰角的识别准确率依然很高,那么证明该神经网络有着很好的泛化能力。
实施例2
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现实施例1所述的基于神经网络的双路回声目标定位方法的步骤。
实施例3
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现实施例1所述的基于神经网络的双路回声目标定位方法的步骤。
机译: 基于神经网络的信号处理设备,基于神经网络的信号处理方法和计算机可读存储介质
机译: 基于图像分割的目标定位方法,设备和存储介质
机译: 一种方法和装置,用于基于道路交通和拥挤部分确定火灾地区,并使用卷积神经网络进行消防设施的火灾