信息处理装置、信息处理方法和程序与流程

文档序号:23232847发布日期:2020-12-08 15:22阅读:123来源:国知局
信息处理装置、信息处理方法和程序与流程

本公开涉及信息处理装置、信息处理方法和程序。



背景技术:

如今,诸如智能电话的移动终端结合了广泛使用的技术用于基于由内置惯性传感器等测量的信息来估计位置。例如,一种位置估计方法使用自主定位方法,例如行人航位推算(pdr:行人航位推算)。然而,通过自主定位方法,移动中涉及的误差累积在估计结果中,这降低了位置估计的准确性。因此,还提出了用于提高位置估计的准确性的技术,其中校正了具有累积误差的估计结果。

例如,以下专利文献1公开了一种技术,通过该技术,移动终端基于从外部装置接收的信息,来校正自身使用自主定位方法估计的移动终端的位置和朝向。具体地,移动终端基于由内置的加速度计和陀螺仪传感器测量的信息来估计移动终端的位置和朝向。然后,移动终端基于从作为外部装置的发送器接收的发送器的位置信息来校正估计的位置和朝向。

引用列表

专利文献

ptl1:日本未审查专利申请公开第2015-135249号。



技术实现要素:

本发明要解决的问题

然而,上述技术假设移动终端从外部装置接收用于校正估计位置和方向所需的信息。因此,在当从外部装置接收信息时接收环境差的情况下,移动终端有时可能无法接收到校正位置和方向所必需的信息,并且不能校正位置和方向。在这种情况下,在移动终端所估计的位置和方向上仍保留有累积的误差,并且位置和方向的估计准确性没有提高。

因此,本公开提出了新颖和改进的并且允许自主地提高位置估计准确性的信息处理装置、信息处理方法和程序。

问题的解决方案

根据本公开,提供了信息处理装置,包括:惯性导航计算单元,基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算与移动体的移动状态有关的状态值;观察值计算单元,基于与移动体的移动有关的移动特征量,来计算与移动体的移动状态有关的观察值,移动特征量是基于测量值来计算的;以及姿态信息计算单元,基于状态值和观察值来计算与移动体的姿态有关的姿态信息。

此外,根据本公开,提供了由处理器执行的信息处理方法,该信息处理方法包括:基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算与移动体的移动状态有关的状态值;基于与移动体的移动有关的移动特征量来计算作为正确值的观察值,移动特征量是基于测量值来计算的;以及基于状态值和观察值,计算与移动体的正确姿态有关的姿态信息。

此外,根据本公开,提供了程序,该程序使计算机用作:惯性导航计算单元,基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算指示移动体的移动状态的状态值;观察值计算单元,基于与移动体的移动有关的移动特征量来计算作为正确值的观察值,移动特征量是基于测量值来计算的;以及姿态信息计算单元,基于状态值和观察值,计算与移动体的正确姿态有关的姿态信息。

发明效果

如上所述,本公开允许自主提高位置估计准确性。

应当注意,上述效果并不一定是限制性的。除了上述效果之外,或者代替上述效果,可以施加本说明书中指示的任何效果或从本说明书中可以理解的其他效果。

附图说明

图1是示出一般惯性导航系统的概述的说明图。

图2是示出一般惯性导航系统中的误差的示例的说明图。

图3是示出一般行人航位推算方法的概述的说明图。

图4是示出本公开的实施例的概述的说明图。

图5是示出根据实施例的移动速度的校正的示例的说明图。

图6是示出根据实施例的移动终端的功能配置的示例的框图。

图7是示出根据实施例的卡尔曼滤波器的应用示例的说明图。

图8是示出根据实施例的当应用卡尔曼滤波器时移动终端的操作的示例的流程图。

图9是示出根据实施例的移动体的姿态的校正的示例的说明图。

图10是示出根据实施例的移动体的位置的校正的示例的说明图。

图11是示出根据实施例的约束的应用示例的说明图。

图12是示出根据实施例的当施加约束时移动终端的操作的示例的流程图。

图13是示出根据实施例的当施加约束时搜索最佳姿态误差的处理的示例的流程图。

图14是示出根据实施例的移动终端的硬件配置的示例的框图。

具体实施方式

下面参考附图详细描述本公开的优选实施例。注意,在本说明书和附图中,对具有实质上相同的功能结构的构成要素赋予相同的附图标记,并省略附图的重复说明。

将按以下顺序给出描述。

1.本公开的实施例

1.1.概述

1.2.功能配置示例

1.3.操作示例

1.4.测试示例

2.修改示例

3.硬件配置示例

4.结论

<<1.本公开的实施例>>

<1.1.概述>

下面,将参照图1至图5描述本公开的实施例的概述。注意,在下文中,将要估计其位置的对象也称为移动体。移动体的示例可以包括例如移动终端(诸如智能电话)、平板终端或安装有位置估计功能的可穿戴终端。另外,在人携带移动终端的情况下,移动体的概念包括移动终端和人两者。这同样适用于由除了人以外的动物、机器人等携带移动终端的情况,以及将具有位置估计功能的终端安装在汽车中的情况。注意,移动体的示例不限于以上给出的示例。

当前,诸如智能电话的一些移动终端均配备有基于由内置惯性测量单元(imu:惯性测量单元)等测量的信息来估计移动终端的位置的功能。一种位置估计方法涉及例如通过惯性导航系统(ins:惯性导航系统)估计移动体的位置,该方法通过对imu测量的值进行积分来计算移动体的姿态、移动速度和位置。另一种位置估计方法涉及通过行人航位推算(pdr:行人航位推算)估算移动体的位置,该方法基于imu测量的值和与移动体的移动有关的特征量,计算移动体的位置。

(1)惯性导航系统的位置估计

现在,将参照图1至图2描述一般惯性导航系统。图1是示出一般惯性导航系统的概述的说明图。图2是示出一般惯性导航系统中的误差的示例的说明图。

图1示出了通过惯性导航系统执行终端的位置估计的移动终端20的功能配置示例。假设移动终端20包括:惯性测量部220,测量移动终端20的惯性数据(测量值);以及惯性导航计算单元230,执行惯性导航。此外,假设惯性测量部220包括陀螺仪传感器222和加速度计224作为imu。移动终端20中的惯性导航计算单元230基于由惯性测量部220测量的移动终端20的惯性数据,执行由惯性导航系统估计移动终端20的位置的处理。

具体地,惯性测量部220将由陀螺仪传感器222测量的角速度和由加速度计224测量的加速度输入到惯性导航计算单元230。惯性导航计算单元230通过积分输入的角速度来计算作为表示移动终端20的姿态的角度的姿态角,并输出该姿态角。此外,惯性导航计算单元230基于所计算的姿态角,将输入的加速度的坐标系从终端坐标系转换成全局坐标系。在转换了加速度的坐标之后,惯性导航计算单元230通过对坐标转换后的加速度进行积分来计算速度,通过对速度进行积分来计算位置,并且输出位置。

