首页 / 畸变补偿系统

畸变补偿系统实质审查 发明

技术领域

[0001] 本公开涉及使用磁场来确定对象的位置和取向。

相关背景技术

[0002] 电磁跟踪(EMT)系统(也称为磁跟踪系统)用于帮助在医疗程序中定位器械和患者解剖结构。这些系统利用靠近一个或多个磁传感器的磁发射器。一个或多个传感器可以相对于发射器在空间上定位并且感测由发射器产生的磁场。

具体实施方式

[0035] 跟踪系统(例如,EMT系统)跟踪诸如手术室、手术间等环境中的诸如医疗装置之类的对象。跟踪系统提供姿态信息(即位置和取向)来定位器械(例如导管)并针对患者解剖结构获取测量值。采用跟踪系统的医疗程序可以跨越许多领域,并且可以包括手术干预、诊断程序、成像程序、放射治疗等。畸变物(例如,能够使电磁场畸变的对象)可能无意中出现在跟踪系统环境中,从而影响测量准确度。跟踪系统向用户(例如外科医生)提供信息(例如跟踪数据)的能力对于成功治疗患者(例如执行成功的外科程序)可能是至关重要的。
[0036] 环境(例如,手术室)中存在的畸变可能影响传感器的跟踪准确度。由于这种畸变,一项或多项任务可能无法正确执行;例如,可能不正确地计算传感器姿态,从而导致手术室中的EMT系统对手术器械的跟踪不准确。
[0037] 人工智能可以提供EMT系统中使用的传感器姿态的畸变补偿。例如,使用人工智能(例如机器学习(ML)技术)的畸变补偿可以执行多次训练迭代以学习畸变效应的模式,例如EMT系统环境中的畸变物。具有ML模型的EMT系统能够获得EMT系统的传感器姿态的高度准确估计。ML模型还可以使EMT系统能够根据先前未知的畸变类型来估计畸变量。通过这样做,EMT系统可以补偿不常见的畸变源和各种类型的畸变物,无论畸变物的形状、尺寸、类型、材料成分等如何。
[0038] EMT系统利用电磁场(例如,磁场)来跟踪各种环境中的对象(例如,医疗装置、供应品)。例如,在操作环境中使用的EMT系统可以监视和记录关于医疗工具(例如,导管、活检针、超声探头)的测量值,例如医疗工具的位置和取向。EMT系统对于执行医疗程序非常有用,但很容易引入畸变,从而使(例如医疗工具的)位置和取向测量降级。一个或多个来源可能会引入这种畸变;例如,电磁场源(例如,钻头是良好的磁场生成器)、其他传感器技术、存在的对象(例如,包含导电或铁磁材料的所需医疗工具、包含导电或铁磁材料且靠近所生成的场的不期望的对象等)可能会引入畸变。为了解决这种畸变,可以采用一种或多种技术;例如,可以使用一种或多种校准技术来校准测量值(例如,位置和取向测量值)。由于某些环境的复杂性(例如,手术室具有不同影响的多种畸变源),人工智能(例如机器学习技术)的应用可以提高传感器位置和取向估计的准确度,并适当补偿EMT系统,从而准确跟踪医疗设备。
[0039] 许多EMT系统包括许多传感器(例如,五自由度或六自由度传感器)以通过识别医疗装置和设备的相应三维位置和取向来支持医疗程序。例如,EMT系统可以在执行程序时(例如,在图像引导程序中)指导医疗专业人员或实现其他好处,例如减少对其他成像模态的依赖(例如荧光检查,这种检查使患者暴露在电离辐射下,可能潜在地造成健康风险)或跟踪医疗装置和设备(例如用于辅助手术的机械臂)。
[0040] 参考图1,示意图呈现了示例性电磁跟踪系统100,其包括被配置为在给定三维区域(例如,体积104)内生成磁场的磁场生成组件102。放置在给定体积104内的医疗装置108上的传感器组件106检测和/或测量磁场并且例如通过通信链路112(例如有线或无线连接)将测量值传送到计算机系统110。虽然医疗装置108在图1中被示出为超声探头,但是这仅用于说明目的。医疗装置108可以是用于外科或医疗程序的任何装置或工具,例如导管、内窥镜、手术刀、活检针、身体安装的位置传感器等。
[0041] 基于传感器组件106的测量,计算机系统110可以计算传感器组件106(并且因此医疗装置108)相对于坐标系114的位置,从而允许区域104内的传感器组件106(以及相应的医疗装置108)的运动跟踪。这在高级外科程序中是有用的,其中传感器组件106在医疗程序正在执行时跟踪对象的运动。
[0042] 由于电磁跟踪系统100中生成的磁场的敏感性,靠近磁场的金属材料(例如,铁磁和/或导电材料)的存在可能呈现畸变。例如,导电材料可以生成具有对应场的涡流,这些场会使感应场的形状畸变,并潜在地导致错误的传感器测量值并降低跟踪准确度。导磁材料还可能使磁场畸变,例如通过弯曲或改变磁场的形状。具有电磁跟踪系统100的环境中的畸变可能生成严重的测量误差并降低电磁跟踪系统100的整体有效性。诸如机器学习技术之类的计算解决方案可用于补偿由这些材料引起的畸变。
[0043] 如图1所示,计算机系统110执行畸变管理器150,畸变管理器150使用机器学习技术(例如,畸变模型,也称为ML模型)来补偿电磁跟踪系统100中的畸变。计算机系统110可以访问畸变数据152,其可包括从电磁跟踪系统100收集的电感数据、传感器数据和畸变姿态估计的训练示例。畸变数据152可包括从由场生成组件102生成的磁场测量的电感数据和由传感器组件106收集的传感器数据。畸变数据152还包括电磁跟踪系统100中可能畸变的对象的姿态估计(例如,位置和取向)。此外,可以生成并存储这些训练示例以用于训练畸变管理器150的ML模型(例如,用于历史训练、实时训练)。畸变管理器150学习不同组数据之间的关系以补偿和准确估计对象的姿态,例如,考虑跟踪系统100中的畸变。畸变管理器152可以收集附加的电感数据、传感器数据和姿态估计(例如,包括畸变的测量值),以在跟踪跟踪系统100中的对象时执行实时畸变补偿。换句话说,畸变管理器150可以由计算机系统110使用来补偿畸变效应并确定传感器的准确位置和取向。
[0044] 使用本文描述的机器学习技术的模型可以补偿畸变物的畸变效应。ML模型可以补偿畸变物的畸变效应,而不对畸变物的类型、形状、尺寸或其他物理特征进行分类。例如,ML模型可以确定由畸变物生成的磁场畸变量,并补偿电磁跟踪系统100中的对象的跟踪估计。ML模型使用所确定的磁场畸变量来提高准确度和改善电磁跟踪系统100中对对象的真实位置和取向的跟踪。通过确定畸变量(例如,代替对与畸变物相关的多个物理特征进行分类),ML模型可以高效地补偿畸变效应,从而提高EMT系统(例如电磁跟踪系统100的计算机系统
110)的计算效率。ML模型提供的改进的测量准确度降低了在存在畸变效应的情况下执行无关测量的可能性。此外,通过提供对畸变进行补偿的高保真度数据,改进的测量准确度提供电磁跟踪系统100的操作(例如捕获传感器测量值)期间的计算需求的减少。电磁跟踪系统
100的改进的数据收集通过实现测量准确度的改进而改进了可操作性并减少了计算需求。
[0045] 计算机系统110可以包括一个或多个处理器来执行畸变管理器150的功能,但是被实现为软件、硬件或其某种组合。畸变管理器150还可以跨多个分布式计算系统(例如,通过一个或多个网络)访问畸变信息。例如,除了识别畸变物的存在之外,畸变管理器150还可以使用来自多个跟踪系统环境的电感数据和传感器数据。在一些实施方式中,畸变管理器150可以由跨多个环境的多个计算系统装置来执行,所述多个计算系统装置包括跟踪系统,例如电磁跟踪系统100。
[0046] 参照图1的场生成组件102,在一些实施方式中,场生成组件102在尺寸(例如,高度)上相对薄并且安装在诸如手术台116之类的平坦表面上。尽管图1描绘了安装在手术台116上的场生成组件102(例如,作为平面场生成器),但场生成组件102可以通过可能将场生成组件102嵌入手术台116内而集成到手术台116中。在此特定布置中,场生成组件102包括多个场生成器118(例如,指代单个场生成器或多个场生成器),每个场生成器118可包括产生磁场(例如,通过使电流流过每个线圈)的一个或多个电磁线圈。另外,使用生成磁场的场生成组件102的电磁跟踪系统100在一些实施方式中可被称为磁跟踪系统100。
[0047] 在一些实施方式中,可以有目的地引入畸变物(由导电和/或高导磁材料组成)以生成期望形状的感应磁场。例如,板120可用于屏蔽感应磁场或塑造(shape)感应磁场,但也可使用多个板。例如,多个板可以以磁跟踪系统100的任何配置定位和定向,例如围绕磁场、在磁场上方、在磁场下方。在一些实施方式中,多个板中的一个或多个板是导电的和/或具有高磁导率。
[0048] 图1示出了磁跟踪系统100,其中在场生成器组件102的平面下方的感应磁场是不期望的。在这种情况下,包括板120以显著衰减位于场生成器组件102下方的磁场,例如,屏蔽磁跟踪系统100以免于位于场生成器组件102下方的畸变。因此,在一些实施方式中,板120使磁场畸变并影响磁跟踪系统100的测量准确度,同时衰减其他畸变源。所生成的磁场中的任何畸变可以由畸变管理器150来识别、估计和补偿,如下文图8中所描述的。
[0049] 传感器组件106用于检测区域104中感应的磁场。在一些实施方式中,传感器组件106可以包括并入一种或多种类型的感测技术的一个或多个传感器(例如,传感器阵列)。例如,传感器组件106可以包括一个线圈、几个线圈、一个或多个霍尔传感器、磁通门传感器或能够测量电磁场特性(例如,磁场通量、磁场微分)的其他类型的传感器。在一些实施方式中,由一个或多个场生成器118生成的磁场在传感器组件106中感生电动势(EMF)。测量的EMF代表在定义区域104的三维空间中以传感器组件106的位置和取向测量的磁场的局部值。
[0050] 传感器组件106输出代表一个或多个测量磁场的信号,该磁场对应于通过激活一个或多个场生成器118(例如,不同组的生成器,例如生成器对)而感应的各个场。测量区域104内感应的若干个场允许以多个自由度跟踪传感器组件106。例如,可以使用多个不同的磁场来确定五个自由度 其中坐标(x,y,z)和角度 分别指定传感器相对于
参考的三维位置和取向。作为另一个示例,多个磁场还可用于确定六个自由度,包括x轴位置、y轴位置、z轴位置、滚动、俯仰和偏航。
[0051] 在一些实施方式中,场生成器组件102还包括覆盖层122,覆盖层122实质上包围场生成器118,从而在程序期间为患者提供接合表面(例如,坐或躺在其上)。覆盖层122可以由各种类型的材料或材料组合构造,例如,非导电或非磁性材料(例如塑料)可以并入到覆盖层122中。在一些实施方式中,覆盖层122被配置成为场生成器118提供机械支撑,例如嵌入固体覆盖层122内。在一些实施方式中,覆盖层122可以简单地覆盖场生成器118,但也可以被配置为适应场生成器118的可能的运动(例如平移、旋转等)。
[0052] 在一些实施方式中,测量的磁场值取决于一个或多个系统相关参数以及传感器线圈的三维位置和取向。场生成器118的组数和传感器组件106中的传感器线圈的数量可以根据包括特定测量应用在内的多个因素(例如,增益)而变化。
[0053] 在一些实施方式中,磁跟踪系统100包括光学系统130以从体积104中的对象捕获光学数据。来自光学系统130的光学数据可以被提供给计算机系统110以生成用于畸变管理器150的ML模型的训练示例。例如,来自光学系统130的光学数据可以包括体积104中的对象(例如,传感器组件106)的位置和取向测量值。在一些实施方式中,计算机系统110确定训练示例(例如,在存在畸变物的情况下,在不存在畸变物的情况下)。光学系统130可包括一个或多个相机装置、光源、检测器或其中的某种组合。光学系统130的相机装置可以例如通过光学系统130的光源和检测器来捕获诸如图像、视频和光学测量值之类的光学数据。
[0054] 在一些实施方式中,不同组的场生成器118可以在不同的时间实例被激励。作为示例,计算机系统110可以基于从场生成器组件102传送到计算机系统110的信息来识别感应由传感器组件106检测到的磁场的一组场生成器118。在一些示例中,场生成组件102可以以计算机系统110可以识别的不同频率驱动每组场生成器118。计算机系统110可以将来自传感器组件106的测量的EMF分解成与各组场生成器匹配的频率分量,以识别负责每个测量的场的特定组的场生成器。传感器组件106将测量的场值发送到计算机系统110,计算机系统110使用测量的磁场值来确定传感器组件106的姿态,例如位置和取向。
[0055] 参考图2,示意图描绘了示例性场生成器组件200的俯视图,该示例性场生成器组件200包括分布在层204上的多个个体的场生成器202(类似于图1所示的场生成器118)。尽管图2示出了以特定方式分布的九个场生成器202,但这仅用于说明性目的并且不应被视为限制。更多或更少的场生成器202可以以各种其他分布放置在场生成器组件200中,包括在多个平面中的分布(例如,垂直分布的平面)。层204可以由与上面参考图1描述的覆盖层122实质上相同的材料制成。在一些实施方式中,层204可以是导电或导磁板或屏蔽物(例如,图1所示的板120)的顶表面。
[0056] 一个或多个场生成器202可以通过线缆(未示出)彼此连接并连接到主电源。可以根据调度哪些生成器同时激活来配置连接。在一些实施方式中,场生成器202中的一些或全部可以是同一场生成器组件200的一部分而不彼此连接,例如,进一步实现不同几何构造、形状、尺寸、磁场强度的场。场生成器组件200还可以包括电路板206。在一些实施方式中,电路板容纳控制这些组场生成器202的激励或发射的电子模块。电路板206还可以包括存储器,存储器与计算机系统110通信以存储与场生成器组件200相关联的配置数据。电路板206还可以用作与为场生成器组件200供电的电源的接口。在一些实施方式中,计算机系统110可以被实现为电路板206的一部分。
[0057] 场生成组件200的电磁线圈可以通过将诸如电线之类的导体缠绕在磁性材料或非磁性材料(例如,空气)的芯周围来形成。当电流通过线圈的绕组时,磁场被生成,并且沿着线圈的纵轴延伸穿过线圈的中心,并围绕环路或线圈的外部绕回。环绕每个线缆环路或绕组的磁场与来自其他环路的场相结合,以顺着线圈中心产生集中场。可以例如通过调节电流、通过可调节抽头调节线圈的环路或绕组的数量以及调节与线圈相关联的其他参数和特性来控制线圈磁场的强度和形状。
[0058] 图3示出了示例性磁跟踪系统300,其中畸变物302存在并且可能使测量值畸变。为了解决畸变,磁跟踪系统300可以检测畸变物的存在,例如通过电感测量来量化畸变,并且补偿畸变对跟踪传感器314和跟踪传感器316的影响。磁跟踪系统300可以用在(图1的)跟踪系统100中,并且包括磁场生成组件304,磁场生成组件304被配置为在给定三维区域(例如跟踪体积306)内生成磁场。磁跟踪系统300还包括畸变物体积308,被示为相对于跟踪体积306相对。在一些实施方式中,畸变物体积308和跟踪体积306可以不同地定向,即相对于磁跟踪系统300不同地定向,例如在场生成组件304上方。在一些实施方式中,跟踪体积306和畸变物体积308可以相对于磁跟踪系统放置在多个位置,例如,在场生成组件304下方。在一些实施方式中,可以存在相对于场生成组件304定位的多个跟踪体积306和/或多个畸变物体积308。
[0059] 畸变物302可以相对于磁跟踪系统300位于畸变体积308中。虽然在图形上被表示为矩形棱柱,但是畸变物302可以是任何形状或尺寸。作为示例,畸变物302可以是固定结构,例如在外科环境中使用的手术台。畸变物302可以是用户已知的畸变源,但在许多示例中,来自畸变物302的畸变源是未知的。在一些示例中,畸变物302可以是改变跟踪体积306中的位置的医疗装置,例如,该医疗装置用于执行手术。由于畸变物302的畸变效应,跟踪传感器314和跟踪传感器316的测量准确度可能受到损害。
[0060] 磁跟踪系统300包括耦合到跟踪传感器314(例如,五自由度传感器)和跟踪传感器316(例如,具有多个非共面线圈的传感器)的电子单元312。在一些实施方式中,跟踪传感器可以包括任意数量的正交和/或平面和/或同心线圈。跟踪传感器314和跟踪传感器316位于跟踪体积306内,使得跟踪传感器314和跟踪传感器316的姿态可由磁跟踪系统300估计。由畸变物302引入的畸变效应可由畸变管理器补偿,例如,图1的畸变管理器150,以改进跟踪传感器314和跟踪传感器316的位置和取向估计。
[0061] 电子单元312可以测量跨跟踪传感器314和跟踪传感器316的感应电压,例如从跟踪传感器接收信号。电子单元312还耦合到磁场生成组件304以控制并驱动磁场生成组件304的相应线圈。在一些实施方式中,计算机系统110(参见图1)可以包括电子单元312。在一些实施方式中,计算机系统110可以测量跨跟踪传感器的感应电压和/或通过提供驱动信号来控制磁场生成组件304。
[0062] 磁场生成组件304包括九个场生成器310a‑310i,但是可以使用任何数量的场生成器。每个场生成器310a‑310可包括生成磁场的一个或多个电磁线圈。电子单元312可以为场生成器310a‑310i提供激励信号,测量每个场生成器310a‑310i的电感,并且测量每个场生成器310a‑310i之间的互感。通过这些电感测量,可以确定并补偿由畸变物302生成的畸变效应(例如,畸变量),以改进在磁场中跟踪对象,例如磁跟踪系统300。
[0063] 图4示出了具有非平面的场生成器(例如,场生成组件和线圈的一种不同的实现方式)的磁跟踪系统400的另一个示例。磁跟踪系统400包括被配置为生成磁场的场生成组件402。场生成组件402耦合到类似于上面图3中所示的电子单元312的电子单元406。电子单元
406还耦合到跟踪传感器408,也类似于上面所示的跟踪传感器314。电子单元406被配置为从跟踪传感器408接收信号(例如,测量值),以及向场生成组件402的发射器提供驱动信号。
场生成组件402可以包括多个跟踪单元404,跟踪单元404可以用作发射器。
[0064] 在一些实施方式中,跟踪单元404具有壁,所述壁成形为围绕中空芯的壳。壁可以是柔性电路,其导电并且包含用于传输信号的电子电路。柔性电路自身折叠成长方体配置,以为柔性电路周围的附加部件提供结构刚性。这些部件可以包括覆盖柔性电路的铁磁织物材料,其被插入到缠绕有线圈线缆的塑料线轴中。通过焊接至柔性电路的暴露部分来端接线圈线缆。因此,线圈驱动电路包含在线圈线缆内,以形成紧凑且轻的单元。在一些实施方式中,跟踪单元404可以包括线缆的同心线圈。
[0065] 图5是示出在存在畸变物510(例如,类似于畸变物302,参见图3)的情况下电磁跟踪系统中的示例性自感测量的示意图。EMT系统可以捕获自感测量值,以识别特定电路生成的磁场贡献的源。上述场生成器可用于执行自感测量以确定畸变物510是否存在。还可以在不存在畸变物510的情况下执行自感测量。在自感测量中,可以使用单个场生成器来确定电感。执行自感测量的电路500可以被包括在例如图3的电子单元312中。电路500可以驱动场生成器502(例如,发射器线圈、场生成器)以生成电磁场。该电路包括用于改变信号参数(例如,幅度、相位、频率、波形)的波形源504(例如,个体的源、复用的源等)、用于驱动场生成器502的放大器506、以及用于测量通过场生成器的电流的电阻器508。
[0066] 例如,通过场生成器502的电流I1(t)由等式(1)描述为电压VR1(t)和电阻R1的函数:
[0067]
[0068] 跨场生成器502的电压V1(t)由等式(2)描述为电感L1和电流I1(t)的函数:
[0069]
[0070] 结合上面两个等式,电感L1可以用等式(3)表示:
[0071]
[0072] 可以使用跨场生成器502的电压V1(t)、跨电阻器508的电压VR1(t)以及电阻器508的电阻R1来确定电感。V1(t)和VR1(t)的测量可以例如通过器械来执行。器械还可以通过处理波形来确定其他值(例如导数、幅度、相位等)。如上所述,畸变管理器150(参考图1)可以使用电感来针对畸变物510的存在进行校正。
[0073] 图6是示出例如在存在畸变物620(例如,类似于畸变物302,参见图3)的情况下电磁跟踪系统中的示例性互感测量的示意图。互感测量可以由电磁跟踪系统捕获,以识别由一个电路由于另一电路而生成的磁场贡献的源。例如,EMT系统中使用的电路可以通过生成调节第二电路的电压的EMF来影响由EMT系统中的第二电路生成的磁场。上述场生成器可用于执行互感测量以确定畸变物620是否改变互感。在互感测量中,一个场生成器可以接收来自另一场生成器的信号,反之亦然。执行自感测量的电路600可以被包括在例如图3的电子单元312中。电路600可以驱动场生成器602a、602b(例如,发射器线圈、上述场生成器等)以产生电磁场。例如,该电路可以包括可以改变幅度、相位、频率、波形等的波形源604a、604b(例如,个体的源、复用的源等)。该电路还可以包括放大器606a、606b,放大器606a、606b可以分别用于驱动场生成器602a、602b。该电路包括电阻器608a、608b,其可用于测量通过相应场生成器的电流。
[0074] 当驱动第一场生成器602a的同时,第一开关610a(例如,双刀双掷(DPDT)开关)可以被设置到位置a。第二开关610b(例如,DPDT开关)可以被设置到位置b。这允许生成器602b充当传感器,其信号由放大器612b放大。类似地,在驱动第二场生成器602b的同时,可以将第二开关610b设置到位置a,并且可以将第一开关610a设置到位置b,从而允许生成器602a充当其信号被放大器612a放大的传感器。在一些实施方式中,多个场生成器可以在生成器被驱动的同时充当传感器。
[0075] 一旦测量了跨场生成器的感应电压和驱动电流,就可以确定互感矩阵M,例如,使用以下等式,其中由于发射线圈β在线圈α上感应的电压为Vα,β:
[0076]
[0077] 对于数量为N的场生成器,该等式的矩阵形式等效于:
[0078]
[0079] 如上所述,可以例如通过器械来执行驱动电流和感应电压的测量。器械还可以通过处理波形来确定其他值(例如导数、幅度、相位等)。
[0080] 另外,一些实施方式可以利用自感和互感测量两者。利用这两种测量可以产生完整的电感矩阵LM。这样的组合可以提供用于确定和补偿畸变的附加信息。例如,结合等式(3)和(5)得出:
[0081]
[0082] 这种组合可以针对自感和互感二者的LM矩阵进行求解。例如,可以在任意频率下进行多次测量,以产生附加数据。测量值和电感可以由机器学习系统处理以执行畸变补偿,如下文进一步描述的。在一些实施方式中,除场生成器之外的感测装置可用于自感和互感。例如,由于与将场生成器从发送切换到接收(反之亦然)相关联的成本或复杂性问题,这可能是有利的。
[0083] 图7示出了存在畸变物702(例如,类似于畸变物302,参考图3)的情况下的另一示例性磁跟踪系统700,使得跟踪系统可以补偿所产生的畸变。跟踪系统700可以类似于图1的跟踪系统100。跟踪系统700包括磁场生成组件704,其被配置为在给定的三维区域内生成磁场。
[0084] 磁场生成组件704包括场生成器706‑1至706‑N,每个场生成器包括产生磁场(例如,通过使电流流过每个线圈)的一个或多个电磁线圈。磁场生成组件704还可以包括任意数量的传感器708‑1至708‑N以测量每个场生成器的电感以及各个场生成器之间的互感(例如,耦合测量)。由传感器接收到的信号可以被发送(例如,通过线缆、无线地等)到电子单元710,电子单元710可以类似于图3的电子单元312或图4的电子单元406,并且可以包括与上面图5和图6中所示的示例电路类似的电路。电子单元710可以对所发送的信号执行放大、选择、信号处理、数字化、解调等,以为机器学习模型准备信号。电子单元710还驱动磁场生成组件704。
[0085] 传感器708‑1至708‑N可以包括线圈、半导体器件、霍尔效应传感器、各向异性磁阻(AMR)传感器、隧道磁阻(TMR)传感器、巨磁阻(GMR)传感器等。畸变物702的效应不是由场生成器706‑1至706‑N测量,而是由传感器708‑1至708‑N测量。在一些实施方式中,场生成器706可以是平面的,而传感器708是多轴的,或者反之亦然。在一些实施方式中,畸变物702的畸变效应可以通过场生成器706和传感器708来测量。
[0086] 上述方法(例如,通过畸变管理器150)可用于收集机器学习模型的训练数据。例如,可以实施一种或多种技术来确定磁场中的畸变量。在确定了畸变物的畸变效应后,这些技术可以基于向计算机系统(例如,计算机系统110)提供的电感来补偿畸变。可以提供多个数据源来训练机器学习模型,例如各种(例如,基于形状、材料、尺寸、效应)畸变物的电感数据。作为另一个示例,可以通过收集自感测量值(例如,使用图5的电路)来提供训练数据。附加或可替代地,可以使用互感测量(例如,使用图6的电路)来收集训练数据。训练数据还可以由以下各项组成:来自跟踪体积中处于已知位置和取向的传感器的场测量值,以及跟踪体积中传感器的位置和取向的畸变计算。
[0087] 图8示出了可以存储在计算装置802(例如,服务器、计算机系统)上或由计算装置802(例如,服务器、计算机系统)执行的示例性畸变管理器800,并且包括畸变补偿器804。畸变管理器800的畸变补偿器804包括数据收集器806,其可以收集训练数据,例如由传感器获取的电感数据816组。畸变补偿器804还包括畸变模型训练器810,以用于通过处理从收集的数据(例如,电感数据、传感器数据)提取的训练示例来训练畸变模型808。畸变补偿器804可以包括附加子模块,例如以用于执行数据滤波和处理,以估计电磁场中的畸变。畸变补偿器
804由计算装置802耦合到畸变数据,例如传感器数据814、电感数据816和畸变物特征数据
818(例如畸变特性)。在一些实施方式中,畸变数据可以被划分为任意数量的方式并且可以被滤波以包括数据子集,例如传感器数据814、电感数据816和畸变物特征数据818的一部分。作为示例,畸变物特征数据818可以包括畸变效应的特性,例如磁场强度、形状、方向等。
畸变的这些特征可以被畸变模型808学习、保存和使用以进行训练,例如,以改进未见类型的畸变物和畸变量的特性描述。
[0088] 畸变补偿器804可以操作子模块,例如数据收集器806、畸变模型训练器810和畸变模型808,以执行各种机器学习任务,例如分类、回归、检测和估计。畸变补偿器804的任何子模块可以以各种配置耦合以执行机器学习任务或应用人工智能技术。畸变补偿器804可以获得传感器数据814、电感数据816和畸变物特征数据818,并且向畸变补偿器804的子模块提供数据。例如,畸变补偿器804可以向数据收集器806和畸变模型808提供任何数据类型,以用于处理并作为估计的输入,并且由畸变模型训练器810使用来训练畸变模型808。
[0089] 畸变补偿器804的数据收集器806被配置成为畸变管理器800取回数据。例如,数据收集器808可以例如从图1的传感器组件106获得传感器信号,以存储在传感器数据814中。传感器信号可以描述跟踪系统环境中的传感器的位置、取向、姿态等。数据收集器808可以收集场生成组件的电感数据,例如自感测量值、互感测量值,以存储在电感数据816中。数据收集器806还收集附加类型的传感器和电感数据,并且可以执行操作,例如数据滤波、数据格式化、下采样等,以为畸变管理器800提供成本和效率方面的计算优势。在一些实施方式中,数据收集器806可以在提取训练示例时在提供数据之前对收集的数据执行插值。
[0090] 畸变管理器800可以连接到多个外部存储装置和电感数据源,例如多个训练和计算环境中的多个畸变管理器。在一些实施方式中,电感数据816包括在不存在畸变物的情况下先前测量的场生成器的电感。电感数据816包括在存在各种类型的畸变物的情况下先前测量的场生成器的电感。在一些实施方式中,电感数据816可以由畸变补偿器804预先存储和取回。
[0091] 与电感数据816一起,数据收集器806可以向畸变模型训练器810提供来自传感器的其他类型的数据,例如由传感器数据814表示的数据。传感器数据814包括由传感器接收、发送和使用的信号,例如可用于确定位置、取向、姿态的信号。传感器数据814可以包括关于一个或多个传感器的先前估计或确定的位置、取向的历史数据。在一些实施方式中,传感器数据814包括在不存在畸变物的情况下传感器的先前估计的位置和取向,例如姿态。传感器数据814还可以包括在存在各种类型的畸变物的情况下传感器的先前估计的位置和取向,例如姿态。
[0092] 如图8所示,畸变模型训练器810可以被配置为训练畸变模型808以识别畸变物的各种特征,例如形状、尺寸、强度、材料成分。例如,畸变模型训练器810可以将畸变物特征(例如,计算的特征向量)存储在畸变物特征数据818中以供以后取回和使用。这种畸变物特征数据818可以从畸变模型训练器810之外的源提供。畸变物特征数据818可以包括特征向量,所述特征向量表示用于估计检测畸变的输入。畸变模型808可以类似地将表示畸变物特征的数据(例如,张量、映射、嵌入、编码)存储在畸变物特征数据818中。在一些布置中,这样的畸变物特征可以被直接提供给畸变模型训练器810、畸变模型808等,并对应地存储在畸变物特征数据818中。在其他布置中,可以由畸变模型训练器810、畸变模型808等执行计算以在存储在畸变物特征数据812中之前产生畸变物特征。例如,表示一个或多个畸变物特征(例如,特征向量)的数值可以由畸变模型训练器810、畸变模型808等根据畸变数据来计算。如图所示,这样存储的畸变物特征数据可以驻留在畸变模型训练器810中(例如,在畸变物特征数据812中)。这样的畸变物特征数据可以被提供给畸变管理器800内部或外部的其他位置或从畸变管理器800内部或外部的其他位置接收。例如,可以将数据提供给远离畸变管理器800的其他系统以用于进一步分析、存储等。
[0093] 一般而言,畸变模型训练器810可以采用一种或多种技术来产生畸变模型808(例如,神经网络)。例如,畸变数据可用于确定目标函数,畸变模型808被训练以某种方式针对该目标函数进行最大化或优化。数据库中的畸变数据可以包括训练示例(例如,来自先前的训练迭代、当前的训练迭代),其中畸变模型训练器810向畸变模型808提供训练示例用于训练。畸变模型808可以学习训练示例(例如,传感器测量值、电感测量值)和确定的畸变量之间的映射。此外,还可以训练畸变模型808来映射对所确定的畸变量的补偿,例如,以提高捕获受检测到的畸变影响的测量值的传感器的准确度。在一些实施方式中,畸变模型808可以被训练以最小化损失函数作为估计畸变的手段,例如对于先前未知/未见过的畸变量。
[0094] 经训练的畸变模型808可用于确定跟踪系统中畸变物的畸变效应,例如影响跟踪系统的电磁场。作为示例,可以将电感数据提供给经训练的畸变模型808以确定畸变物的存在和/或影响场的畸变量。经训练的畸变模型808可以估计电磁场中的畸变量,并且为跟踪系统提供补偿因子,例如对一个或多个传感器的调整。作为示例,经训练的畸变模型808还可以执行分类以确定电磁场中畸变物的类型和严重性(例如,畸变效应)。在一些实施方式中,经训练的畸变模型808可以预测畸变物(例如,误差)对跟踪系统的传感器测量的影响。作为示例,经训练的畸变模型808可以基于畸变物的畸变效应来估计跟踪系统的一个或多个传感器的位置误差和取向误差。
[0095] 在图8所示的示例中,数据收集器806、畸变模型训练器810和畸变模型808的功能被呈现为包括在畸变管理器800中。然而,在一些布置中,可以在畸变管理器800的外部提供这些模块中的一个或多个的功能。类似地,在该示例中,模拟传感器数据库808、电感数据库810和畸变物特征数据812被存储在存储装置808中。然而,这些数据库中的一个或多个可以存储在存储装置808的外部,并且在一些布置中,这些数据库中的一个或多个可以存储在畸变管理器800的外部。在一些布置中,畸变管理器800可以用软件、硬件或硬件和软件的组合来实现。类似地,畸变管理器800中包括的模块可以单独地以硬件和/或软件来实现。
[0096] 畸变模型808可以基于所提供的不同训练示例(例如收集电感数据)来执行许多训练更新。畸变模型808可以执行多次迭代,例如数百万次的训练,以逐渐且增量地学习如何对畸变进行更准确的估计。通过从各种电感测量收集训练数据,畸变模型808随着时间的推移提高畸变预测和估计的准确度,以学习准确地估计和识别跨不同畸变物类型、形状、尺寸和材料的特征。
[0097] 在一些实施方式中,畸变模型808可以执行训练以确定如何基于地面实况测量值(ground truth measurement)来调整参数。例如,畸变模型808可以识别跟踪系统中的畸变物的估计畸变和所识别的类型。例如,可以将基于经处理的电感数据的估计畸变与畸变物的畸变的地面实况测量值进行比较。如果估计的畸变超过阈值,例如误差值,则畸变模型808可以调整模型参数并重复处理,直到估计的畸变在相对于地面实况畸变的阈值内。在另一示例中,如果所识别的畸变物的严重性处于错误的分类类别中,例如,错误地识别畸变的严重性,则畸变模型808可以识别畸变物的某些特征并重复训练,直到对于畸变物确定正确的严重性标签为止,例如调整参数。畸变模型808的调整可包括调整一个或多个神经网络中的节点的权重和偏差的值。
[0098] 在一些实施方式中,畸变模型808可以调整惩罚参数。在一些实施方式中,在畸变模型808中调整的参数可以例如通过可以包括畸变模型808的神经网络来学习。在一些实施方式中,针对畸变模型808调整的模型参数可以包括神经网络的系数或权重、神经网络的偏差、以及聚类网络中的聚类质心。在一些实施方式中,可以调整超参数(例如,用于调整畸变模型808的学习的参数)来训练畸变模型808。超参数可以包括测试训练分流比、学习速率、优化算法的选择、函数的选择,例如,激活、成本或损失函数、隐藏层数量、丢失率(dropout rate)、迭代次数、簇数量、池化大小、批量大小以及卷积层中的内核或滤波器大小。
[0099] 畸变模型808可以使用任何适当的算法,例如误差反向传播或随机梯度下降来进行训练。通过许多不同的训练迭代,基于提供给畸变模型808的训练数据和示例,畸变模型808学习准确地估计畸变。畸变模型808可以基于一段时间段(例如,小时、天、周等)内的时间序列电感数据进行训练。针对在验证集上的误差和准确度评估畸变模型808。模型训练继续,直到发生超时(例如,通常几个小时),或者达到预定的误差或准确度阈值。在一些实施方式中,模型的整体方法可以由畸变模型808来实现以提高估计畸变的整体准确度。畸变模型808的模型训练和再训练可以以预先配置的节奏重复执行,例如每周一次、每月一次,并且如果新数据在对象存储库中可用,则其自动被用作训练的一部分。用于获取新数据的数据管道与上述相同。
[0100] 在一些实施方式中,畸变模型808可以包括具有多个前馈层的前馈神经网络。每个前馈神经网络可以包括多个全连接层,其中每个全连接层对该层的输入应用仿射变换,即将该层的输入向量乘以该层的权重矩阵。可选地,一个或多个全连接层可以将非线性激活函数(例如,ReLU、逻辑、双曲正切)应用于仿射变换的输出以生成该层的输出。在一些实施方式中,畸变模型808可以包括回归,例如线性、逻辑、多项式、岭(ridge)、LASSO技术。
[0101] 畸变模型808可以执行多种训练技术以改进跟踪系统环境中畸变物的畸变估计,包括监督学习和无监督学习。在一些示例中,畸变模型808执行混合学习技术以改进畸变估计。畸变模型808的训练可以使用所获得的包括已知畸变物的地面实况数据结合已知畸变物的电感测量值来执行。畸变模型808可以调整一个或多个权重或参数以使来自畸变模型808的估计或预测与地面实况数据相匹配。在一些实施方式中,畸变模型808包括一个或多个全连接层或部分连接层。每一层可以包括指示各层的输出的一个或多个参数值。畸变模型808的各层可以生成跟踪系统环境中的畸变物的畸变估计,其可以用于在跟踪系统环境中执行一个或多个控制动作,例如调整一个或多个传感器、医疗装置等的估计位置。
[0102] 除了提供所需的畸变信息之外,畸变管理器800还可以执行其他功能,例如畸变物训练、畸变物测试和验证。畸变管理器800还可以在跟踪系统(例如,电磁跟踪系统100)的计划使用之前准备畸变估计。例如,当新的畸变物被放置在跟踪系统存在的情况下时,畸变管理器800可以对所得到的畸变进行分类并确定这些畸变和先前测量的畸变的相似性。畸变管理器800使得能够提高向计算机系统110和其他潜在接收装置提供关于新的(例如未知的)畸变物的畸变信息的效率。
[0103] 利用人工智能技术可以为畸变模型提供多种训练方式,例如无监督学习、监督学习等,以估计准确的畸变量。另外,用于畸变模型的技术可以以各种实施和配置来执行,例如,用于在收集电感和传感器数据的同时训练模型的离线模式。通过应用人工智能和机器学习技术,畸变管理器800的畸变模型808确定场畸变对象(例如畸变物)在所生成的磁场中的效果。畸变效应可以量化为在所生成的磁场中识别的磁场强度单位(例如以特斯拉、高斯等为单位)的畸变量,但也可以通过类型来描述,例如基于尺寸、材料成分等等。在一些实施方式中,可以相对于预期磁场强度来量化畸变效应,例如,受畸变效应而劣化、减轻或影响的场的量。
[0104] 图9是在不存在畸变物的情况下收集训练数据以训练畸变补偿机器学习系统的示例性过程900的流程图。例如,图1的畸变管理器150可以通过使用数据收集器提取或生成训练示例来执行该过程以便训练畸变模型训练器。在不存在畸变的情况下收集训练数据可以为传感器的跟踪位置提供基线数据,所述基线数据没有干扰发射和接收的信号的磁场中的畸变。
[0105] 例如,通过自感测量、互感测量等来测量发射器阵列的电感(902)。可以将发射器阵列的电感存储为例如电感数据816(参考以上图8。)作为示例,可以使用图5的电路来收集自感测量值(如上所示)。附加或可替代地,可以使用图6的电路来收集互感测量值(如上所示)。电感测量值可以提供给数据收集器,以供畸变模型训练器取回或访问。
[0106] 畸变补偿机器学习系统的数据收集器被配置为接收由放置在发射器阵列的跟踪体积内的传感器提供的信号(904)。数据收集器可以从传感器接收信号,其中接收到的信号提供表示传感器的姿态的测量值。在一些实施方式中,接收到的信号表示捕获传感器的位置、速度、加速度(例如,位置和移动)的时间序列数据。在一些示例中,放置在发射器阵列的跟踪体积内的多个传感器提供表示姿态测量值的单个或多个信号。
[0107] 畸变补偿机器学习系统的计算装置基于接收到的信号来计算姿态,例如传感器的位置和取向数据(906)。例如,接收到的信号包括与取向和位置相对应的测量值以计算传感器的姿态。在一些实施方式中,可以计算传感器姿态的时间序列。在一些示例中,可以计算多个传感器的姿态。
[0108] 测量传感器的真实姿态(例如测量的姿态数据),并将其与计算的传感器姿态进行比较(908)。例如,传感器的真实姿态和计算出的传感器姿态可能表现出显著的误差,例如超过容差值。如果计算出的传感器姿态超过允许的容差值,则测量传感器的真实姿态以重新校准畸变补偿机器学习系统。
[0109] 将电感数据和传感器的真实姿态配对以创建训练数据(910)。畸变补偿机器学习系统的数据收集器和畸变模型训练器可以提取训练示例,例如成对的电感数据和姿态数据。在一些实施方式中,电感数据、真实姿态数据和计算的姿态数据可以耦合在一起以生成训练示例。
[0110] 通过生成基线训练示例,可以训练畸变补偿机器学习系统的畸变模型以确定当跟踪系统在没有畸变物的情况下使用时确定不存在畸变物。例如,畸变模型可以估计指示不存在畸变物的轻微的畸变量(例如,小于阈值)。在一些示例中,可以生成指示不存在畸变物的分类标签作为畸变模型的输出。
[0111] 图10是在畸变物存在的情况下收集训练数据以训练畸变补偿机器学习系统的示例性过程1000的流程图。例如,图1的畸变管理器150可以通过使用数据收集器提取或生成训练示例来执行该过程以便训练畸变模型训练器。在存在各种畸变物的情况下收集训练数据可以提高畸变模型的准确度。
[0112] 例如,基于材料、形状、尺寸,选择将畸变物放置在跟踪系统附近(1002)。例如,示例跟踪系统可以使用多个传感器来为医疗程序提供指导,例如医疗装置、工具等的跟踪辅助。如所讨论的,畸变物可以由影响磁场强度和/或形状的任何材料制成。各种形状和尺寸可以用作畸变物来生成训练示例。
[0113] 然后可以将畸变物放置在发射器阵列附近(1004)。例如,畸变物可以基于跟踪系统的周围环境放置在发射器阵列的下方、上方等。在一些实施方式中,畸变物可以相对于发射器阵列移动到多个位置。畸变物可以在相对于发射器的一个位置处开始,并且在执行过程1000的步骤(例如1006、1008)的同时调整到第二位置、第三位置等。由过程1000生成的训练示例可以包括将畸变放置在以多个时间索引(例如,时间序列数据)表示的多个位置处。
[0114] 当发射器阵列存在畸变物的同时,测量发射器阵列的电感(例如,通过自感测量、互感测量、传感器信号等)(1006)。电感测量可以是收集的自感测量(例如,使用图5的电路)以及收集的互感测量(例如,使用图6的电路)。发射器阵列的电感测量可以被存储在例如数据库中,例如图8的电感数据814,如上所述。
[0115] 传感器可以放置在发射器阵列的跟踪体积内,并且畸变管理器150从传感器接收信号(1008)。例如,接收到的信号包括与传感器姿态的取向、位置和其他方面相对应的测量值。在一些实施方式中,可以测量传感器姿态的时间序列。在一些示例中,多个传感器可以被放置在跟踪体积内。
[0116] 所接收的信号可用于计算传感器的姿态(例如,取向、位置等)(1010)。例如,畸变补偿机器学习系统的计算装置基于接收到的信号来计算姿态,例如传感器的姿态数据。传感器位置的取向、位置和其他方面用于计算传感器姿态。在一些实施方式中,可以计算传感器姿态的时间序列。在一些示例中,可以计算多个传感器的姿态。传感器位置、取向以及因此姿态的计算可以包括物理模型方程的应用。
[0117] 可以测量传感器的真实姿态(1012)。例如,由于磁场的畸变,先前计算的姿态可能与传感器的真实姿态不同。可以通过从跟踪系统去除一个或多个畸变源来测量传感器的真实姿态,以获得传感器的真实姿态的精确测量值,例如真实姿态数据。在一些实施方式中,可以针对跟踪系统中的多个传感器来测量真实姿态。在一些实施方式中,真实姿态可以由相机装置(例如光学系统130)提供,参见上面的图1。
[0118] 将电感数据和传感器的真实姿态配对以创建训练示例,例如训练数据(1014)。畸变补偿机器学习系统的数据收集器和畸变模型训练器可以提取训练示例,例如成对的电感数据和姿态数据。在一些实施方式中,可以耦合电感数据、真实姿态数据和计算的姿态数据来生成训练示例。
[0119] 畸变模型一旦被训练,就可以补偿磁场中的畸变并根据接收到的信号来计算传感器的真实姿态。
[0120] 通过生成基于畸变的训练示例,畸变补偿机器学习系统的畸变模型可以被训练以确定由接近跟踪系统的一个或多个畸变物生成的畸变量。例如,畸变模型可以估计显著的畸变量(例如,大于阈值)并补偿该畸变。在一些示例中,可以生成指示畸变的存在和/或严重性(例如,低、中、高、严重)的分类标签。在一些实施方式中,畸变补偿机器学习系统可以被训练以确定一个或多个已知畸变物的畸变影响,例如跟踪系统中已知畸变物的效应的估计。
[0121] 图11是过程1100的数据流,其表示畸变模型(例如,在由畸变模型训练器810训练之后的畸变模型808机器)的操作。如上所述,可以从训练数据中提取训练示例,例如,电感测量值以及以下各项中的至少一个:真实姿态数据或计算出的姿态数据。
[0122] 可以从在不存在任何畸变物的跟踪系统中获得的电感数据(例如从诸如图9所示的过程900之类的过程收集的数据)提取训练示例。训练示例还可以从在具有任意数量的畸变物的跟踪系统数据中获得的电感数据中提取,例如从诸如图10所示的过程1000的方法收集的数据。在一些实施方式中,可以提取训练示例,其包括与一些时间段中畸变物的存在和其他时间段中畸变物的不存在相对应的电感数据。
[0123] 可以将一组或多组电感数据1102(例如,从发射器阵列接收到的电感)和传感器信号1104(例如,从发射器阵列的跟踪体积内的传感器接收到)提供给畸变补偿器1106。畸变补偿器1106可以根据接收到的电感数据1102和接收到的传感器信号1104确定传感器的姿态。畸变补偿器1106生成表示一个或多个对应传感器的真实姿态的输出1108。一个或多个对应传感器的真实姿态与输入数据相关,例如,提供的一组或多组电感数据1102和一组或多组传感器信号1104。
[0124] 畸变补偿器1106可以基于处理后的数据输入来确定与多个传感器相对应的多个真实姿态。例如,畸变补偿器1106可以确定每个传感器的相应补偿以改进相应传感器的真实姿态的估计。通过提高真实姿态估计的准确度,可以补偿传感器测量准确度以应对由畸变物生成的畸变量。真实姿态数据可以以任何形式表示,例如,各种坐标系,并且在一些实施方式中,可以包括基于畸变补偿器1106能够提取的训练示例的置信度分数。例如,可以向畸变补偿器1106输出的每个真实姿态分配置信度分数或水平,以指示真实姿态正确(例如,在阈值内,被分配正确的标记)的可能性。
[0125] 图12是表示畸变管理器的补偿跟踪系统中的畸变的操作的过程1200的流程图。例如,过程1200可以由图1的畸变管理器150执行。
[0126] 畸变管理器接收表示可以生成电磁场的跟踪系统发射器阵列中的电感的数据(1202)。例如,畸变管理器可以接收使用电磁场的自感测量和互感测量收集的电感数据,分别如图5和图6中所描述的。
[0127] 畸变管理器接收表示姿态的数据,例如传感器的位置和取向(1204)。在一些实施方式中,畸变管理器接收表示以下各项的数据:传感器的多个姿态、一组传感器中的每个传感器的姿态、多个传感器的多个姿态、或其中的某种组合。畸变管理器可以从传感器或耦合到传感器的计算机接收信号,该信号指示传感器的姿态,包括传感器的位置和取向。
[0128] 畸变管理器根据接收到的电感数据来确定跟踪系统发射器阵列的电磁场中的畸变(1206)。例如,畸变管理器可以通过使用畸变模型(例如畸变模型808(参考图8))来确定畸变。畸变模型训练器(例如畸变模型训练器810)可以采用人工智能技术、机器学习算法或其中的某种组合来使用电感数据来训练和测试畸变模型。畸变模型的畸变模型训练器可以将估计的畸变与电磁场中畸变的地面实况测量值进行比较。作为示例,估计的畸变可能超过阈值误差值,其中畸变模型训练器重复畸变模型的训练,直到畸变模型生成具有阈值误差值的估计畸变值。在一些实施方式中,阈值误差值是可以由畸变模型训练器和畸变模型训练和更新的可学习参数。
[0129] 畸变模型使用训练示例,训练示例包括接收第一组电感数据,第一组电感数据表示发射器阵列中没有畸变物的情况下电磁场的电感测量值。训练示例还包括第二组电感数据,第二组电感数据表示发射器阵列中有一个或多个畸变物的情况下电磁场的电感测量值。畸变模型可以处理第一组电感数据和第二组电感数据两者以识别畸变检测和估计中的模式。畸变模型还可以比较第一组电感数据和第二组电感数据两者以优化基本目标函数,所述基本目标函数估计在发射器阵列的电磁场中检测到的畸变量。
[0130] 畸变管理器基于发射器阵列的电磁场中的畸变来确定对传感器的补偿(1208)。例如,畸变管理器可以使用描述在电磁场中检测到的畸变量的生成的或确定的值。检测到的畸变量可以称为补偿值、调整因子等。畸变管理器基于姿态(例如,位置和取向)来针对传感器确定跨不同维度(例如,自由度)的一系列校准或校正因子。通过这样做,畸变管理器确定来自一个或多个传感器的测量值的精确映射,其被调整以包括来自畸变的补偿并识别姿态的真实估计,例如一个或多个传感器的真实姿态。
[0131] 畸变管理器基于对电磁场中畸变的补偿来确定真实姿态,例如一个或多个传感器的位置和取向(1210)。畸变管理器应用所确定的畸变补偿来准确地确定发射器阵列中的每个传感器的位置和取向。一个或多个传感器的真实姿态的更新值可以被提供给计算装置。在一些实施方式中,真实姿态可以被提供用于显示,以及被传输到远程装置或服务器。在一些实施方式中,真实姿态可以被持续更新并作为估计的时间序列提供以记录或跟踪环境中的一个或多个传感器。
[0132] 图13示出了可用于实现本文描述的技术的示例计算装置1300和示例移动计算装置1350。例如,计算装置1300可以被实现为图1的计算机系统110。计算装置1300旨在表示各种形式的数字计算机,包括例如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算装置1350旨在表示各种形式的移动装置,包括例如个人数字助理、蜂窝电话、智能手机和其他类似的计算装置。这里示出的组件、它们的连接和关系以及它们的功能仅意味着示例,并且并不意味着限制本文档中描述和/或要求保护的技术的实现。
[0133] 计算装置1300包括处理器1302、存储器1304、存储装置1306、连接到存储器1304和高速扩展端口1310的高速接口1308、以及连接到低速总线1314和存储装置1306的低速接口1312。组件1302、1304、1306、1308、1310和1312中的每一个使用各种总线互连,并且可以安装在公共主板上或以其他方式酌情安装。处理器1302可以处理用于在计算装置1300内执行的指令,包括存储在存储器1304中或存储装置1306上的指令,以在外部输入/输出装置(包括例如耦合到高速接口1308的显示器1316)上显示GUI的图形数据。在一些实施方式中,可以酌情使用多个处理器和/或多条总线以及多个存储器和存储器类型。另外,可以连接多个计算装置1300,其中每个装置提供必要操作的部分(例如,作为服务器库(server bank)、一组刀片服务器、多处理器系统等)。
[0134] 存储器1304将数据存储在计算装置1300内。在一些实施方式中,存储器1304是一个或多个易失性存储器单元。在一些实施方式中,存储器1304是一个或多个非易失性存储器单元。存储器1304还可以是另一种形式的计算机可读介质,包括例如磁盘或光盘。
[0135] 存储装置1306能够为计算装置1300提供大容量存储。在一些实施方式中,存储装置1306可以是或包含计算机可读介质,包括例如软盘装置、硬盘装置、光盘装置、磁带装置、闪存或其他类似的固态存储装置、或装置阵列,包括存储区域网络或其他配置中的装置。计算机程序产品可以有形地体现在数据载体(data carrier)中。计算机程序产品还可以包含指令,这些指令在被执行时执行一种或多种方法,包括例如上面描述的那些方法。数据载体是计算机或机器可读介质,包括例如存储器1304、存储装置1306、处理器上的存储器1302等。
[0136] 高速控制器1308管理计算装置1300的带宽密集型操作,而低速控制器1312管理较低带宽密集的操作。这种功能分配仅是示例。在一些实施方式中,高速控制器1308耦合到存储器1304、显示器1316(例如,通过图形处理器或加速器)以及高速扩展端口1310,高速扩展端口1310可以接受各种扩展卡(未示出)。在一些实施方式中,低速控制器1312耦合到存储装置1306和低速扩展端口1314。低速扩展端口(其可以包括各种通信端口(例如,USB、以太网、无线以太网))可以耦合到一个或多个输入/输出装置,包括例如键盘、定点装置、扫描仪或包括例如交换机或路由器的联网装置(例如通过网络适配器)。
[0137] 计算装置1300可以以多种不同的形式来实现,如图13中所示。例如,计算装置1300可以被实现为标准服务器1320,或者在一组这样的服务器中多次实现。计算装置1300还可以被实现为机架服务器系统1324的一部分。另外或作为替代,计算装置1300可以在个人计算机(例如,膝上型计算机1322)中实现。在一些示例中,来自计算装置1300的组件可以与移动装置(例如,移动计算装置1350)中的其他组件组合。每个这样的装置可以包含一个或多个计算装置1300、1350,并且整个系统可以由彼此通信的多个计算装置1300、1350组成。
[0138] 计算装置1350包括处理器1352、存储器1364和输入/输出装置,输入/输出装置包括例如显示器1354、通信接口1366和收发器1368等组件。装置1350还可以配备有存储装置,包括例如微驱动器或其他装置,以提供附加存储。组件1350、1352、1364、1354、1366和1368均可以使用各种总线互连,并且多个组件可以安装在公共母板上或以其他方式酌情安装。
[0139] 处理器1352可以执行计算装置1350内的指令,包括存储在存储器1364中的指令。处理器1352可以被实现为由包括单独的多个模拟和数字处理器的芯片构成的芯片组。处理器1352可以提供例如装置1350的其他组件的协调,包括例如对用户接口、装置1350运行的应用以及装置1350的无线通信的控制。
[0140] 处理器1352可以通过耦合到显示器1354的控制接口1358和显示接口1356与用户通信。显示器1354可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器,或其他适当的显示技术。显示接口1356可以包括用于驱动显示器1354以向用户呈现图形和其他数据的适当电路。控制接口1358可以接收来自用户的命令并且转换它们以提交给处理器1352。此外,外部接口1362可以与处理器1342通信,以便使得装置1350能够与其他装置进行近区域通信。外部接口1362可以例如在一些实施方式中提供有线通信,或者在一些实施方式中提供无线通信。也可以使用多个接口。
[0141] 存储器1364将数据存储在计算装置1350内。存储器1364可以被实现为以下各项中的一项或多项:一个或多个计算机可读介质、一个或多个易失性存储器单元、或一个或多个非易失性存储器单元。还可以提供扩展存储器1374并且通过扩展接口1372将其连接到装置1350,扩展接口1372可以包括例如SIMM(单列直插存储器模块)卡接口。这样的扩展存储器
1374可以为装置1350提供额外的存储空间,和/或可以为装置1350存储应用或其他数据。具体地,扩展存储器1374还可以包括用于执行或补充上述过程的指令并且可以包括安全数据。因此,例如,扩展存储器1374可以被提供作为装置1350的安全模块,并且可以用允许安全使用装置1350的指令进行编程。此外,可以通过SIMM卡与附加数据一起提供安全应用,包括例如以不可破解的方式将识别数据放置在SIMM卡上。
[0142] 存储器1364可以包括例如闪存和/或NVRAM存储器,如下文所讨论的。在一些实施方式中,计算机程序产品有形地体现在数据载体中。计算机程序产品包含当被执行时执行一种或多种方法的指令。数据载体是计算机或机器可读介质,包括例如存储器1364、扩展存储器1374和/或处理器上的存储器1352,其可以例如通过收发器1368或外部接口1362被接收。
[0143] 装置1350可以通过通信接口1366进行无线通信,通信接口1366可以在必要时包括数字信号处理电路。通信接口1366可以提供各种模式或协议下的通信,包括例如GSM语音呼叫、SMS、EMS或MMS消息传送、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这种通信可以例如通过射频收发器1368进行。此外,可以进行短距离通信,包括例如使用 WiFi或其他这样的收发器(未示出)。另外,GPS(全球定位系统)接收器模块1370可以向装置1350提供附加的导航和位置相关的无线数据,这些数据可以酌情地由在装置1350上运行的应用使用。
[0144] 装置1350还可以使用音频编解码器1360进行可听通信,音频编解码器1360可以从用户接收说话数据并将其转换为可用的数字数据。音频编解码器1360同样可以为用户生成可听声音,包括例如通过例如扬声器(例如在装置1350的听筒中)。这种声音可以包括来自语音电话呼叫的声音、录制的声音(例如语音消息、音乐文件等)以及由在装置1350上运行的应用生成的声音。
[0145] 计算装置1350可以以多种不同的形式来实现,如图13中所示。例如,计算装置1350可以被实现为蜂窝电话1380。计算装置1350还可以被实现为智能电话1382、个人数字助理或其他类似移动设备的一部分。
[0146] 这里描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序。这包括至少一个可编程处理器,其可以是专用的或通用的,被耦合以从存储系统、至少一个输入装置和至少一个输出装置接收数据和指令以及向存储系统、至少一个输入装置和至少一个输出装置发送数据和指令。
[0147] 这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或以汇编/机器语言来实现。如本文所使用的,术语机器可读介质和计算机可读介质指的是用于提供机器指令和/或数据给可编程处理器的计算机程序产品、设备和/或装置(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令的机器可读介质。
[0148] 为了提供与用户的交互,本文描述的系统和技术可以在具有用于向用户呈现数据的显示装置(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以向计算机提供输入的键盘和定点装置(例如,鼠标或轨迹球)的计算机上实现。也可以使用其他类型的装置来提供与用户的交互。例如,提供给用户的反馈可以是感觉反馈的形式(例如,视觉反馈、听觉反馈或触觉反馈)。来自用户的输入可以以包括声音、语音或触觉输入的形式被接收。
[0149] 这里描述的系统和技术可以在包括后端组件(例如,作为数据服务器)、或者包括中间件组件(例如,应用服务器)、或者包括前端组件(例如,具有用户接口或网络浏览器的客户端计算机,用户可以通过其与此处描述的系统和技术的实现进行交互),或者此类后端组件、中间件组件或前端组件的组合的计算系统中实现。系统的组件可以通过数字数据通信的形式或介质(例如,通信网络)互连。通信网络的示例包括局域网(LAN)、广域网(WAN)和互联网。
[0150] 计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络进行交互。客户端和服务器的关系是通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计算机程序而产生的。
[0151] 在一些实施方式中,本文描述的组件可以被分离、组合或并入单个或组合组件中。图中描绘的组件并不旨在将本文描述的系统限制为图中所示的软件架构。
[0152] 已经描述了多个实施例。然而,应当理解,在不脱离本公开的精神和范围的情况下可以做出各种修改。因此,其他实施例在所附权利要求的范围内。

当前第1页 第1页 第2页 第3页