掌桥专利:专业的专利平台
掌桥专利
首页

基于像素化磁钉信息的深度学习定位方法及装置

文献发布时间:2023-06-19 18:37:28


基于像素化磁钉信息的深度学习定位方法及装置

技术领域

本发明涉及磁钉定位领域,具体涉及一种基于像素化磁钉信息的深度学习定位方法及装置。

背景技术

磁条和磁钉是自主导航机器人(AGV)感知全局位置的重要信息源。基于磁条的自主导航机器人(AGV)已经广泛应用于智能仓储和智慧工厂。然而,这种导航方案需要大面积安装磁条成本较高,同时长时间运行后磁条容易产生磨损,丢失的磁条将导致AGV失灵失控。相较于磁条导航方案,磁钉导航方案是一种更低成本、低维护的方案,通过将永磁体埋于地下可以避免磨损和降低维护成本。磁钉导航具有定位精度高、没有传感器视野范围和测量距离的限制、环境抗干扰、低成本低维护等优点。然而,传统的磁钉定位算法需要计算多元高次方程,运算效率较低。因此基于磁钉的自主导航机器人的推广受到了限制。快速和准确的获得高精度的定位位置和姿态是磁钉定位的挑战。

现有的专利中,在申请号为CN202110984805.4专利名称为“一种基于磁偶极子模型的磁性标记物定位方法及装置”的发明专利中,通过磁偶极子模型简化为一元四次方程,求解得到磁钉的二维位置,这种方式需要巨大的计算量,因此不适合实时磁钉导航。在申请号为CN202110943111.6专利名称为“一种基于磁钉的导引车导航方法及调度系统”[]的发明专利中通过加权融合多个磁传感器的位姿信息获取磁钉的位置坐标,这个方案磁钉定位精度较差。在申请号为CN201811060863.2明专利名称为“基于BP网络的AGV导航行程偏差修正方法”[授权公告号:CN109506650B]的发明专利中,使用RFID电子标签和磁钉获取AGV惯性导航行驶偏差修正,这个方案是用磁钉信息补偿惯性导航数据的缺少的数据,然而使用这个方案无法在单一磁钉传感器下获得磁钉的准确坐标。

现有的磁钉定位方法中,最常见的方法是LevenbergMarquardt (LM) 优化算法。然而,LM 算法在迭代和搜索开始时需要一个初始值。如果初始值与真实值相差甚远,LM算法的准确性和效率会受到很大影响。提供初始值的一种方案是部署具有全局收敛能力的智能优化算法,吕博文等人[B. Lv, Y. Qin, H. Dai, and S. Su, “Improvinglocalization success rate of three magnetic targets using individual memory-based WO-LM algorithm,” IEEE Sensors Journal, vol. 21, no. 19, pp. 21750-21758, Oct. 2021.] 提出了一种提出了一种基于鲸鱼优化算法(WOA)和LM算法的组合算法,解决LM算法的获取初始值难题。然而,由于复杂的成本函数,优化算法会产生计算成本。戴厚德等人研究了一种基于简化磁偶极子模型的分析方法[H. Dai, P. Guo, S. Su, S.Song, S. Zhao, and S. Cheng, “A simplified magnetic positioning approachbased on analytical method and data fusion for automated guided vehicles,”IEEE/ASME Transactions on Mechatronics, early access, Sep. 2021.],可以推导出单个磁钉的二维位置的计算表达式。这种解析方法降低了计算复杂度,但是无法计算磁体姿态方向。

发明内容

针对上述提到的难以快速和准确的获得高精度的定位位置和姿态等问题。本申请的实施例的目的在于提出了一种基于像素化磁钉信息的深度学习定位方法及装置,来解决以上背景技术部分提到的技术问题。

第一方面,本发明提供了一种基于像素化磁钉信息的深度学习定位方法,包括以下步骤:

S1,获取永磁体磁钉信息,永磁体磁钉信息包括磁传感器采集的三轴的磁场强度数据;

S2,将永磁体磁钉信息进行像素化转换,得到与三轴的磁场强度数据对应的三通道的像素数据;

S3,获取标定板上的永磁体磁钉信息,通过步骤S1-S2获取到标定板上的永磁体磁钉信息对应的像素数据,结合永磁铁在标定板上的位置和姿态构成训练数据,采用训练数据对深度学习神经网络进行训练,得到经训练的深度学习神经网络;