如上所述,惯性导航系统能够通过对惯性数据进行积分来计算移动体的移动速度矢量。惯性导航系统还能够计算任何移动条件下移动体的速度和位置。例如,假设携带移动终端20的用户正在行走。此时,即使当用户在行走时转向并改变移动终端20的朝向时,移动终端20的惯性导航计算单元230仍然能够计算移动终端20的速度和位置。这就是为什么惯性导航是长期用于获取飞机、轮船、航天器等在移动时的速度和位置的方法的原因。惯性导航系统还用于在位置估计中要高度精确地校正误差的情况。

然而,在积分惯性数据包含误差的情况下,由于惯性导航系统通过积分计算移动体的速度和位置,因此这些误差通过积分被累积。此外,误差发散率增加。例如,假设由于在初始状态下估计的移动体的初始姿态中包含的误差,或由于陀螺仪传感器的偏差等,在围绕移动体的侧倾轴或俯仰轴作为旋转轴的旋转方向上出现姿态误差。此时,由于姿态误差(以下也称为重力抵消误差)而将重力的一部分计为动加速度,导致惯性数据产生误差,导致积分误差的发散率增大。

具体地,假设移动终端20的姿态没有误差,并且如图2所示移动终端20受到作为真实值的重力50。然而,在由于初始姿态误差或偏差的影响估计的姿态包含角度51的误差的情况下,估计移动终端20在包括误差的姿态中受到重力或作为估计值的重力52。作为真实值的重力50的大小和作为估计值的重力52的大小表示由各个重力产生的动加速度的大小。因此,测得的惯性数据不可避免地包含作为估计值的重力52和作为真实值的重力50之间的差值,即水平重力抵消误差53和垂直重力抵消误差54。

当测量的惯性数据包含误差时,由于如上所述惯性导航使用积分,因此这些误差被累积并且发散率增大。另一方面,行人航位推算不使用积分,因此移动体的估计位置不包含诸如惯性导航中的积分误差。

(2)行人航位推算法的位置估计

现在,将参照图3描述一般行人航位推算方法。图3是示出一般行人航位推算方法的概述的说明图。

图3示出了通过行人航位推算估计终端的位置的移动终端30和携带移动终端30的用户40。行人航位推算基于由imu测量的惯性数据和与用户40的移动有关的特征量,通过计算距已经开始定位的点的移动距离和方位角的变化量,进行估计用户40的当前位置的相对定位。例如,基于用户40的行走速度来计算距开始定位的点的移动距离,并且基于由陀螺仪传感器测量的角速度来计算方位角的变化量。通过将步幅频率乘以用户40的步幅长度来计算用户40的行走速度。注意,用户40的步幅频率表示每单位时间的步数。可以基于由加速度计测量的加速度来计算步幅频率。用户40的步幅长度可以是预设值,或者可以基于从全球导航卫星系统(gnss:全球导航卫星系统)接收的信息来计算。

应当注意,行人航位推算的前提条件是:在定位开始时,当移动终端30绕着作为旋转轴的偏航轴旋转时,移动终端30的朝向与用户40的移动方向一致,并且移动终端30的方位被设置为用户40的移动方向。例如,在携带移动终端30的用户40的位置定位开始于图3所示的位置1的情况下,将移动终端30在该位置1的朝向设置为用户40的移动方向。这里,沿着移动终端10的短边方向的轴是俯仰轴,沿移动终端10的长边方向并垂直于俯仰轴的轴是侧倾轴,以及垂直于俯仰轴和侧倾轴的是偏航轴。在此,偏航轴应设定为与施加于移动终端10的重力方向一致。注意,俯仰轴、侧倾轴和偏航轴不限于这些示例,并且可以根据需要进行设置。在此,移动终端30的朝向表示由用户40保持的移动终端30的显示屏的上部的方向,使得移动终端30的屏幕与地面水平,并且移动终端30的长边方向平行于用户40的移动方向。

因此,当在开始定位之后用户40的移动方向与移动终端30的朝向之间出现差异时,将在移动方向上产生要根据该差异进行估计的误差。例如,当用户40从图3所示的位置1移动到位置2时,用户40和移动终端30的朝向没有改变。因此,在用户40的估计移动方向上没有产生误差。另外,当用户40从图3所示的位置2移动到位置3时,用户40的原始朝向55被改变了方位角57的变化量变为朝向56。此时,用户40以与他/她自己的朝向的改变相同的量来改变移动终端30的朝向。因此,当用户40从位置2移动到位置3时,相对于移动终端30的原始朝向55的方位角58的变化量等于用户40的方位角57的变化量。因此,在位置3处,用户40和移动终端30之间在朝向上没有差异,从而在用户40的估计移动方向上没有产生误差。另一方面,在用户40的方位角57的变化量和移动终端30的方位角58的变化量之间产生差异的情况下,根据该差异,在用户40的估计移动方向上产生误差。

如上所述,当移动终端30旋转到与用户40的移动方向不同的方向时,行人航位推算在用户40的估计移动方向上产生误差。因此,行人航位推算难以应用于例如通过重新保持而在移动期间改变朝向的智能手机、以及当用户40移动手臂时会改变朝向的手表类型的可穿戴设备等。

另一方面,在移动终端30紧密地附接到用户40的几乎不改变朝向的部位(例如,身体躯干附近)的情况下,用户40的移动方向被更准确地估计。同样,在移动终端30由用户40手持而不改变朝向的情况下,类似地,用户40的移动方向被更准确地估计。

(3)惯性导航与行人航位推算的比较

惯性导航和行人航位推算有一个共同点,即两种方法都使用imu,但优缺点和缺点相互矛盾,这是由于根据imu测量的惯性数据估算移动体位置的方法不同。例如,即使用户40的移动方向与移动终端30的朝向不同,惯性导航也不会产生误差。另一方面,当用户40的移动方向与移动终端30的朝向不同时,行人航位推算中会产生误差。此外,由于惯性导航在估计移动体的位置时由于使用积分而导致积分误差。另一方面,行人航位推算在估计移动体的位置时不使用积分并且不会产生积分误差。

鉴于上述优点和缺点,通过实现具有两个特征作为优点(即,即使当用户40的移动方向不同于移动终端30的朝向时也没有误差,以及在估计移动体的位置时不使用积分)的设备,可以更准确地估计移动体的位置。

本公开的一个实施例源自关注于上述观点的思维。本公开的实施例提出了一种技术,该技术允许通过校正速度来自主提高位置估计准确性,该速度是由惯性导航系统根据imu测量的惯性数据计算得出的,其中,速度是使用行走的特征量基于惯性数据计算的。

(4)自主位置估计

下面,将参照图4和图5描述本公开的实施例的概述。图4是示出了本公开的一个实施例的概述的说明图。图5是示出根据本公开的实施例的移动速度的校正的示例的说明图。

