1.本发明涉及工程技术领域,特别涉及一种穿刺针空间位姿统一方法及系统。
背景技术:2.肝癌无论是在中国还是在世界,都是癌症的第一大杀手。当前基于ct引导下的肝脏穿刺、活检手术等作为一种重要的诊断方式。穿刺手术,是指将穿刺针刺入体内的体腔中,抽取液体进行进一步的化验或者向体腔内注入某种化学物质或空气等,作为一种治疗或检查方式而在临床上广泛应用。根据病情不同,可行不同部位的穿刺手术。临床上常见的有硬膜外穿刺、胸腔穿刺、腹腔穿刺、腰椎穿刺、动静脉穿刺等。穿刺针属于介入放射学器材,是进行穿刺手术必要的耗材之一,该手术目前主要依靠医生徒手进行下针操作,之后再由医学影像进行确认.手术精度低,风险高,导致该手术时间长,容易引起并发症。为了解决上述问题,通过手术机器人辅助手术是近几年逐渐流行的手术方式,通过机器人辅助下针的研究也有一定的时间。使用机器人辅助手术,涉及的问题包括:穿刺器械、ct医学影像设备、机械臂等外设间的穿刺针度空间配准,以及穿刺精度的问题。目前市场上有一部分手术是手术机器人来搭配医生来完成,手术机器人规划好穿刺路径及角度,医生只需要按照角度完成插针动作即可,但是同样存在一定的误差,如果推荐的路径及角度不合适,还需要医生根据经验,结合其医学知识来预测肿瘤位置及插针角度等,来手动修改插针路径。
技术实现要素:3.本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种穿刺针空间位姿统一方法及系统,能够提高穿刺针位姿统一的精确度。
4.本发明实施例的一方面提供一种穿刺针空间位姿统一方法,包括以下步骤:获取穿刺对象的标志点在第一坐标系下的第一位置信息;通过操作穿刺针定位所述标志点在第二坐标系下的第二位置信息;根据所述第一位置信息和所述第二位置信息得到位置转移矩阵;基于所述位置转移矩阵,对所述穿刺针进行位置统一;获取所述穿刺针在所述第二坐标系下的第二方向信息;根据所述第二方向信息和所述位置转移矩阵,得到所述穿刺针在所述第一坐标系下的姿态信息。
5.根据本发明的一些实施例,所述获取穿刺对象的标志点在第一坐标系下的位置信息包括:通过ct成像获取含有所述标志点的信息的原始数据;通过医学影像分割算法分割所述标志点,获取每个所述标志点在所述第一坐标系下的位置信息。
6.根据本发明的一些实施例,所述通过操作穿刺针定位所述标志点在第二坐标系下的第二位置信息包括:操作所述穿刺针的针尖点在每个所述标志点的中心处;通过光学设备对设置在所述穿刺针上的若干个被动小球进行定位跟踪,得到所述被动小球在所述第二坐标系下的位置信息;根据所述位置信息以及所述穿刺针的结构,得到所述标志点在所述第二坐标系下的第二位置信息。
7.根据本发明的一些实施例,所述穿刺针的结构为y型结构,包括笔身和分笔尖;所
述若干个被动小球包括第一被动小球、第二被动小球、第三被动小球和第四被动小球;所述方法还包括:以所述穿刺针的针尖为原点、笔身为x轴建立直角坐标系,得到第三坐标系;其中,所述第一被动小球和第二被动小球位于x轴上。
8.根据本发明的一些实施例,所述基于所述位置转移矩阵,对所述穿刺针进行位置统一包括:根据所述穿刺针的被动小球在所述第二坐标系下的第三位置信息以及所述位置转移矩阵,得到所述被动小球在所述第一坐标系下的第四位置信息。
9.根据本发明的一些实施例,所述获取所述穿刺针在所述第二坐标系下的第二方向信息包括:根据所述第一被动小球和所述第二被动小球在所述第二坐标系的位置信息,得到所述穿刺针在所述第二坐标系下的第二方向信息。
10.根据本发明的一些实施例,所述根据所述第二方向信息和所述位置转移矩阵,得到所述穿刺针在所述第一坐标系下的姿态信息包括:获取所述第二方向信息中的方向向量,并获取在所述方向向量上的一个点的位置信息;根据所述位置转移矩阵,得到所述点在所述第一坐标系下的位置信息;根据所述点的位置信息得到所述穿刺针在第一坐标系下的直线方向向量,并得到对应的姿态信息。
11.根据本发明的一些实施例,所述操作所述穿刺针的针尖点在每个所述标志点的中心处;通过光学设备对设置在所述穿刺针上的若干个被动小球进行定位跟踪,得到所述被动小球在所述第二坐标系下的位置信息包括:将所述针尖停留在每个所述标志点的中心点若干秒,且在每个所述中心点获取所述若干个位置信息,并将所述位置信息求取平均值,得到每个所述标志点的中心点的位置信息。
12.本发明实施例另一方面提供一种穿刺针空间位姿统一系统,用于实现上述的穿刺针空间位姿统一方法,包括:穿刺针,包括本体和设置在所述本体上的若干个被动小球;穿刺对象,包括对象本体和设置在所述本体上的若干个标志点;光学设备,用于定位跟踪所述被动小球;ct成像模块,用于对所述穿刺对象进行ct成像。
13.本发明实施例至少具有如下有益效果:本发明实施例提出了一种基于光学设备的高精度的穿刺针位姿实时统一方法,能够准确计算穿刺针、ct、标记物和光学设备之间的多系统变换关系,无需医生手动干预。在术前利用影像匹配手术针和标记物的方法,同时提出了一种涉及误差反馈补偿法精确获取工件位置信息,在一定程度上减少了配准误差,同时也确保了姿态的精确度。整体配准方法精度高且容易实现,容易应用到工程实现中。
14.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
15.本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
16.图1为本发明实施例的方法的流程示意图;
17.图2为本发明实施例的穿刺针结构示意图;
18.图3为本发明实施例ndi坐标系下的穿刺针示意图;
19.图4为本发明实施例的系统的模块示意框图;
20.图5为用于本发明实施例的现场布局示意图。
21.附图标记:
22.穿刺针100、穿刺对象200、光学设备300、ct成像模块400。
具体实施方式
23.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
24.在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个及两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
25.为了精确实现穿刺针在不同坐标系下的位姿统一,包括位置及姿态统一,本发明提出了一种基于自定义标志物的空间位姿实时统一的工程化实现方法,采用光学跟ct影像相结合,使得位姿统一精度更加准确,同时解决现在医生徒手插针及过程麻烦的问题。
26.为克服位姿实时统一的不足,本发明设计了自定义工件(穿刺针)作为标志物,通过标志物的在不同坐标系下的姿态信息,实现了一种高精度实时统一位姿的方法。首先是位置统一:获取不同坐标系下的位置信息,根据两个坐标系下的对应位置信息获取对应的转换矩阵,从而实现不同坐标系下的位置的统一;其次是姿态统一:即工件的旋转,根据设计的工件结构,获取工件在当前坐标系下的方向信息,根据数学空间几何知识获取工件方向向量,结合位置统一生成的转换矩阵,来实现其姿态对应统一。
27.参照图1,本发明实施例的方法包括以下步骤:获取穿刺对象的标志点在第一坐标系下的第一位置信息;通过操作穿刺针定位标志点在第二坐标系下的第二位置信息;根据第一位置信息和第二位置信息得到位置转移矩阵;基于位置转移矩阵,对穿刺针进行位置统一;获取穿刺针在第二坐标系下的第二方向信息;根据第二方向信息和位置转移矩阵,得到穿刺针在第一坐标系下的姿态信息。
28.本实施例中的第一坐标系为ct成像后影像下的坐标系,第二坐标系为用于跟踪穿刺针位置的ndi光学设备实现的。
29.本发明实施例的穿刺针是自定义的工件,基于ndi光学设备来实现的,工件设计符合光学设备机构需求,包括结构独特,结构上被动小球的个数不得低于三个,各个被动球之间的最短距离等。
30.参照图2,示例性的,穿刺针的结构为y型结构,包括笔身和分笔尖;若干个被动小球包括被动小球1、被动小球2、被动小球3和被动小球4;本发明的方法还包括:以穿刺针的针尖为原点、笔身为x轴建立直角坐标系,得到第三坐标系。本实施例的穿刺针既满足了工件结构要求,同时也方便实际应用。本实施例中,根据光学设备的工件实用需求,预先设定了工件的基本参数信息,针尖为原点位置,4个小球在xy平面上,被动小球1和2同在x轴上,且为x轴负方向。
31.由于本发明实施例使用的是ndi光学导航设备,这里工件结构设计主要是根据ndi导航设备官方要求来设计,因为不是所有机构设计都可以直接使用,必须基于ndi的工具设计要求,所有小球不在同一个平面上,不可以同时三个小球在一条直线上,角度不可为直
角,同时两个小球之前的距离不得小于45mm等。本发明实施例的工件为y形结构,采用4个小球。由于ndi官方自带工具可以根据工件上小球的位置,实时获取用户自定义中心点位置信息,在一些实施例中,将针尖位置设置为本工件的中心点。
32.在硬件上,该工件整体采用铝合金材料制作,由分笔尖、笔身、ndi小球组件等部分组成。其自带电池,可持续工作4小时,笔身侧面设置有开关机键可以实现笔的开机和关机,正面设有信号采集确认和删除键,通过内置无线wifi信号可以实现笔尖所指位置点的自主拾取、删除和编辑等功能。另外笔身上设有状态指示灯,方便使用者根据状态指示灯确认相关操作是否完成执行。小球本身为ndi公司原厂生产的被动识别小球,结构设计整体是一方面满足ndi公司结构要求,另一方面考虑姿态计算方便。
33.在一些实施例中,获取穿刺对象的标志点在第一坐标系下的位置信息的方法包括:通过ct成像获取含有标志点的信息的原始数据;通过医学影像分割算法分割标志点,获取每个标志点在第一坐标系下的位置信息。
34.在一些实施例中,通过操作穿刺针定位标志点在第二坐标系下的第二位置信息包括:操作穿刺针的针尖点在每个标志点的中心处;通过光学设备对设置在穿刺针上的若干个被动小球进行定位跟踪,得到被动小球在第二坐标系下的位置信息;根据位置信息以及穿刺针的结构,得到标志点在第二坐标系下的第二位置信息。本实施例以针尖位置为穿刺针的中心点。ndi官方自带工具可以根据穿刺针上被动小球的位置,实时获取用户自定义中心点(即针尖)位置信息,从而得到标志点在第二坐标系下的第二位置信息。
35.在一些实施例中,采用腹部体膜作为穿刺对象来实验,穿刺针位置统一的方法包括:
36.第一步:在腹部体模上放置6个标志点,通过ct成像,获取含有标志点信息的体模原始数据,然后这里我们通过目前上流行的阅片软件来分割标志点,获取每个标志点影像下的位置信息p1(x,y,z);
37.第二步:获取每个标志点在光学设备下的位置信息,首先用穿刺针的针尖点在每个标志点的中心处,从而获取每个标志点在光学设备下的位置坐标p2(x,y,z);
38.第三步:通过前两步获取标志点在不同坐标系下的位置信息,获取腹部体模的位置转换矩阵t1。因为这里目前只考虑了两坐标系下的位置信息,不涉及旋转,根据三维空间中点的平移,即可获取物体的转换矩阵。即点p(x,y,z)经过在x,y,z方向分别平移一定的距离d,得到点p1(x1,y1,z1),则两点间的关系即:
39.x1-x+d1;y1=y+d2;z1=z+d3。
40.因此,对应的齐次转换矩阵可以表示为:
[0041][0042]
这里穿刺针位置的统一,主要是为了将穿刺针的tp直线,统一到对应虚拟人体坐标下,根据体膜表面贴的5个小球,利用vtk标定函数库获取对应转换矩阵来实现空间位置统一,这里ndi坐标系下的小球位置点信息为
‑‑
虚拟人体下的小球点的位置信息,是通过医学影像分割算法分割小球,然后获取每个小球的重心,来确定其虚拟人体下的位置信息,对
应的转换矩阵为:
[0043]
tndi_virtual=vtk.landmark(sx,tx)。
[0044]
在一些实施例中,获取穿刺针在第二坐标系下的第二方向信息的方法包括:根据被动小球1和被动小球2在第二坐标系的位置信息,得到穿刺针在第二坐标系下的第二方向信息。由于本实施例的穿刺针结构设计使针尖所在方向上的两个被动小球1和2同时在x轴上,且两个被动小球所在方向平行于针尖所在的方向,所以可以通过两个被动小球的位置,获取当前姿态的方向信息,同时也是穿刺针的方向。
[0045]
在一些实施例中,根据第二方向信息和位置转移矩阵,得到穿刺针在第一坐标系下的姿态信息的方法包括:获取第二方向信息中的方向向量,并获取在方向向量上的一个点的位置信息;根据位置转移矩阵,得到点在第一坐标系下的位置信息;根据点的位置信息得到穿刺针在第一坐标系下的直线方向向量,并得到对应的姿态信息。
[0046]
在一些实施例中,以上述的采用腹部体膜来实验为例,穿刺针姿态统一的方法包括:考虑实际手术用穿刺针结构,这里姿态统一为实现针尖所在方向的统一。通过两个被动小球的位置,获取当前姿态的方向信息,同时也是穿刺针的方向。根据此方向信息获取针尖所在方向上的另外一点的位置信息,结合位置转移矩阵t1,可以获取到影像坐标系下的对应点的位置坐标,从而实现相应的姿态统一。
[0047]
由vx=x1-x;vy=y1-y;vz=z1-z可得体模坐标系1下的直线方向向量,由于向量在不同坐标系下不变,根据空间直线方程,获取p(x,y,z)在此方向向量下的另外一点的坐标r(x,y,z),则当前坐标系下对应的坐标为:
[0048]
r1(x,y,z)=t1*r(x,y,z)
[0049]
由此可得对应坐标系下的姿态信息。
[0050]
参照图3,ndi坐标系下,可以获取点a、b、o的坐标信息,由于穿刺针为直直的一根,这里我们模拟虚线tp为穿刺针,并转换至虚拟人体坐标系下,来进行位置及姿态统一,每个坐标点对应于虚拟人体坐标系下的坐标可以直接通过tndi_virtual求得,例如为a(x,y,z)=tndi
virtual
*a(x,y,z)。这里关于姿态的计算根据ab姿态直接获取tp的姿态,
[0051]
vab=b(x,y,z)-a(x,y,z)
[0052]
p(x,y,z)=o(x,y,z)+vab*160
[0053]
t(x,y,z)=o(x,y,z)-vab*160
[0054]
根据pt的位置信息,直接在虚拟人体画一根线进行实时对应,从而达到姿态统一。
[0055]
在一些实施例中,上述的操作穿刺针的针尖点在每个标志点的中心处;通过光学设备对设置在穿刺针上的若干个被动小球进行定位跟踪,得到被动小球在第二坐标系下的位置信息的方法包括:将针尖停留在每个标志点的中心点若干秒,且在每个中心点获取若干个位置信息,并将位置信息求取平均值,得到每个标志点的中心点的位置信息。本实施例采用误差反馈补偿:由于手动用工件进行点点,会存在一定的误差,包括手抖、标志物大小等原因,会导致误差偏大。为减少以上误差,采用五秒采点法获取标志点的位置信息,由于光学设备下的点是实时波动的,这里我们通过在每个标志点中心处点5秒,且在每个中心点位置采5个位置信息,求取平均值,来确定每个标志点中心的位置信息。在一定程度上可以有效减小误差。
[0056]
参照图4,本发明实施例还提出一种穿刺针空间位姿统一系统,用于实现上述的穿
刺针空间位姿统一方法,包括:穿刺针100,包括本体和设置在本体上的若干个被动小球;穿刺对象200,包括对象本体和设置在本体上的若干个标志点;光学设备300,用于定位跟踪被动小球;ct成像模块400,用于对穿刺对象进行ct成像。
[0057]
参照图5,现场设置了ct成像设备、腹部体膜、穿刺针、光学设备及计算机。实验过程中,我们通过画小球来验证位置配准信息,我们用穿刺针在体模上点下一个位置点信息,通过获取的位置转移矩阵,获取影像下对应位置的点的位置信息。通过在影像的对应位置处画一个一个半径为2pixel的小球,来确认位置转移矩阵是否正确。
[0058]
同时,为了验证工件方向信息,同时采用画小球来验证,分别在针尖及针尖方向的另外一点处画一个小球,为了展示方便,统一小球半径为5pixel,同时可视化两球之间的直线,来核对对应的方向信息。
[0059]
尽管本文描述了具体实施方案,但是本领域中的普通技术人员将认识到,许多其它修改或另选的实施方案同样处于本公开的范围内。例如,结合特定设备或组件描述的功能和/或处理能力中的任一项可以由任何其它设备或部件来执行。另外,虽然已根据本公开的实施方案描述了各种例示性具体实施和架构,但是本领域中的普通技术人员将认识到,对本文所述的例示性具体实施和架构的许多其它修改也处于本公开的范围内。
[0060]
应当认识到,本发明实施例中的方法步骤可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
[0061]
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个微处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个微处理器执行的多个指令。
[0062]
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
[0063]
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
[0064]
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。