骨骼数据处理方法、系统、可读存储介质和设备
文献发布时间:2023-06-19 11:06:50
技术领域
本申请涉及医疗影像技术领域,特别是涉及一种骨骼数据处理方法、系统、可读存储介质和设备。
背景技术
目前,骨骼关节类的疾病发病率较高,尤其是骨骼的增生介质,进行骨骼修复被认为是较佳的治疗方案,可应用于骨折、骨头坏死以及先天性骨骼发育不良等疾病中。
在骨骼修复的实际应用中,经常使用磨锉工具对骨骼进行磨锉,如何确定骨骼的待磨区域是其中的关键步骤。相关技术中一般将骨骼数据转换成磨锉工具的网格模型数据格式,计算骨骼的网格模型和磨锉工具的网格模型在规划位置放置时的交集来确定待磨区域。该待磨区域的计算通常只是用于显示待磨区域的视觉效果,而且在网格模型环境中难以执行图像后处理操作,降低了图像后处理算法的拓展性。
发明内容
基于此,有必要针对相关技术中待磨区域的计算难以执行图像后处理操作,降低了图像后处理算法的拓展性的问题,提供一种骨骼数据处理方法、系统、可读存储介质和设备。
第一方面,本申请提供了一种骨骼数据处理方法,包括以下步骤:
获取目标骨骼图像;
解析适用于目标骨骼的磨锉工具的网格模型,获得网格模型的面片和顶点,根据面片和顶点提取磨锉工具的磨锉面;其中,顶点位于面片的边缘;
根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域;
根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域;
根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。
在其中一个实施例中,根据面片和顶点提取磨锉工具的磨锉面包括以下步骤:
遍历网格模型的面片的法向量,根据法向量对面片进行筛选,获取第一面片,其中,第一面片的法向量的方向指向网格模型外侧;
根据第一面片获取磨锉面。
在其中一个实施例中,根据第一面片获取磨锉面包括以下步骤:
遍历第一面片的顶点,获取第一面片的顶点到网格模型的中心点的距离作为第一距离,若第一距离与网格模型的尺寸的绝对差值小于预设值,将第一面片的顶点作为磨锉面的第一体素点,以得到磨锉面。
在其中一个实施例中,根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域包括以下步骤:
匹配网格模型和目标骨骼图像的位置,获取第二体素点与网格模型的中心点的距离作为第二距离,其中第二体素点包括目标骨骼图像的体素点,若第二距离小于网格模型的尺寸与阈值之差,将该第二体素点的集合作为第一待磨区域。
在其中一个实施例中,根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域包括以下步骤:
匹配网格模型和目标骨骼图像的位置,获取目标骨骼图像的体素点作为第三体素点,其中,第三体素点与网格模型的中心点的距离在预设范围内,预设范围的最大值为网格模型的尺寸与阈值之和,预设范围的最小值为网格模型的尺寸与阈值之差;
若第三体素点在网格模型的面片内侧,将该第三体素点的集合作为第二待磨区域。
在其中一个实施例中,若第三体素点在网格模型的面片内侧,将该第三体素点的集合作为第二待磨区域包括以下步骤:
获取第三体素点相对于网格模型的中心点的第一方向向量,以及磨锉面的面片的法向量;
根据第一方向向量和法向量的夹角,确定与第三体素点距离最近的第二面片;
获取第三体素点至第二面片的顶点的第二方向向量,根据第二方向向量与第二面片的法向量的夹角,判断第三体素点是否在第二面片内侧。
在其中一个实施例中,目标骨骼图像包括髋关节图像,磨锉工具的网格模型包括球形。
第二方面,本申请提供了一种骨骼数据处理系统,包括:
图像获取单元,用于获取目标骨骼图像;
模型处理单元,用于解析适用于目标骨骼的磨锉工具的网格模型,获得网格模型的面片和顶点,根据面片和顶点提取磨锉工具的磨锉面;其中,顶点位于面片的边缘;
第一筛选单元,用于根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域;
第二筛选单元,用于根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域;
区域确定单元,用于根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。
第三方面,本申请提供了一种可读存储介质,其上存储有可执行程序,可执行程序被处理器执行时实现上述任一骨骼数据处理方法的步骤。
第四方面,本申请提供了一种骨骼数据处理设备,包括机械臂,电动锉和光学导航仪器;光学导航仪器用于根据上述骨骼数据处理方法确定的第一待磨区域和第二待磨区域,驱动机械臂移动;电动锉位于机械臂的末端,在机械臂移动到目标骨骼的指定位置时,对目标骨骼进行磨锉。
相比于相关技术,本申请提供的骨骼数据处理方法、系统、可读存储介质和设备是获取目标骨骼图像,利用适用于目标骨骼的磨锉工具的网格模型,获取网格模型的面片和顶点,并进一步提取磨锉工具的磨锉面;根据网格模型的尺寸对目标骨骼图像进行初步筛选,获取第一待磨区域;根据磨锉面对目标骨骼图像进行进一步筛选,获取第二待磨区域,根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。在具体实现过程中,骨骼图像数据无需转换成磨锉工具的网格模型数据格式,还可得到待磨区域,提高了骨骼图像数据处理的时效性,而且由于待磨区域保持图像数据特性,不仅可用于显示效果,还可用于进行更多的图像后处理操作,保存为新的数据,拓展图像后处理的范围。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为一个实施例中的示例性医学设备100的示意图;
图2为一个实施例中的在其上实现处理引擎140的示例性计算设备200的示例性硬件和/或软件组件的示意图;
图3为一个实施例中的可以在其上实现终端130的示例性移动设备300的示例性硬件和/或软件组件的示意图;
图4为一个实施例中的骨骼数据处理方法的流程示意图;
图5为一个实施例中的磨锉工具的网格模型的渲染图;
图6为一个实施例中的磨锉面的提取流程示意图;
图7为一个实施例中的对待磨区域进行筛选的效果示意图;
图8为一个实施例中的选择最近邻面片的示意图;
图9为一个实施例中的判断体素点在面片内外的示意图;
图10为一个实施例中的髋臼锉网格模型所有顶点的可视化效果图;
图11为一个实施例中的髋臼锉网格模型的磨锉面的提取效果图;
图12为一个实施例中的髋臼锉磨锉的场景模拟示意图;
图13为一个实施例中的髋臼锉磨锉的效果示意图;
图14为一个实施例中的骨骼数据处理系统的结构示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本申请,并不限定本申请的保护范围。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
虽然本申请对根据本申请的实施例的系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在成像系统和/或处理器上。模块仅是说明性的,并且系统和方法的不同方面可以使用不同模块。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,或将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是一个实施例的示例性用于骨骼数据处理的医学设备100的示意图。参考图1所示,医学设备100可包括扫描仪110、网络120、一个或多个终端130、处理引擎140以及存储器150。医学设备100中的所有组件都可以通过网络120互相连接。
扫描仪110可扫描对象并且生成与该扫描对象相关的骨骼扫描数据。在一些实施例中,扫描仪110可以是医学成像设备,例如CT设备、PET设备、SPECT设备、MRI设备等或其任意组合(例如,PET-CT设备或CT-MRI设备)。
本申请中提到的“图像”可以指2D图像、3D图像、4D图像和/或任何相关数据,这并非旨在限制本申请的范围。对于本领域的技术人员来说,在本申请的指导下可以进行各种修正和改变。
扫描仪110可包括支撑组件111、探测器组件112、扫描床114、电子模块115以及冷却组件116。
支撑组件111可以支撑扫描仪110的一个或多个部件,例如探测器组件112、电子模块115、冷却组件116等。在一些实施例中,支撑组件111可以包括主机架、机架基座、前盖板以及后盖板(未出示)。前盖板可以与机架基座连接。前盖板可以垂直于机架基座。主机架可以安装于前盖板的侧面。主机架可以包括一个或多个支撑架以容纳探测器组件112和/或电子模块115。主机架可以包括圆形的开口(例如,检测区域113)以容纳受试目标。在一些实施例中,主机架的开口可以是其它形状,包括,例如椭圆形。后盖板可以安装于主机架上与前盖板相对的侧面。机架基座可以支撑前盖板、主机架和/或后盖板。在一些实施例中,扫描仪110可以包括一个外壳以覆盖并保护主机架。
探测器组件112可以探测从检测区域113发射的辐射事件(例如,X射线信号等)。在一些实施例中,探测器组件112可以接收辐射线(例如,X射线信号等)并且生成电信号。探测器组件112可以包括一个或多个探测器单元。一个或多个探测器单元可以被封装而形成一个探测器区块。一个或多个探测器区块可以被封装而形成一个探测器盒。一个或多个探测器盒可以被安装而形成一个探测环。一个或多个探测环可以被安装而形成一个探测器模块。
扫描床114可以支撑受试目标并将受试目标定位于检测区域113中所需位置。在一些实施例中,受试目标可以在扫描床114上。扫描床114可以移动并且到达检测区域113中的所需位置。在一些实施例中,扫描仪110可以具有相对较长的轴向视野,例如2米长的轴向视野。相应地,扫描床114可以沿着轴向在较广范围(例如,大于2米)内移动。
电子模块115可以采集和/或处理由探测器组件112生成的电信号。电子模块115可以包括加算器、乘法器、减法器、放大器、驱动器电路、差动电路、积分电路、计数器、过滤器、模数转换器、下限检测电路、恒定系数鉴别器电路、时间-数字转换器、符合电路等其中一种或几种的组合。电子模块115可以将与探测器组件112接收到的辐射线的能量相关的模拟信号转化为数字信号。电子模块115可以比较多个数字信号、分析多个数字信号并且通过探测器组件112中所接收辐射线的能量确定图像数据。在一些实施例中,如果探测器组件112具有一个大的轴向视野(例如,0.75米至2米),则电子模块115可以具有来自多个探测器通道的高数据输入速率。例如,电子模块115可以每秒处理数百亿事件。在一些实施例中,数据输入速率可以与探测器组件112中探测器单元的数量有关。
冷却组件116可以产生、转移、传送、传导冷却介质或使冷却介质在扫描仪110中循环以吸收成像过程中扫描仪110产生的热量。在一些实施例中,冷却组件116可以完全集成入扫描仪110并且成为扫描仪110的一部分。在一些实施例中,冷却组件116可以部分集成入扫描仪110并且与扫描仪110相关联。冷却组件116可以允许扫描仪110维持适合且稳定的工作温度(例如,25℃、30℃、35℃等)。在一些实施例中,冷却组件116可以控制扫描仪110的一个或多个目标部件的温度。目标部件可以包括探测器组件112、电子模块115和/或在操作中生成热量的任何其他部件。冷却介质可以是气态、液态(例如,水)等其中一种或几种的组合。在一些实施例中,气态冷却介质可以是空气。
扫描仪110可以扫描位于其检测区域内的对象,并生成与对象相关的多个成像数据。在本申请中,“受试目标”和“对象”可交替使用。仅作为示例,受试目标可包括扫描目标、人造物体等。在另一实施例中,受试目标可包括扫描目标的特定部分、器官和/或组织。例如,受试目标可包括头部、大脑、颈部、身体、肩部、手臂、胸部、心脏、胃、血管、软组织、膝盖、脚或其他部位等,或其任意组合。在本申请中,受试目标主要为骨骼。
网络120可包括任意合适的网络,该网络能协助医学设备100交换信息和/或数据。在一些实施例中,医学设备100的一个或多个组件(例如,扫描仪110、终端130、处理引擎140、存储器150等)可通过网络120与医学设备100的一个或多个其他组件传递信息和/或数据。例如,处理引擎140可通过网络120从扫描仪110获得图像数据。作为另一示例,处理引擎140可通过网络120从终端130获得用户指令。一个或多个终端130包括移动设备131、平板电脑132、笔记本电脑133等或其任意组合。在一些实施例中,移动设备131可包括智能家用设备、可穿戴设备、移动设备、虚拟现实设备、增强现实设备等或其任意组合。
处理引擎140可以处理从扫描仪110、终端130和/或存储器150获得的数据和/或信息。在一些实施例中,处理引擎140可以是单个服务器或服务器组。服务器组可以是集中式的或者分布式的。在一些实施例中,处理引擎140可以是本地的或远程的。例如,处理引擎140可通过网络120来访问存储在扫描仪110、终端130和/或存储器150中的信息和/或数据。作为另一示例,处理引擎140可以直接连接到扫描仪110、终端130和/或存储器150以访问所存储的信息和/或数据。在一些实施例中,处理引擎140可在云平台上实现。仅作为示例,云平台可包括私有云、公共云、混合云、社区云、分布式云、互联云、多重云等或者其任意组合。在一些实施例中,处理引擎140可由图2中所示的具有一个或多个组件的计算设备200来实现。
存储器150可存储数据、指令、和/或任何其他信息。在一些实施例中,存储器150可以存储从终端130和/或处理引擎140获得的数据。在一些实施例中,存储器150可存储数据和/或指令,处理引擎140可以执行或使用该数据和/或指令以执行本申请中所描述的示例性方法。在一些实施例中,存储器150可包括大容量存储设备、可移动存储设备、易失性读写存储器、只读存储器(ROM)等或其任意组合。
在一些实施例中,存储器150可连接到网络120,以便与医学设备100中的一个或多个其他组件(例如,处理引擎140、终端130等)通信。医学设备100中的一个或多个组件可通过网络120来访问存储在存储器150中的数据或指令。在一些实施例中,存储器150可直接连接到医学设备100中的一个或多个其他组件(例如,处理引擎140、终端130等)或与这些组件通信。在一些实施例中,存储器150可以是处理引擎140的一部分。
图2是一个实施例的可以在其上实现处理引擎140的示例性计算设备200的示例性硬件和/或软件组件的示意图。如图2所示,计算设备200可以包括内部通信总线210、处理器(processor)220、只读存储器(ROM)230、随机存取存储器(RAM)240、通信端口250、输入/输出组件260、硬盘270以及用户界面设备280。
图3是一个实施例的可以在其上实现终端130的示例性移动设备300的示例性硬件和/或软件组件的示意图。如图3所示,移动设备300可包括天线310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、输入输出单元(I/O)350、内存360以及存储器390。在一些实施例中,移动设备300中还可包括任何其他合适的组件,包括但不限于系统总线或控制器(未示出)。在一些实施例中,移动操作系统370(例如,iOS、Android、Windows Phone等)和一个或多个应用程序380可从存储器390被加载到内存360中以便由CPU340执行。应用程序380可包括浏览器或任意其它合适的移动应用以用于接收和绘制与图像处理相关的信息或来自处理引擎140的其它信息。用户与信息流的交互可通过I/O350来实现并通过网络120提供给处理引擎140和/或医学设备100的其他组件。
为了实现本申请中所描述的各种模块、单元及其功能,计算机硬件平台可被用作本文所描述的一个或多个元件的(诸)硬件平台。具有用户界面元件的计算机可被用于当作个人计算机(PC)或任何其他类型的工作站或终端设备。如果进行适当的编程,计算机也可以充当服务器。在医学设备100中可以实现骨骼数据处理方法、系统等。
参见图4所示,为本申请一个实施例的骨骼数据处理方法的流程示意图。该实施例中的骨骼数据处理方法包括以下步骤:
步骤S410:获取目标骨骼图像;
在本步骤中,目标骨骼图像可以是人体中的各种不同骨骼的图像,如髋关节、膝关节、踝关节等不同骨骼结构,目标骨骼图像可以从存储器150中获取,存储器150中可以设置数据库,用于保存骨骼图像,骨骼图像的数据也可以在扫描后从电子模块115中获取,具体过程为:目标对象可以置于医学设备扫描仪110的扫描床114上,进入扫描仪110的检测区域113并进行扫描拍摄,从电子模块115中直接获取数据,并通过图像算法获取骨骼图像。
进一步的,通过扫描拍摄得到的骨骼图像包括人体中的多个骨骼,在得到骨骼图像后,可以对其进行预处理,如对其中需要处理的目标骨骼进行分割,以进行后续处理,在预处理时可采用图像分割算法、深度学习等技术。
步骤S420:解析适用于目标骨骼的磨锉工具的网格模型,获得网格模型的面片和顶点,根据面片和顶点提取磨锉工具的磨锉面;其中,顶点位于面片的边缘;
在本步骤中,磨锉工具是用于对目标骨骼进行磨锉的工具,其具体类型可多种多样,一般可为球形、研磨棒形、杆形、板形等,而且与目标骨骼磨锉后的结构适应匹配。网格模型是构建物体的结构模型,一般采用多边形网格,又被称为“Mesh”,是计算机图形学中用于为各种不规则物体建立模型的一种数据结构。现实世界中的物体表面直观上看都是由曲面构成的;而在计算机世界中,由于只能用离散的结构去模拟现实中连续的事物,所以现实世界中的曲面实际上在计算机里是由无数个小的多边形面片去组成的。如图5所示的磨锉工具的网格模型的渲染图,在计算机渲染后由肉眼看是十分平滑的曲面,而实际上,计算机内部使用了大量的小三角形面片去组成了这样的形状。这样的小面片的集合就被称作Mesh。Mesh既可以由三角形组成,也可以由其他平面形状如四边形,五边形等组成;由于平面多边形实际上也能再细分成三角形。所以,使用全由三角形组成的三角网格(TriangleMesh)来表示物体表面也是具有一般性的。顶点是指面片边缘角上的点,如三角形面片可以有三个顶点。利用面片和顶点可提取确定磨锉工具用于磨锉的外侧表面,即磨锉面,磨锉面用于接触作用于骨骼。
步骤S430:根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域;
在本步骤中,由于磨锉工具与目标骨骼磨锉后的结构适应匹配,可利用磨锉工具的网格模型的尺寸对目标骨骼图像进行初步的筛选,将可能与磨锉工具接触的体素点初步筛选为第一待磨区域。
步骤S440:根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域。
在本步骤中,磨锉面可接触作用于骨骼,磨锉面附近的待磨区域是较为精细的,利用磨锉面的位置和大小,对目标骨骼图像进行进一步的筛选,得到精细的第二待磨区域。
步骤S450:根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。
在本步骤中,第一待磨区域是初步筛选的较大范围内的体素点,第二待磨区域是进一步筛选的较小范围内的体素点,两者结合可得到所需的总待磨区域,以便磨锉工具对目标骨骼进行磨锉操作。
在本实施例中,获取目标骨骼图像,利用适用于目标骨骼的磨锉工具的网格模型,获取网格模型的面片和顶点,并进一步提取磨锉工具的磨锉面;根据网格模型的尺寸对目标骨骼图像进行初步筛选,获取第一待磨区域;根据磨锉面对目标骨骼图像进行进一步筛选,获取第二待磨区域,根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。在具体实现过程中,骨骼图像数据无需转换成磨锉工具的网格模型数据格式,还可得到待磨区域,提高了骨骼图像数据处理的时效性,而且由于待磨区域保持图像数据特性,不仅可用于显示效果,还可用于进行更多的图像后处理操作,保存为新的数据,拓展图像后处理的范围。
需要说明的是,上述骨骼数据处理方法可以在医学设备的控制台上执行,也可以在医学设备的后处理工作站上执行,或在能与医学设备通信的终端130上实现处理引擎的示例性计算设备200上执行,且不局限于此,可以根据实际应用的需要进行变化调整。
进一步的,第一待磨区域和第二待磨区域可能会有重叠部分,在获取总待磨区域时,重叠部分只记一次。
进一步的,在筛选得到第一待磨区域和第二待磨区域后,可对第一待磨区域和第二待磨区域设置标签,输出带标签的筛选结果并显示。
在一个实施例中,根据面片和顶点提取磨锉工具的磨锉面包括以下步骤:
遍历网格模型的面片的法向量,根据法向量对面片进行筛选,获取第一面片,其中,第一面片的法向量的方向指向网格模型外侧;
根据第一面片获取磨锉面。
在本实施例中,由于网格模型主要对应磨锉工具的表面区域,网格模型的外侧表面和内侧表面各有不同的面片和顶点,而与待磨区域相关的磨锉面只包含外侧表面。由于外侧表面和内侧表面的面片的法向量方向相反,通过遍历网格模型的面片的法向量,可筛选出位于网格模型的外侧表面的第一面片,进而得到准确的磨锉面。
在一个实施例中,根据第一面片获取磨锉面包括以下步骤:
遍历第一面片的顶点,获取第一面片的顶点到网格模型的中心点的距离作为第一距离,若第一距离与网格模型的尺寸的绝对差值小于预设值,将第一面片的顶点作为磨锉面的第一体素点,以得到磨锉面。
在本实施例中,网格模型是对磨锉工具的表面区域几何形状和拓扑关系的表达方式,一般网格模型上的磨锉面是在其中心点较远的位置,可通过网格模型的尺寸和预设值为参考,对网格模型的第一面片的顶点进行快速选取,作为磨锉面的第一体素点,进而得到磨锉面。
具体的,以网格模型为球形为例,确定网格模型的中心点,对网格模型的第一面片的顶点进行遍历,获取各顶点至中心点的距离作为第一距离,网格模型的尺寸可选为球形半径,预设值表示预先设定的表面距离阈值,将第一距离与半径的绝对差值小于预设值的各个顶点作为磨锉面的第一体素点,得到磨锉面。
需要说明的是,由于各个面片相互衔接,第一体素点(也是顶点)会属于不同的面片,因此,第一体素点所属的面片的法向量会有多个,只要有一个法向量属于外侧表面的面片的法向量,该第一体素点可认为是磨锉面的体素点。
具体的,以网格模型为球形为例,内侧表面的面片法向量都是指向球心的,而外侧表面的面片法向量则相反,利用该特点可滤除大部分的内侧表面的面片和顶点。个别内侧表面的面片和顶点可能由于网格模型内表面的孔洞没有被完全滤除,可结合网格模型的半径,将远离外侧表面的面片和顶点滤除,即可得到只有外侧表面的面片和顶点的网格模型。
如图6所示,遍历网格模型的面片的法向量,外侧表面的面片的法向量的Z分量可设置大于0,内侧表面的面片的法向量的Z分量可设置小于0,若遍历的法向量Z分量大于0,可认为其是外表面;对外表面的面片的顶点进行遍历,计算顶点到模型的中心点的距离d,判断距离d与模型的球状半径R的绝对差值是否小于预设值Tmin,若是,可认为其是外表面顶点并记录保存。
在一个实施例中,根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域包括以下步骤:
匹配网格模型和目标骨骼图像的位置,获取第二体素点与网格模型的中心点的距离作为第二距离,其中第二体素点包括目标骨骼图像的体素点,若第二距离小于网格模型的尺寸与阈值之差,将该第二体素点的集合作为第一待磨区域。
在本实施例中,网格模型与目标骨骼磨锉后的结构适应匹配,在网格模型和目标骨骼图像的位置匹配后,网格模型与目标骨骼图像会有重叠区域,可选取位于网格模型区域内的目标骨骼图像的第二体素点作为初步待磨的第一待磨区域,具体可先计算目标骨骼图像的体素点与网格模型的中心点的距离作为第二距离,若第二距离小于网格模型的尺寸与阈值之差,表明该体素点就是在磨锉范围内的第二体素点,即属于第一待磨区域。由于目标骨骼的大部分体素都处于非待磨区域,若仅靠与模型表面的关系判断是否需要磨锉,将浪费大量运算时间,降低算法运行效率,本实施例结合网格模型的物理尺寸,对远离模型中心点的体素进行滤除,将大幅降低算法运行时间。
具体的,以网格模型为球形为例,确定网格模型的中心点,通过设定合适的阈值TH,网格模型的尺寸可选为球形半径R,将目标骨骼图像中体素与模型中心坐标距离大于(半径R+阈值TH)的体素判定为非待磨体素,将体素与模型球心坐标距离小于(半径R-阈值TH)的体素判定为待磨体素,如图7所示。
在一个实施例中,根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域包括以下步骤:
匹配网格模型和目标骨骼图像的位置,获取目标骨骼图像的体素点作为第三体素点,其中,第三体素点与网格模型的中心点的距离在预设范围内;
若第三体素点在网格模型的面片内侧,将该第三体素点的集合作为第二待磨区域。
在本实施例中,网格模型与目标骨骼磨锉后的结构适应匹配,在网格模型和目标骨骼图像的位置匹配后,可选取网格模型的磨锉面附近的第三体素点作为进一步待磨的第二待磨区域,具体可先计算目标骨骼图像的体素点与网格模型的中心点的距离,若该距离在预设范围内,则该体素点为第三体素点,且第三体素点在网格模型的面片内侧,表明第三体素点在磨锉范围内,即属于第二待磨区域。通过上述方式可确定磨锉面附近的精细磨锉区域,提高磨锉的准确性。
进一步的,预设范围的最大值可选为网格模型的尺寸与阈值之和,预设范围的最小值可选为网格模型的尺寸与阈值之差,阈值可根据实际需要进行调整。具体的,以网格模型为球形为例,确定网格模型的中心点,设定合适的阈值TH,网格模型的尺寸可选为球形半径R,遍历与中心点的距离在(半径R-阈值TH)到(半径R+阈值TH)之间的体素,之后通过判断该体素点在该网格模型的外侧表面内外来判断该体素点是否是待磨体素点。
需要说明的是,由于目标骨骼图像是根据扫描数据生成的,网格模型是另行构建的,可对网格模型进行移动、旋转、缩放等操作,使网格模型和目标骨骼图像的位置匹配,以便选取待磨区域。
在其中一个实施例中,若第三体素点在网格模型的面片内侧,将该第三体素点的集合作为第二待磨区域包括以下步骤:
获取第三体素点相对于网格模型的中心点的第一方向向量,以及磨锉面的面片的法向量;
根据第一方向向量和法向量的夹角,确定与第三体素点距离最近的第二面片;
获取第三体素点至第二面片的顶点的第二方向向量,根据第二方向向量与第二面片的法向量的夹角,判断第三体素点是否在第二面片内侧。
在本实施例中,先获取第三体素点相对于网格模型的中心点的第一方向向量,并与磨锉面的面片的法向量进行比较,通过两者的夹角来确定与第三体素点距离最近的第二面片,夹角越小,距离越近;再获取第三体素点至第二面片的顶点的第二方向向量,第三体素点在第二面片的外侧或内侧,第二方向向量与第二面片的法向量的夹角大小不同,以此可判断第三体素点相对于目标面片的位置。
具体的,以网格模型为球形为例,确定网格模型的中心点,计算体素点与球心原点的方向向量,通过计算该方向向量与磨锉面的所有面片的法向量的夹角,找出夹角最小的对应面片即为最近邻面片,如图8所示,θ1要小于θ2的值,故认为夹角较小的θ1对应面片为距该体素点更近的面片。
在确定体素点最近邻面片之后,计算该体素点到该面片的任一顶点坐标的方向向量,计算该方向向量与该面片法向量之间的夹角,通过判断该夹角是锐角还是钝角,来判断是该体素点在该面片的内侧还是外侧,若是在外侧则判定为非待磨体素点,否则判定为待磨体素点。如图9所示,夹角θ1为钝角,即在网格模型表面的外侧,故对应的体素点被判定为非待磨体素点,夹角θ2为锐角,即在网格模型表面的内侧,对应的体素点被判定为待磨体素点。
在一个实施例中,目标骨骼图像包括髋关节图像,磨锉工具的网格模型包括球形。
在本实施例中,骨骼数据处理方法可应用在髋关节等骨骼的处理过程中,通过球形等磨锉工具对髋关节进行磨锉。
需要说明的是,骨骼数据处理方法的应用并不局限于髋关节,也可应用于膝关节、踝关节等人体其他骨骼,磨锉工具的形状也局限于球形,也可使用研磨棒形、杆形、板形等。
具体的,以骨骼为髋关节,磨锉工具为球形髋臼锉为例进行说明。获取髋关节待磨区域的过程如下:
1.读取髋关节图像数据,对图像中的盆骨和股骨进行分割,得到分割结果;
2.读取髋臼锉网格模型数据,解析获得面片和顶点;
3.分离髋臼锉模型外表面的面片和顶点;
4.利用髋臼锉模型半径对分割结果进行粗筛,初步判定分割结果中的体素是否属于待磨区域;
5.利用模型外表面面片的法向量等信息,对分割结果进行精筛;
6.输出带标签的分割结果。
由于髋臼锉网格模型是对髋臼锉表面区域几何形状和拓扑关系的表述方式,在髋臼锉的外侧表面和内侧表面各有不同的顶点和面片,如图5所示。与待磨区域计算相关的磨锉面只包含髋臼锉模型的外侧表面,所以应对模型内侧表面的顶点和面片予以筛除。
内侧表面的面片法向量都是指向球心的,而外侧表面的法向量则相反,利用这个原理可以滤除大部分的内侧表面顶点和面片。个别内侧表面顶点和面片可能由于模型内表面的孔洞没有被完全滤除,这时通过模型的物理半径进一步筛选,将远离外表面半径的顶点和面片滤除,即可得到只有外表面顶点和面片的网格模型,如图10和图11所示,其中R为髋臼锉网格模型的半径,Tmin为设定的表面距离阈值。
在对分割结果进行粗筛过程中,由于大部分的体素都处于非待磨区域,若仅靠与模型表面的关系判断是否需要磨锉,将浪费大量运算时间,降低算法运行效率。此时若结合模型的物理半径,对远离模型球心点的体素进行粗筛,将大幅降低算法运行时间。
可通过设定合适的阈值TH,将体素与模型球心坐标距离大于半径R+阈值TH的体素判定为非待磨体素,将体素与模型球心坐标距离小于半径R-阈值TH的体素判定为待磨体素,如图7所示。
在对分割结果进行精筛过程中,对髋臼锉模型表面附近磨锉体素的精筛分为两步,首先是遍历半径R-阈值TH到半径R+阈值TH之间的体素,对每个体素寻找模型上与其距离最近的面片,之后判断该点在该面片的内外来判断是否是待磨体素。
首先寻找最近邻面片。计算体素与球心原点的方向向量,通过计算该方向向量与所有面片的法向量的夹角,找出夹角最小的对应面片即为最近邻面片,如图8所示,θ1要小于θ2的值,故认为夹角较小的θ1对应面片为距该体素更近的面片。
其次判断体素在面片的内外。找到体素最近邻面片之后,计算该体素到该面片的任一顶点坐标的方向向量,计算该方向向量与该面片法向量之间的夹角,通过判断该夹角是锐角还是钝角,来判断是该体素在该面片的内侧还是外侧,若是在外侧则判定为非待磨体素,否则判定为待磨体素。如图9所示,夹角θ1为钝角,即在髋臼锉模型表面的外侧,故对应的体素被判定为非待磨体素,夹角θ2为锐角,即在髋臼锉模型表面的内侧,对应的体素被判定为待磨体素。
髋关节磨锉的场景模拟和效果如图12和图13所示。
目前相关技术的方案中,通常是将髋关节的分割结果通过如Marching Cubes等算法转换成和磨锉工具同样的mesh网格模型,再通过三方库如VTK,自动计算髋关节网格模型与磨锉工具的网格模型依据规划位置放置时产生的交集。
在目前的网格模型求交集的方案中,待磨区域的计算通常只是用于显示待磨区域的视觉效果,而待磨区域的体素坐标并未被保存或输出,以至于无法完成更多的图像后处理操作,降低了后处理算法的拓展性。即便相关算法可以增加将网格模型转换会分割结果的操作,但增加的网格模型与分割结果的两次相互转换过程,在时效性上会有所下降。
本申请的方案可省去相关算法中将髋关节分割结果转换成网格模型的步骤,根据髋关节分割结果,磨锉工具的网格模型自动计算待磨区域的体素坐标并输出。相比相关算法,待磨区域结果不仅可以用于显示效果,还可以保存成新的体数据,拓展图像后处理的范围。
根据上述骨骼数据处理方法,本申请实施例还提供一种骨骼数据处理系统,以下就骨骼数据处理系统的实施例进行详细说明。
参见图14所示,为一个实施例的骨骼数据处理系统的结构示意图。该实施例中的骨骼数据处理系统包括:
图像获取单元510,用于获取目标骨骼图像;
模型处理单元520,用于解析适用于目标骨骼的磨锉工具的网格模型,获得网格模型的面片和顶点,根据面片和顶点提取磨锉工具的磨锉面;其中,顶点位于面片的边缘;
第一筛选单元530,用于根据网格模型的尺寸对目标骨骼图像进行筛选,获取第一待磨区域;
第二筛选单元540,用于根据磨锉面对目标骨骼图像进行筛选,获取第二待磨区域;
区域确定单元550,用于根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。
在本实施例中,骨骼数据处理系统包括图像获取单元510、模型处理单元520、第一筛选单元530、第二筛选单元540和区域确定单元550;图像获取单元510获取目标骨骼图像,模型处理单元520利用适用于目标骨骼的磨锉工具的网格模型,获取网格模型的面片和顶点,并进一步提取磨锉工具的磨锉面;第一筛选单元530根据网格模型的尺寸对目标骨骼图像进行初步筛选,获取第一待磨区域;第二筛选单元540根据磨锉面对目标骨骼图像进行进一步筛选,获取第二待磨区域,区域确定单元550根据第一待磨区域和第二待磨区域获取目标骨骼的总待磨区域。在具体实现过程中,骨骼图像数据无需转换成磨锉工具的网格模型数据格式,还可得到待磨区域,提高了骨骼图像数据处理的时效性,而且由于待磨区域保持图像数据特性,不仅可用于显示效果,还可用于进行更多的图像后处理操作,保存为新的数据,拓展图像后处理的范围。
在一个实施例中,模型处理单元520还用于遍历网格模型的面片的法向量,根据法向量对面片进行筛选,获取第一面片,其中,第一面片的法向量的方向指向网格模型外侧;根据第一面片获取磨锉面。
在一个实施例中,模型处理单元520还用于遍历第一面片的顶点,获取第一面片的顶点到网格模型的中心点的距离作为第一距离,若第一距离与网格模型的尺寸的绝对差值小于预设值,将第一面片的顶点作为磨锉面的第一体素点,以得到磨锉面。
在一个实施例中,第一筛选单元530还用于匹配网格模型和目标骨骼图像的位置,获取第二体素点与网格模型的中心点的距离作为第二距离,其中第二体素点包括目标骨骼图像的体素点,若第二距离小于网格模型的尺寸与阈值之差,将该第二体素点的集合作为第一待磨区域。
在一个实施例中,第二筛选单元540还用于匹配网格模型和目标骨骼图像的位置,获取目标骨骼图像的体素点作为第三体素点,其中,第三体素点与网格模型的中心点的距离在预设范围内;若第三体素点在网格模型的面片内侧,将该第三体素点的集合作为第二待磨区域。
在一个实施例中,第二筛选单元540还用于获取第三体素点相对于网格模型的中心点的第一方向向量,以及网格模型的面片的法向量;根据第一方向向量和法向量的夹角,确定与第三体素点距离最近的第二面片;获取第三体素点至第二面片的顶点的第二方向向量,根据第二方向向量与第二面片的法向量的夹角,判断第三体素点是否在第二面片内侧。
在一个实施例中,目标骨骼图像包括髋关节图像,磨锉工具的网格模型包括球形。
本申请实施例的骨骼数据处理系统与上述骨骼数据处理方法一一对应,在上述骨骼数据处理方法的实施例阐述的技术特征及其有益效果均适用于骨骼数据处理系统的实施例中。
一种可读存储介质,其上存储有可执行程序,可执行程序被处理器执行时实现上述的骨骼数据处理方法的步骤。
上述可读存储介质,通过在处理器上运行可执行程序,可以实现骨骼图像数据无需转换成磨锉工具的网格模型数据格式,还可得到待磨区域,提高了骨骼图像数据处理的时效性,而且由于待磨区域保持图像数据特性,不仅可用于显示效果,还可用于进行更多的图像后处理操作,保存为新的数据,拓展图像后处理的范围。
一种骨骼数据处理设备,包括机械臂,电动锉和光学导航仪器;光学导航仪器用于根据上述骨骼数据处理方法确定的第一待磨区域和第二待磨区域,驱动机械臂移动;电动锉位于机械臂的末端,在机械臂移动到目标骨骼的指定位置时,对目标骨骼进行磨锉。
在本实施例中,光学导航仪器利用上述骨骼数据处理方法确定的第一待磨区域和第二待磨区域,驱动机械臂移动,实现将实际的物理空间坐标与软件规划的坐标对应,引导机械臂运动到目标骨骼的指定位置,机械臂末端连接电动锉,用来对目标骨骼进行磨锉。
骨骼数据处理设备可以设置在医学设备100中。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。所述的程序可以存储于可读取存储介质中。该程序在执行时,包括上述方法所述的步骤。所述的存储介质,包括:ROM/RAM、磁碟、光盘等。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
- 骨骼数据处理方法、系统、可读存储介质和设备
- 一种页面数据处理方法、系统、电子设备及可读存储介质