图4所示的移动终端10是信息处理装置,该装置具有估计自身位置并基于由自身配备的设备获取的信息来校正估计位置的功能。在本公开的实施例中,如图4所示,当携带移动终端10的用户40在从位置1移动到位置2的同时改变移动终端10的朝向时,防止了包含在用户40的估计位置中的误差发散。此外,当用户40在从位置2移动到位置3的同时改变用户40自己的朝向和移动终端10的朝向时,防止了包含在用户40的估计位置中的误差发散。

这是因为,在本公开的该实施例中,将用于估计用户40的位置的用户40的行走特征量(例如,移动速度等),校正为具有更小误差的行走特征量。例如,如图5所示,由速度矢量61表示包含由惯性导航系统计算出的积分误差的移动速度。此外,由等速圆60表示基于用户40的行走特征量而计算出的速度的标量值。在本公开的实施例中,通过校正包含积分误差的速度矢量61以使得该矢量位于等速圆60上来计算校正后的速度矢量62。这样,基于要用于估计用户40的位置的惯性数据而计算出的用户40的移动速度,被防止偏离用户40的实际移动速度。

要注意,基于步幅频率(以下也称为行走特征量)和步幅长度计算的标量速度的大小对应于等速圆60的半径,步幅频率和步幅长度是与用户40的移动有关的特征量(以下也称为移动特征量)。

此外,移动终端10不使用从外部装置接收的信息,而是使用由其自己的imu测量的惯性数据来校正速度矢量61,从而可以在自主校正速度矢量61之后估计用户40的位置。此外,移动终端10能够校正速度的标量值,该标量值的信息比速度矢量值少。此外,移动终端10能够校正作为姿态角的微分值的角速度。

上面已经参考图1至图5描述了本公开的实施例的概述。接下来,将描述根据本公开的实施例的信息处理装置的功能配置示例。

<1.2.功能配置示例>

下面,将参照图6和图7描述根据本公开的实施例的信息处理装置的功能配置的示例。图6是示出根据本公开的实施例的信息处理装置的功能配置的示例的框图。

如图6所示,根据本公开的实施例的移动终端10包括惯性测量部120、控制器130、通信部140和存储器部150。

(1)惯性测量部120

惯性测量部120具有测量与移动终端10有关的惯性数据的功能。惯性测量部120包括作为能够测量惯性数据的单元的惯性测量单元(imu:惯性测量单元),并且将由惯性测量单元测量的惯性数据输出到控制器130。惯性测量部120包括例如陀螺仪传感器122和加速度计124作为惯性测量单元。

(陀螺仪传感器122)

陀螺仪传感器122是具有获取物体的角速度的功能的惯性测量单元。例如,陀螺仪传感器122测量作为移动终端10的姿态的变化量的角速度,作为一条惯性数据。

例如,从施加到旋转物体的惯性力获得角速度的机械传感器,被用作陀螺仪传感器122。可替代地,从流动通道内部的气体流的变化中获得角速度的流体传感器,可以被用作陀螺仪传感器122。可替代地,应用mems(微机电系统)技术的传感器,可以被用作陀螺仪传感器122。如上所述,陀螺仪传感器122不限于特定类型,并且可以使用任何类型的传感器。

(加速度计124)

加速度计124是具有获取物体的加速度的功能的惯性测量单元。例如,加速度计124测量作为当移动终端10已经移动时的速度的变化量的加速度。

例如,从连接到弹簧的重物的位置变化获得加速度的传感器,被用作加速度计124。可替代地,当振动施加到具有重量的弹簧上时从频率的变化中获得加速度的传感器,可以被用作加速度计124。可替代地,基于mems技术的传感器,可以被用作加速度计124。如上所述,加速度计124不限于特定类型,并且可以使用任何类型的传感器。

(2)控制器130

控制器130具有执行移动终端10的整体控制的功能。例如,控制器130控制惯性测量部120中的测量处理。

另外,控制器130控制通信部140中的通信过程。具体地,控制器130使通信部140将根据控制器130执行的处理输出的信息发送到外部装置。

另外,控制器130控制存储器部150中的存储处理。具体地,控制器130使存储器部150存储根据控制器130执行的处理输出的信息。

控制器130还具有基于输入的信息执行处理的功能。例如,控制器130具有基于在移动终端10的移动期间从惯性测量部120输入的惯性数据来计算移动终端10的状态值的功能。在此,状态值是指表示诸如移动终端10的移动体的移动状态的值。该状态值包括例如表示移动体的姿态、位置和移动速度的值。

此外,控制器130具有基于在移动终端10的移动期间从惯性测量部120输入的惯性数据来计算移动终端10的观察值的功能。在此,观察值是指与状态值相比包含更少的误差、并且更准确地指示移动体的移动状态的值。例如,基于移动体的行走特征量的移动速度被计算为观察值。

此外,控制器130具有基于观察值计算姿态信息的功能,并将姿态信息反馈到惯性导航计算单元132。例如,控制器130校正包含在状态值中的姿态值,以使包含在由惯性导航系统计算出的状态值中的移动速度更接近于作为观察值计算出的移动速度。然后,控制器130反馈校正后的姿态信息,并基于新的惯性数据和校正后的姿态信息再次计算状态值。注意,在本公开的该实施例中,在校正之后反馈的姿态信息是基于观察值校正的状态值。

如上所述,控制器130使用基于惯性数据计算出的观察值来校正基于imu测量的惯性数据计算出的状态值,这允许提高用于位置估计的状态值的准确性。此外,控制器130反馈基于观察值校正的姿态值(姿态信息),从而可以提高接下来要计算的状态值的准确性。

为了实现上述功能,如图6所示,根据本公开的实施例的控制器130包括惯性导航计算单元132、观察值计算单元134和姿态信息计算单元136。

(惯性导航计算单元132)

惯性导航计算单元132具有通过惯性导航系统计算移动体的状态值的功能。例如,惯性导航计算单元132基于从惯性测量部120输入的惯性数据,通过惯性导航系统计算移动体的状态值。然后惯性导航计算单元132将计算的状态值输出到姿态信息计算单元136。

具体地,由惯性导航计算单元132计算的移动体的状态值xl由以下表达式(1)表示,其中rl,pl和vl分别表示在时间l处移动体的姿态、位置和速度。

[表达式1]

xl=[rlplvl]…(1)

注意,惯性导航计算单元132用于计算移动体的状态值的方法不受限制,即,可以使用任何适当的方法来计算移动体的状态值。应当理解,在本公开的实施例中,惯性导航计算单元132使用一般惯性导航系统来计算移动体的状态值。

此外,惯性导航计算单元132基于惯性数据以及从姿态信息计算单元136反馈的姿态信息来计算状态值。例如,惯性导航计算单元132基于从惯性测量部120输入的惯性数据和从姿态信息计算单元136反馈的姿态信息来计算状态值。然后惯性导航计算单元132将计算出的状态值输出到姿态信息计算单元136。

具体地,通过以下表达式(2)来计算基于在时间l+1处的反馈姿态信息来计算的移动体的状态值xl+1。

[表达式2]