S4,获取待定位点的永磁体磁钉信息,通过步骤S1-S2获取到待定位点的永磁体磁钉信息对应的像素数据,将待定位点的永磁体磁钉信息对应的像素数据输入经训练的深度学习神经网络,得到待定位点的永磁体的位置和姿态。

作为优选,第

其中,永磁体的姿态矢量为H

永磁体的中心位置为(

作为优选,步骤S2具体包括:

通过N个磁传感器构成磁传感阵列,磁传感器阵列采集的三轴的磁场强度数据为:

其中,

三轴的磁场强度数据转换为3个

根据将3个

作为优选,深度学习神经网络包括卷积神经网络(CNN)、BP网络(BPNN)、长短期记忆人工神经网络(LSTM)、残差神经网络(ResNet)。

作为优选,深度学习神经网络包括输入层、隐藏层和输出层,将三通道的像素数据输入输入层,隐藏层中第

其中,

其中,

深度学习神经网络的输出结果

其中,[

作为优选,隐藏层为第1层网络

其中, [

第1层网络

其中,

第1层网络

其中,

第2层深度学习神经网络的输出结果

其中, [

深度学习神经网络的输出结果

其中,第

作为优选,深度学习神经网络训练过程中所使用的损失函数

其中,

第二方面,本发明提供了一种基于像素化磁钉信息的深度学习定位装置,包括:

数据获取模块,被配置为获取永磁体磁钉信息,永磁体磁钉信息包括磁传感器采集的三轴的磁场强度数据;

数据转换模块,被配置为将永磁体磁钉信息进行像素化转换,得到与三轴的磁场强度数据对应的三通道的像素数据;

训练模块,被配置为获取标定板上的永磁体磁钉信息,通过执行数据获取模块和数据转换模块获取到标定板上的永磁体磁钉信息对应的像素数据,结合永磁铁在标定板上的位置和姿态构成训练数据,采用训练数据对深度学习神经网络进行训练,得到经训练的深度学习神经网络;

定位模块,被配置为获取待定位点的永磁体磁钉信息,通过执行数据获取模块和数据转换模块到待定位点的永磁体磁钉信息对应的像素数据,将待定位点的永磁体磁钉信息对应的像素数据输入经训练的深度学习神经网络,得到待定位点的永磁体的位置和姿态。

第三方面,本发明提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。

第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。

相比于现有技术,本发明具有以下有益效果:

(1)本发明提出的基于像素化磁钉信息的深度学习定位方法通过将永磁铁磁钉信息的三轴的磁场强度数据转化为三通道的像素数据,使得磁钉时序信号以像素图像输入深度学习神经网络。

(2)本发明提出的基于像素化磁钉信息的深度学习定位方法基于磁传感器阵列采集的磁场强度数据可采用像素化转换为像素数据,进一步将像素数据输入深度学习神经网络中进行定位,得到待定位点的位置和位姿,降低了磁钉定位的计算成本,并提高了运算速率。

(3)本发明提出的基于像素化磁钉信息的深度学习定位方法通过将传统磁偶极子模型的最优化问题转化为深度学习的梯度回归问题,解决传统磁钉定位方法面临计算度复杂的难题,可有效提升磁钉信息定位的位置精度和姿态精度。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请的一个实施例可以应用于其中的示例性装置架构图;

图2为本申请的实施例的基于像素化磁钉信息的深度学习定位方法的流程示意图;

图3为本申请的实施例的基于像素化磁钉信息的深度学习定位方法的磁场强度数据与其像素化转换的像素图像对应的示意图;

图4为本申请的实施例的基于像素化磁钉信息的深度学习定位方法的深度学习神经网络的结构示意图;

图5为本申请的实施例的基于像素化磁钉信息的深度学习定位装置的示意图;

图6是适于用来实现本申请实施例的电子设备的计算机装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1示出了可以应用本申请实施例的基于像素化磁钉信息的深度学习定位方法或基于像素化磁钉信息的深度学习定位装置的示例性装置架构100。

如图1所示,装置架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种应用,例如数据处理类应用、文件处理类应用等。

终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上传的文件或数据进行处理的后台数据处理服务器。后台数据处理服务器可以对获取的文件或数据进行处理,生成处理结果。

需要说明的是,本申请实施例所提供的基于像素化磁钉信息的深度学习定位方法可以由服务器105执行,也可以由终端设备101、102、103执行,相应地,基于像素化磁钉信息的深度学习定位装置可以设置于服务器105中,也可以设置于终端设备101、102、103中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。在所处理的数据不需要从远程获取的情况下,上述装置架构可以不包括网络,而只需服务器或终端设备。

图2示出了本申请的实施例提供的一种基于像素化磁钉信息的深度学习定位方法,包括以下步骤:

S1,获取永磁体磁钉信息,永磁体磁钉信息包括磁传感器采集的三轴的磁场强度数据。

在具体的实施例中,第

其中,永磁体的姿态矢量为H

永磁体的中心位置为(

具体的,可采用由若干个磁传感器组成的磁传感器阵列采集永磁体磁钉信息,该永磁体为磁性标记物,包括但不限定于磁块、磁石等;以磁钉的形式作为定位标记。采集永磁体磁钉信息的具体步骤是通过三维磁传感器阵列获得各个磁传感器XYZ三个轴的磁场强度数据。

S2,将永磁体磁钉信息进行像素化转换,得到与三轴的磁场强度数据对应的三通道的像素数据。

在具体的实施例中,步骤S2具体包括:

三轴的磁场强度数据为:

其中,

三轴的磁场强度数据转换为3个

根据将3个

具体的,像素化磁传感器阵列测量的永磁体磁钉信息,将各个磁传感器三轴的磁场强度数据转化为三通道的像素数据。参考图3,将永磁体磁钉信息转换为三通道的像素数据,形成像素图像,该像素图像中每个像素点的颜色和像素值与磁传感器测量的磁场强度数据相对应,其中,黑色像素点的像素值为(0, 0, 0),白色像素点的像素值为(255, 255,255);磁场强度数据越大,对应像素图像的像素点的颜色越浅。图3表示3组

在其中一个实施例中,三轴的磁传感器的48个通道的磁场强度数据

其中,

S3,获取标定板上的永磁体磁钉信息,通过步骤S1-S2获取到标定板上的永磁体磁钉信息对应的像素数据,结合永磁铁在标定板上的位置和姿态构成训练数据,采用训练数据对深度学习神经网络进行训练,得到经训练的深度学习神经网络。

在具体的实施例中,深度学习神经网络包括卷积神经网络(CNN)、BP网络(BPNN)、长短期记忆人工神经网络(LSTM)、残差神经网络(ResNet)。

在具体的实施例中,深度学习神经网络包括输入层、隐藏层和输出层,将三通道的像素数据输入输入层,隐藏层中第

其中,

其中,

深度学习神经网络的输出结果

其中,[

在其中一个实施例中,参考图4,隐藏层为第1层网络

其中, [

第1层网络

其中,

第1层网络

其中,

深度学习神经网络的输出结果

其中, [

深度学习神经网络的输出结果

其中,第

在具体的实施例中,深度学习神经网络训练过程中所使用的损失函数

其中,

具体的,该深度学习神经网络的训练步骤为:

1、前向计算,将与三轴的磁场强度数据对应的三通道的像素数据输入到输入层中,根据每一层网络权重计算输出结果。

2、计算损失函数;计算每一次深度学习神经网络训练的损失函数,通过重新输入深度学习神经网络可以降低损失函数,从而得到精度更高的位置和姿态结果。

3、输出深度学习神经网络计算的位置和姿态结果。

具体的,将永磁体固定在标定板上,使其具有确定的位置和姿态,通过磁传感器阵列采集到的标定板上的已知位置和姿态的定位点的永磁体磁钉信息,并转换为对应的三通道的像素数据,将已知位置和姿态作为标签数据,与对应的三通道的像素数据结合成训练数据,将训练数据分为训练集和测试集,采用训练集对深度学习神经网络进行训练,并使用测试集检验经训练的深度学习神经网络的性能,确定性能较好的经训练的深度学习神经网络,将经训练的深度学习神经网络部署在实际场景中进行应用。

S4,获取待定位点的永磁体磁钉信息,通过步骤S1-S2获取到待定位点的永磁体磁钉信息对应的像素数据,将待定位点的永磁体磁钉信息对应的像素数据输入经训练的深度学习神经网络,得到待定位点的永磁体的位置和姿态。

具体的,在实际场景中,通过磁传感器阵列采集永磁铁磁钉信息,将永磁铁磁钉信息的三轴的磁场强度数据转换为三通道的像素数据,将该像素数据输入经训练的深度学习神经网络,输出得到待定位点的永磁体的位置和姿态,因此能够实现准确定位。

本申请的实施例提出的基于像素化磁钉信息的深度学习定位方法通过将永磁铁磁钉信息的磁场强度数据转化为RGB像素数据,使得磁钉时序信号以图像RGB像素信号输入深度学习神经网络。传统磁钉定位方法面临计算度复杂的难题,通过将传统磁偶极子模型的最优化问题转化为深度学习的梯度回归问题,基于磁传感器阵列采集的磁场强度数据可以采用三色图像处理的方法进行算法求解,降低了磁钉定位的计算成本,并提高了运算速率。相较于传统磁钉定位方法,本方法可以提升磁钉信息定位的位置精度和姿态精度。

进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种基于像素化磁钉信息的深度学习定位装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

本申请实施例提供了一种基于像素化磁钉信息的深度学习定位装置,其特征在于,包括:

数据获取模块1,被配置为获取永磁体磁钉信息,永磁体磁钉信息包括磁传感器采集的三轴的磁场强度数据;

数据转换模块2,被配置为将永磁体磁钉信息进行像素化转换,得到与三轴的磁场强度数据对应的三通道的像素数据;

训练模块3,被配置为获取标定板上的永磁体磁钉信息,通过执行数据获取模块和数据转换模块获取到标定板上的永磁体磁钉信息对应的像素数据,结合永磁铁在标定板上的位置和姿态构成训练数据,采用训练数据对深度学习神经网络进行训练,得到经训练的深度学习神经网络;

定位模块4,被配置为获取待定位点的永磁体磁钉信息,通过执行数据获取模块和数据转换模块到待定位点的永磁体磁钉信息对应的像素数据,将待定位点的永磁体磁钉信息对应的像素数据输入经训练的深度学习神经网络,得到待定位点的永磁体的位置和姿态。

下面参考图6,其示出了适于用来实现本申请实施例的电子设备(例如图1所示的服务器或终端设备)的计算机装置600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图6所示,计算机装置600包括中央处理单元(CPU)601和图形处理器(GPU)602,其可以根据存储在只读存储器(ROM)603中的程序或者从存储部分609加载到随机访问存储器(RAM)604中的程序而执行各种适当的动作和处理。在RAM 604中,还存储有装置600操作所需的各种程序和数据。CPU 601、GPU602、ROM 603以及RAM 604通过总线605彼此相连。输入/输出(I/O)接口606也连接至总线605。

以下部件连接至I/O接口606:包括键盘、鼠标等的输入部分607;包括诸如、液晶显示器(LCD)等以及扬声器等的输出部分608;包括硬盘等的存储部分609;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分610。通信部分610经由诸如因特网的网络执行通信处理。驱动器611也可以根据需要连接至I/O接口606。可拆卸介质612,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器611上,以便于从其上读出的计算机程序根据需要被安装入存储部分609。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分610从网络上被下载和安装,和/或从可拆卸介质612被安装。在该计算机程序被中央处理单元(CPU)601和图形处理器(GPU)602执行时,执行本申请的方法中限定的上述功能。

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线或半导体的装置、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行装置、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行装置、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,也可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,该模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取永磁体磁钉信息,永磁体磁钉信息包括磁传感器采集的三轴的磁场强度数据;将永磁体磁钉信息进行像素化转换,得到与三轴的磁场强度数据对应的三通道的像素数据;获取标定板上的永磁体磁钉信息,通过上述步骤获取到标定板上的永磁体磁钉信息对应的像素数据,结合永磁铁在标定板上的位置和姿态构成训练数据,采用训练数据对深度学习神经网络进行训练,得到经训练的深度学习神经网络;获取待定位点的永磁体磁钉信息,通过上述步骤获取到待定位点的永磁体磁钉信息对应的像素数据,将待定位点的永磁体磁钉信息对应的像素数据输入经训练的深度学习神经网络,得到待定位点的永磁体的位置和姿态。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

技术分类

06120115638192