这里,表达式(2)中的[rlplvl]表示从姿态信息计算单元136反馈的状态值。此外,表达式(2)中的03表示3×3零矩阵。此外,i3表示3×3单位矩阵。此外,a(aimu)和b(aimu)表示基于加速度计算位置和速度的项,aimu表示由imu测量的加速度。此外,δt表示imu测量惯性数据时的采样周期。另外,δr是表示移动体从时刻l到时刻l+1的期间移动时的姿态值的误差的项,并由下面的表达式(3)计算。

[表达式3]

这里,表达式(3)中的ωimu(τ)表示基于imu测量的角速度计算出的姿态值,以及bgyr(τ)表示基于陀螺仪传感器的偏差计算出的姿态值。

(观察值计算单元134)

观察值计算单元134具有计算移动体的观察值的功能。例如,观察值计算单元134根据基于从惯性测量部120输入的惯性数据而计算出的移动特征量,来计算移动体的观察值。然后,观察值计算单元134将计算出的观察值输出到姿态信息计算单元136。根据本公开的实施例的观察值计算单元134使用与移动体的移动速度有关的值作为观察值。此外,观察值计算单元134基于与移动体的移动有关的移动特征量来计算该观察值。例如,在移动体是步行移动体的情况下,观察值计算单元134使用的移动特征量是基于由惯性测量部120测量的行人的加速度而检测到的步幅频率。步幅频率表示行人特有的特征。表示行人特有的特征量的移动特征量也被称为下面的行走特征量。应当注意,可以将与移动体的移动速度有关的任何值设置为观察值。

-观察值为行走速度的情况

与移动体的移动速度有关的值例如是行人的行走速度。观察值计算单元134将基于移动体的步幅频率和移动体的步幅长度计算出的行人的行走速度用作观察值。具体地,观察值计算单元134使用行走特征量和计算表达式(步幅长度)×(步幅频率)来计算观察值。通过使用步计数算法,可以高准确性地计算步幅频率。而且,步幅长度可以是预定值,可以是要预设的值,或者可以基于从gnss接收的信息来计算。

-观察值为基于步幅频率的速度变化量的情况

此外,与移动体的移动速度有关的值可以是基于行人的步幅频率计算出的行走速度的变化量。在基于行人的步幅频率确定行人正在以恒定速度移动的情况下,观察值计算单元134可以将指示速度变化量为零的值用作观察值。具体地,在观察值计算单元134基于行人的步幅频率确定行人正在以恒定速度移动的情况下,观察值计算单元134将零作为观察值输出到姿态信息计算单元136。此外,在观察值计算单元134基于步幅频率确定行人没有以恒定速度移动的情况下,观察值计算单元134可以计算速度变化量并将计算出的速度变化量作为观察值输出到姿态信息计算单元136。

-观察值为基于行走的判断结果得出的速度变化量的情况

此外,与移动体的移动速度有关的值可以是基于对行走的判断结果而计算出的速度变化量。在观察值计算单元134基于惯性数据确定行人正在行走的情况下,指示行人的速度变化量为零的值可以用作观察值。具体地,在观察值计算单元134基于加速度确定行人正在行走的情况下,观察值计算单元134假设行人正在以恒定速度行走,并将零作为观察值输出到姿态信息计算单元136。如上所述,如果行人正在行走,则将速度变化量预先定义为零使得能够在观察值计算单元134中进行更简单的处理。

这里,观察值计算单元134用于计算观察值的惯性数据,不限于要从惯性测量部120输入的加速度,并且可以使用角速度。注意,观察值计算单元134用于计算观察值的惯性数据值基本上是标量值。因此,计算出的观察值也是标量值。作为替代,观察值计算单元134用于计算观察值的惯性数据值可以是矢量值。矢量值的使用使得观察值计算单元134能够提高所计算的观察值的准确性。

(姿态信息计算单元136)

姿态信息计算单元136具有基于状态值和观察值来计算姿态信息的功能。例如,姿态信息计算单元136通过基于观察值校正状态值来计算姿态信息。具体地,姿态信息计算单元136校正状态值中包含的姿态值,以使输入到惯性导航计算单元132中的状态值中包含的移动速度更接近输入到观察值计算单元134的观察值指示的移动速度。然后,姿态信息计算单元136将校正后的状态值作为姿态信息反馈给惯性导航计算单元132。在此,在反馈了校正后的状态值的情况下,惯性导航计算单元132能够基于校正后的状态值的姿态值将以上给出的表达式(2)中的[rlplvl]更新为更准确的状态值xl。因此,在惯性导航计算单元132能够计算出更准确的状态值xl+1的情况下,控制器130能够自主地提高位置估计的准确性。

根据本公开的实施例的姿态信息计算单元136例如通过卡尔曼滤波器来实现。现在将参考图7描述根据本公开的实施例的卡尔曼滤波器的应用示例。图7是示出根据本公开的实施例的卡尔曼滤波器的效果的说明图。图7中左侧的示图出了基于标量值的速度矢量的估计示例。图7的右侧的示图出了基于卡尔曼滤波器的速度矢量的估计示例。应当注意,以下描述的示例假设观察值是行走速度的情况。

-卡尔曼滤波器的应用

在本公开的实施例中,观察值计算单元134输入到姿态信息计算单元136的观察值是标量值。基于标量值计算的标量速度由等速圆60表示。可以将仅基于标量值的观察值估计的校正后的速度矢量,估计为在等速圆60上给定点处的速度矢量,如图7中的左侧示图中的速度矢量64a或速度矢量64b。这是因为观察值不是矢量值,所以姿态信息计算单元136不能唯一地确定校正之后的移动速度的方向。

另一方面,在将卡尔曼滤波器应用于姿态信息计算单元136的情况下,执行串行处理的卡尔曼滤波器能够估计校正后的速度矢量,从而不偏离基于作为标量值的观察值而计算出的等速圆60。例如,如图7的右侧的示图所示,可以基于作为真实值的速度矢量63,将校正后的速度矢量依次校正为。这是因为由卡尔曼滤波器执行的处理是串行处理,并且串行处理中使用的样本之间的时间间隔短,因此样本之间的方向变化非常小。

-卡尔曼滤波算法

姿态信息计算单元136(在下文中也称为卡尔曼滤波器)基于观察值校正由惯性导航计算单元132计算出的状态值。然后,卡尔曼滤波器计算校正后的状态值,并将校正后的状态值作为姿态信息反馈给惯性导航计算单元132。具体地,由姿态信息计算单元136计算的校正后的状态值xl'由以下表达式(4)计算。

[表达式4]

xl′=xl+(k·y)t…(4)

这里,表达式(4)中的xl表示校正之前的状态值。此外,k表示卡尔曼增益。卡尔曼增益是确定观察值将反映到校正之前的状态值的程度的值。注意,基于以下表达式(5)计算卡尔曼增益k。

[表达式5]

这里,表达式(5)中的h表示雅可比行列式。确定雅可比行列式h,使得观察值和校正之前的状态值的尺寸和坐标系彼此匹配。

此外,表达式(4)中的y表示校正之前的状态值中包括的移动体的移动速度(第三移动速度)与观察值中包括的移动体的移动速度(第四移动速度)的差值。卡尔曼滤波器基于该差值计算校正后的状态值。注意,该差值通过以下表达式(6)计算。

[表达式6]

y=[vob_norm-vexp_norm]…(6)

这里,表达式(6)中的vob_norm表示与由观察值计算单元134根据行走特征量计算出的移动速度(行走速度)有关的值(观察值)的标量值。此外,vexp_norm表示由惯性导航计算单元132使用惯性导航系统计算出的状态值中包括的移动速度。注意,vexp_norm由以下表达式(7)计算。

[表达式7]

这里,表达式(7)中的vxl表示移动体的俯仰轴方向上的移动速度分量。另外,vyl表示移动体的侧倾轴方向上的移动速度分量。注意,vxl可以表示侧倾轴方向上的移动速度分量,并且vyl可以表示俯仰轴方向上的移动速度分量。

(3)通信部140

通信部140具有与外部装置进行通信的功能。例如,通信部140在与外部装置通信期间将从外部装置接收的信息输出到控制器130。另外,在与外部装置通信期间,通信部140将从控制器130输入的信息发送到外部装置。

(4)存储器部150

存储器部150具有存储通过信息处理装置中的处理获得的数据的功能。例如,存储器部150存储由惯性测量部120测量的惯性数据。具体地,存储器部150存储由惯性测量部120测量的移动终端10的加速度和角速度。

注意,存储在存储器部150中的信息不限于上述惯性数据。例如,存储器部150可以存储在控制器130的处理中输出的数据,诸如各种应用的程序以及数据等。

上面已经参考图6和图7描述了根据本公开的实施例的移动终端10的功能配置的一个示例。接下来,将描述根据本公开的实施例的移动终端10的操作示例。

<1.3.操作示例>

以下,将参照图8描述根据本公开的实施例的移动终端10的操作示例。图8是示出根据本公开的实施例的当应用卡尔曼滤波器时移动终端10的操作的示例的流程图。

如图8所示,首先,惯性测量部120获得加速度和角速度(步骤s1000)。惯性导航计算单元132基于由惯性测量部120获得的加速度和角速度,通过惯性导航系统计算状态值(步骤s1002)。观察值计算单元134基于加速度或行走特征量来计算观察值(步骤s1004)。

在计算出状态值和观察值之后,姿态信息计算单元136基于由观察值计算单元134计算出的观察值,对由惯性导航计算单元132计算出的状态值进行校正(步骤s1006)。在校正状态值之后,姿态信息计算单元136将校正后的状态值反馈到惯性导航计算单元132(步骤s1008)。

在反馈校正后的状态值之后,移动终端10重复上述从步骤s1000到步骤s1008的处理。注意,在步骤s1002,惯性导航计算单元132基于由惯性测量部120获得的加速度和角速度、以及校正后的状态值来计算状态值。如上所述,通过重复执行上述从步骤s1000到步骤s1008的处理,移动终端10能够进一步提高位置估计的准确性。注意,移动终端10可以在任何合适的定时结束上述从步骤s1000到步骤s1008的处理。

上面已经参考图8描述了根据本公开的实施例的移动终端10的一个操作示例。接下来,将描述根据本公开的实施例的测试示例。

<1.4.测试例>

下面,将参照图9和图10描述根据本公开的实施例的测试示例。

(1)姿态校正

以下,将参照图9描述根据本公开的实施例的关于校正移动体的姿态的测试结果。图9是示出根据本公开的实施例的移动体的姿态的校正示例的说明图。图9中的曲线图表示当假定行人笔直向前行走时基于虚拟惯性数据的测试结果。曲线图的纵轴表示姿态误差的角度,以及横轴表示时间。另外,实线表示围绕作为旋转轴的俯仰轴的姿态值随时间的变化。另外,虚线表示围绕作为旋转轴的侧倾轴的姿态值随时间的变化。此外,折线表示围绕作为旋转轴的偏航轴的姿态值随时间的变化。

此处,陀螺仪传感器对所有三个轴的偏差设置为1×10-4rad/s。因此,在不校正由惯性导航计算单元132计算出的状态值的情况下,随着时间的流逝,所有三个轴的姿态值中与偏差相对应的姿态误差逐渐累积。

然而,在该测试中,围绕作为旋转轴的俯仰轴和侧倾轴的姿态值是校正的对象。因此,如图9的曲线图所示,在围绕作为校正对象的作为旋转轴的俯仰轴和侧倾轴的姿态值中几乎没有姿态误差。还示出,随着时间的流逝仅在围绕不是校正目标的作为旋转轴的偏航轴的姿态值中,累积与偏差相对应的姿态误差。

(2)位置校正

下面,将参照图10描述根据本公开的实施例的关于校正移动体的位置的测试结果。图10是示出根据本公开的实施例的移动体的位置的校正示例的说明图。图10中上侧的曲线图示出了当行人在将imu附接到头部的情况下行走时的行走的示例。图10中下侧的曲线图示出了由于行人的行走而测量的行走轨迹。

每个曲线图中的垂直轴指示在y轴方向上距原点的移动距离,以及水平轴指示在x轴方向上距原点的移动距离。在图10中下侧的曲线图中的实线表示行人的真实轨迹。图10中下侧的曲线图中的虚线表示由移动终端10测量的行人的轨迹。图10中下侧的曲线图中的单点划线表示由移动终端30测量的行人的轨迹。应当注意,比较示例仅使用行人航位推算来估计行人的位置。

在该测试中,如图10中上侧曲线图所示,开始位于作为行走起点(原点)的坐标(0,0)处的行人直行走到坐标(0,20)。在坐标(0,20),行人将身体顺时针旋转正好90度,以更改移动方向。此时,行人还将头顺时针旋转正好135度,以改变头的方向。改变移动方向后,行人从坐标(0,20)进一步直线行走,并在坐标(15,20)处将头逆时针旋转正好45度,以再次改变头的方向。在改变头的方向后,行人继续直走至坐标(60,20)处。

如在图10中下侧的曲线图所示,当行人从坐标(0,0)行走到坐标(0,20)时,在根据本公开的实施例的轨迹和根据比较示例的轨迹中都没有发生与真实轨迹的偏离。当行人从坐标(0,20)行走到坐标(60,20)时,在根据本公开的实施例的轨迹中几乎不发生与真实轨迹的任何偏离。另一方面,在根据比较示例的从坐标(0,20)到坐标(15,20)的轨迹中,头部旋转的角度导致与真实轨迹的偏离。此外,在头方向在坐标(15,20)处再次改变之后,由于误差发散已经停止,所以根据比较示例的轨迹平行于真实轨迹。

如上所述,可以理解的是,在比较示例中,头部转动大于身体转动有影响,并且头部旋转的角度大于身体旋转的角度导致偏离轨迹。另一方面,可以理解的是,在本公开的实施例中,头部转动大于身体转动造成的影响降低。

上面已经参照图1至图10描述了本公开的一个实施例。接下来,将描述根据本公开的实施例的测试示例。

<<2.修改示例>>

以下,将描述本公开的实施例的修改示例。应当注意,以下描述的修改示例可以单独地应用于本公开的实施例,或者可以组合地应用于本公开的实施例。另外,修改示例可以代替本发明的实施例中说明的结构而应用,或者可以除了本发明的实施例中说明的结构之外进行应用。

(1)第一修改示例

以下,将参照图11至图13描述根据本公开的实施例的第一修改示例。在上述实施例中,已经描述了姿态信息计算单元136使用卡尔曼滤波器来计算姿态信息的一个示例。在第一修改示例中,将描述姿态信息计算单元136在不使用卡尔曼滤波器的情况下计算姿态信息的一个示例。代替使用卡尔曼滤波器,姿态信息计算单元136在第一修改示例中使用约束来计算姿态误差的最佳值,并且将姿态误差的最佳值用作姿态信息。

(约束的应用)

首先,将参考图11描述在根据本公开的实施例的第一修改示例中的约束的应用。图11是示出根据本公开的实施例的约束的应用示例的说明图。应当注意,以下描述假设移动体以恒定速度在一个方向上移动。如图11所示,基于作为标量值的观察值而算出的标量速度将由等速圆60来表示。在imu的陀螺仪传感器具有足够准确性的情况下,在短时间内发生的姿态误差和由重力抵消误差引起的移动体的加速度的方向基本恒定。加速方向是恒定的,例如如图11中的加速方向65所示。但是,发生的姿态误差量不是恒定的,因此随着时间的流逝,姿态误差量会发散。因此,如图11所示,校正后的速度矢量从等速圆60偏离,从速度矢量64a变为速度矢量64b,并且变为速度矢量64c。因此,姿态信息计算单元136设置约束,使得预定时间段内的姿态误差是恒定的,以允许校正后的速度矢量收敛在等速圆60上。

(第一修改示例中的约束)

第一修改示例中的姿态信息计算单元136使用约束条件来计算姿态误差的最佳值,并且将该姿态误差的最佳值用作姿态信息。例如,姿态信息计算单元136使用在预定时间段内姿态误差恒定的约束。即使输入的状态值和观察值是标量值,该约束也能够使姿态信息计算单元136估计移动体的正确姿态和朝向。

具体地,在预定时间被设置为10秒的情况下,姿态信息计算单元136基于每个状态值和观察值中包含的移动速度(基于imu在10秒内测量的多组惯性数据计算得出),在约束下计算使状态值与观察值之间的差值最小的姿态误差值。然后,姿态信息计算单元136将该姿态误差值作为姿态信息反馈给惯性导航计算单元132。

注意,在第一修改示例中,从姿态信息计算单元136反馈的作为姿态信息的姿态误差值被惯性导航计算单元132用于校正状态值中包含的姿态值。

注意,以下将状态值中包含的移动速度也称为状态值速度。而且,以下将观察值中包含的移动速度也称为观察值速度。

注意,预定时间不限于上述示例,并且可以设置任何合适的时间段。在此,在该修改示例中,imu的采样率被设置为100hz。因此,当预定时间设置为10秒时,在10秒内获取1000个惯性数据样本。注意,采样率不限于上述示例,并且可以设置任何合适的采样率。

(最佳姿态误差搜索过程)

姿态信息计算单元136将临时误差值分配给由惯性导航计算单元132计算出的状态值,以用作临时状态值。然后,基于临时状态值和由观察值计算单元134计算的观察值之间的偏离程度,计算状态值的校正量。然后,姿态信息计算单元136将校正量作为姿态信息反馈给惯性导航计算单元132。

在该修改示例中,对状态值所包含的姿态值的侧倾轴方向和俯仰轴方向的各分量,分配临时误差值(以下,也称为临时姿态误差)。姿态值在侧倾轴方向的分量的临时姿态误差用θerr_pitch表示,而姿态值在俯仰轴方向的分量的临时姿态误差用θerr_roll表示。

更具体地,姿态信息计算单元136在改变临时误差值的同时,计算基于在预定时间内测量的多组惯性数据计算出的多个临时状态值中的每一个和与多个临时状态值中的每一个相对应的观察值之间的偏离程度,并确定使偏离程度最小化的临时误差值作为校正量。例如,姿态信息计算单元136通过将在-1到1的角度范围内以预定的增量变化的误差值θerr_pitch和θerr_roll,分配给基于一个惯性数据样本计算的一个状态值,从而计算临时状态值。在将预定增量dθ设置为0.01度的情况下,姿态信息计算单元136分配从-1度到1度每步变化0.01度增量的θerr_pitch,从而计算200个临时状态值。类似地,计算出200个临时状态值θerr_roll。注意,预定增量dθ不限于上述示例,并且可以设置任何合适的值。

此外,所计算的偏离程度的数量与通过将临时姿态误差分配给θerr_pitch和θerr_roll中的每一个而计算出的状态值的组合的数量相同。在该修改示例中,姿态信息计算单元136计算出的偏离程度的数量与基于θerr_pitch计算出的200个临时状态值和基于θerr_roll计算出的200个临时状态值的组合数相同。即,计算出40000(200×200)个偏离程度。然后,姿态信息计算单元136从计算出的40000个偏离程度中选择最小的一个,并且将该偏离程度的θerr_pitch和θerr_roll的组合确定为最佳姿态误差值(校正量)。

基于临时状态值中包含的状态值速度(第一移动速度)和与临时状态值相对应的观察值中包含的观察值速度(第二移动速度),来计算偏离程度。具体地,姿态信息计算单元136计算状态值速度的绝对值与观察值速度之间的差的平方,并且将多个计算出的差的平方的平均值确定为偏离程度,计算出的差的平方的数量与在预定时间段内测量的测量值的数量相同。

更具体地,首先,姿态信息计算单元136利用θerr_pitch和θerr_roll的40000个组合之一来计算每个样本的状态值速度。姿态信息计算单元136计算针对每个样本计算的状态值速度的绝对值与由观察值计算单元134计算的观察值速度之间的差的平方。姿态信息计算单元136重复该计算1000个样本的差的平方的处理。然后,姿态信息计算单元136对所计算的1000个样本的差的平方和s,计算平均值。该平均值被确定为偏离程度(rms:均方根)。

这里,诸如采样的惯性数据、基于惯性数据计算的状态值速度、差平方和s以及偏离程度(rms)的值被缓冲(存储)在存储器部150中。

(第一修改示例中的操作示例)

以下,将参照图12和图13描述根据本公开的实施例的第一修改示例中的移动终端10的操作示例。图12是示出根据本公开的实施例的当施加约束时移动终端10的操作的示例的流程图。图13是示出根据本公开的实施例的当施加约束时搜索最佳姿态误差的处理的示例的流程图。

(主要过程)

如图12所示,首先,惯性测量部120获得加速度和角速度的一个样本(步骤s2000)。控制器130的惯性导航计算单元132基于由惯性测量部120获得的加速度和角速度来计算状态值速度(步骤s2002)。控制器130将由惯性测量部120获得的加速度和角速度、与由惯性导航计算单元132计算出的状态值速度彼此关联为一个样本,并将该样本缓冲在存储器部150中(步骤s2004)。

在缓冲该样本之后,控制器130检查是否已经缓冲了1000个以上样本(步骤s2006)。在尚未缓冲1000个以上样本的情况下(步骤s2006为“否”),控制器130重复从步骤s2000到步骤s2004的处理。在已经缓存了1000个以上样本的情况下(步骤s2006为是),控制器130执行搜索最佳姿态误差的处理(步骤s2008)。注意,稍后将描述最佳姿态误差搜索处理的详细处理流程。

在最佳姿态误差搜索处理之后,控制器130中的姿态信息计算单元136将最佳姿态误差反馈到惯性导航计算单元132(步骤s2010)。在反馈之后,控制器130丢弃样本中最老的一个(步骤s2012),并重复从步骤s2000开始的上述处理。

(最佳姿态误差搜索过程)

如图13所示,首先,控制器130执行用于执行最佳姿态误差搜索处理的初始化处理。作为初始化处理,控制器130将临时姿态误差θerr_pitch和θerr_roll中的每个设置为-1度(步骤s3000)。控制器130还设置具有θerr_pitch=0的搜索步数i(步骤s3002)。控制器130还设置具有θerr_roll=0的搜索步数k(步骤s3004)。控制器130还设置临时姿态误差的增量角度,即,对于θerr_pitch为0.01度的增量角度dθi和对于θerr_roll为0.01度的增量角度dθk(步骤s3006)。

在初始化处理之后,控制器130检查搜索步数i是否小于200(步骤s3008)。在搜索步数i小于200的情况下(步骤s3008为是),控制器130将θerr_pitch增加dθi(步骤s3010)。在搜索步数i不小于200的情况下(步骤s3008为“否”),控制器130执行稍后将描述的步骤s3042的处理。

在增加dθi之后,控制器130检查搜索步数k是否小于200(步骤s3012)。在搜索步数k小于200的情况下(步骤s3012为“是”),控制器130将θerr_roll增加dθk(步骤s3014)。在搜索步数k不小于200的情况下(步骤s3012为“否”),控制器130执行稍后将描述的步骤s3040的处理。

在增加dθk之后,控制器130将表示多个采样惯性数据集合中的哪个正在被处理的缓冲器指针p重置为零(步骤s3016)。另外,控制器130将平方和s重置为零(步骤s3018)。

在重置平方和s之后,控制器130基于已被缓冲的第p个采样数据的惯性数据,计算观察值速度(步骤s3020)。在计算观察值之后,控制器130基于第p个惯性数据计算移动终端10的姿态值(步骤s3022),并且将临时姿态误差分配给该姿态值(步骤s3024)。控制器130基于已被分配了临时姿态误差的姿态值执行全局坐标转换,以计算全局坐标系中的加速度(步骤s3026)。控制器130基于计算出的全局坐标系中的加速度来计算状态值速度和位置(步骤s3028)。控制器计算状态值速度的绝对值和观察值速度之间的差的平方,将所计算的差的平方加到平方和s,从而更新平方和s(步骤s3030)。在更新平方和s之后,控制器130将缓冲器指针p增加1,从而更新缓冲器指针(步骤s3032)。

在更新了缓冲区指针p之后,控制器130检查缓冲区指针p是否为1000以上(步骤s3034)。在缓冲器指针p不是1000以上的情况下(步骤s3034为“否”),控制器130重复上述从步骤s3020到步骤s3032的处理。在缓冲器指针p为1000以上的情况下(步骤s3034为是),控制器130计算作为平方和的平均值的偏离程度rms(i,k)(步骤s3036)。在计算了偏离程度rms(i,k)之后,控制器130将搜索步数k增加1,并且将增量角度dθk增加0.01度(步骤s3038)。

在执行步骤s3038之后,控制器130再次执行步骤s3012,以检查搜索步数k是否小于200(步骤s3012)。在搜索步数k小于200的情况下(步骤s3012为是),控制器130重复上述从步骤s3014到步骤s3038的处理。在搜索步数k不小于200的情况下(步骤s3012为“否”),控制器130将搜索步数k重置为0,并且将增量角度dθk重置为0.01度(步骤s3040)。另外,控制器130将搜索步数i增加1,并且将增量角度dθi增加0.01度(步骤s3040)。

在执行步骤s3040之后,控制器130再次执行步骤s3008以检查搜索步数i是否小于200(步骤s3008)。在搜索步数i小于200的情况下(步骤s3008为是),控制器130重复上述从步骤s3008至步骤s3040的处理。在搜索步数i不小于200的情况下(步骤s3008为“否”),控制器130将使偏离程度rms(i,k)最小的姿态值确定为最佳姿态误差(步骤s3042),并结束最佳姿态误差搜索处理。

(2)第二修改示例

在上述实施例中描述了移动体是行人的一个示例,但移动体也可以是汽车。这是因为存在用于计算与汽车有关的观察值的算法。与上述实施例类似,将该算法应用于观察值计算单元134,使得控制器130防止位置估计中的误差发散。

(3)第三修改示例

尽管在上面的实施例中描述了移动体行走的一个示例,但是移动体可以游泳。这是因为游泳与行走一样涉及循环运动。观察值计算单元134能够基于行程周期将游泳者的移动速度计算为观察值。

上面已经参考图11至图13描述了本公开的实施例的修改示例。接下来,将描述根据本公开实施例的信息处理装置的硬件配置。

<<3.硬件配置实例>>

以下,将参照图14描述根据本公开的实施例的移动终端10的硬件配置示例。图14是示出根据本公开的实施例的移动终端10的硬件配置的示例的框图。如图14所示,移动终端10包括例如cpu101、rom103、ram105、输入设备107、显示设备109、音频输出设备111、存储设备113和通信设备115。注意,此处指示的硬件配置是一个示例,并且某些组成元件可以省略。可替代地,硬件配置可以进一步包括除了这里指示的那些之外的其他组成元件。

(cpu101、rom103和ram105)

cpu101例如用作算术处理设备或控制设备,并且基于记录在rom103、ram105或存储设备113中的各种程序,来控制各种组成元件的全部或部分操作。rom103是存储将要读入cpu101的程序以及用于计算的数据等的装置。ram105临时地或永久地存储例如读入cpu101的程序、以及当执行程序时相应改变的各种参数等。这些经由包括cpu总线等的主机总线相互耦接。cpu101、rom103和ram105例如可以通过与软件协作来实现参考图6描述的控制器130的功能。

(输入设备107)

对于输入设备107,例如,使用触摸屏、按钮、开关等。此外,能够使用红外线或其他电磁波发送控制信号的远程控制器,也可以用作输入设备107。输入设备107还包括诸如麦克风的音频输入单元。

(显示设备109和音频输出设备111)

显示设备109包括诸如crt(阴极射线管)显示设备和液晶显示(lcd)设备的显示设备。显示设备109还包括诸如投影仪设备、oled(有机发光二极管)设备和灯的显示设备。此外,音频输出设备111包括诸如扬声器或耳机的音频输出设备。

(存储设备113)

存储设备113是用于存储各种数据集合的设备。对于存储设备113,例如,使用诸如硬盘驱动器(hdd)的磁存储设备、半导体存储设备、光学存储设备或磁光存储设备等。存储设备113可以实现例如参考图6描述的存储器部150的功能。

(通信设备115)

通信设备115是用于建立与网络的连接的通信设备,例如用于各种通信的有线或无线lan、蓝牙(注册商标)、wusb(无线usb)的通信卡、用于光通信的路由器、用于adsl(非对称数字用户线)的路由器、以及调制解调器等。

上面已经参考图14描述了根据本公开实施例的移动终端的硬件配置示例。

<<4.结论>>

如上所述,根据本公开的实施例的信息处理装置基于由惯性测量单元测量的惯性数据,通过惯性导航系统计算移动体的状态值。此外,信息处理装置根据基于惯性数据计算出的移动特征量来计算移动体的观察值。此外,信息处理装置基于状态值和观察值来计算移动体的姿态信息。

如上所述,信息处理装置能够基于由其自身的惯性测量单元测量的惯性数据,自己计算状态值、观察值和姿态信息。结果,信息处理装置能够使用由其自身计算的姿态信息,来校正由其自身计算出的状态值,以执行位置估计。

因此,可以提供新颖且改进的并且允许自主提高位置估计准确性的信息处理装置、信息处理方法和程序。

尽管以上已经参考附图详细描述了本公开的优选实施例,但是本公开的技术范围不限于这些示例。应当理解,在本公开的技术领域中的任何普通技术人员显然可以想到,可以在权利要求书中阐述的技术概念内进行的各种改变或修改,并且这些改变或修改本质上也将属于本公开的技术范围。

此外,本文中使用流程图和顺序图描述的过程不一定必须以所示顺序执行。一些处理步骤可以并行执行。另外,可以采用附加的处理步骤,并且可以省略一些处理步骤。

可以通过软件、硬件以及软件和硬件的组合中的任何一者来实现由本文描述的各种设备和单元执行的一系列处理。该软件中包括的程序被预先存储在外部提供的设备或记录介质(非暂时性介质)的相应内部单元中。另外,每个程序例如在由计算机执行时被读入ram,并由诸如cpu的处理器执行。

还应注意,本文描述的效果仅是说明性或示例性的,而不是限制性的。即,根据本公开的技术可以显示除上述效果之外或代替上述效果的其他效果,这对于本领域技术人员根据本文的描述是显而易见的。

注意,以下配置也属于本公开的技术范围。

(1)一种信息处理装置,包括:

惯性导航计算单元,基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算与移动体的移动状态有关的状态值;

观察值计算单元,基于与移动体的移动有关的移动特征量来计算与移动体的移动状态有关的观察值,移动特征量是基于测量值来计算的;以及

姿态信息计算单元,基于状态值和观察值来计算与移动体的姿态有关的姿态信息。

(2)根据(1)的信息处理装置,其中

姿态信息计算单元将姿态信息反馈给惯性导航计算单元,以及

惯性导航计算单元基于测量值和反馈的姿态信息来计算状态值。

(3)根据(2)的信息处理装置,其中,姿态信息计算单元基于临时状态值与观察值之间的偏离程度来计算状态值的校正量,通过向惯性导航计算单元计算出的状态值分配临时误差值而获得临时状态值,并将校正量作为姿态信息反馈给惯性导航计算单元。

(4)根据(3)的信息处理装置,其中,姿态信息计算单元在改变临时误差值的同时,计算多个临时状态值中的每个与对应于多个临时状态值中的每个的观察值之间的偏离程度,基于在预定时间段内测量的多个测量值来计算多个临时状态值,并且将使偏离程度最小的临时误差值确定为校正量。

(5)根据(4)的信息处理装置,其中,姿态信息计算单元计算临时状态值中包含的第一移动速度、和与临时状态值相对应的观察值中包含的第二移动速度之间的差值的平方,计算的差值的平方的数量与在预定时间段内测得的测量值的数量相同,并且确定多个计算的差值的平方的平均值,作为偏离程度。

(6)根据(2)的信息处理装置,其中,姿态信息计算单元计算校正后的状态值,校正后的状态值是通过基于观察值对由惯性导航计算单元计算的状态值进行校正而获得的,并将校正后的状态值作为姿态信息反馈给惯性导航计算单元。

(7)根据(6)的信息处理装置,其中,其中,姿态信息计算单元基于状态值中包含的第三移动速度与观察值中包含的移动体的第四移动速度之间的差值,来计算校正后的状态值。

(8)根据(1)至(7)中的任一项的信息处理装置,其中,观察值计算单元使用与移动体的移动速度有关的值,作为观察值。

(9)根据(8)的信息处理装置,其中,在移动体是步行移动体的情况下,观察值计算单元使用基于测量值而计算的步行移动体的步幅频率,作为移动特征量。

(10)根据(9)的信息处理装置,其中,观察值计算单元使用基于步行移动体的步幅频率和步幅长度而计算的步行移动体的移动速度,作为观察值。

(11)根据(9)的信息处理装置,其中,在基于步幅频率确定步行移动体在以恒定速度移动的情况下,观察值计算单元使用表示速度变化量为零的值,作为观察值。

(12)根据(9)的信息处理装置,其中,在基于测量值确定步行移动体在行走的情况下,观察值计算单元使用表示步行移动体的速度变化量为零的值,作为观察值。

(13)根据(1)至(12)中的任一项的信息处理装置,其中,状态值包括表示移动体的姿态、位置和移动速度的值。

(14)一种由处理器执行的信息处理方法,该信息处理方法包括:

基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算与移动体的移动状态有关的状态值;

基于与移动体的移动有关的移动特征量来计算作为正确值的观察值,移动特征量是基于测量值来计算的;以及

基于状态值和观察值,计算与移动体的正确姿态有关的姿态信息。

(15)一种程序,使计算机用作:

惯性导航计算单元,基于由惯性测量单元测量的与移动体有关的测量值,通过惯性导航系统计算表示移动体的移动状态的状态值;

观察值计算单元,基于与移动体的移动有关的移动特征量来计算作为正确值的观察值,移动特征量是基于测量值来计算的;以及

姿态信息计算单元,基于状态值和观察值,计算与移动体的正确姿态有关的姿态信息。

参考标记列表

10移动终端

120惯性测量部

122陀螺仪传感器

124加速度计

130控制器

132惯性导航计算单元

134观察值计算单元

136姿态信息计算单元

140通信部

150存储器部。

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