技术领域
[0001] 本申请涉及医疗技术领域,特别是涉及一种手术规划服务网格、手术规划系统、手术规划方法、装置、计算机设备、存储介质和计算机程序产品。
相关背景技术
[0002] 随着计算机技术的发展,目前在医疗领域中的各项医疗服务已经普遍有计算机的参与。在医疗手术前,需要对手术进行规划,目前对手术进行规划的方式通常是在特定的设备上通过单机架构的系统进行规划,例如每个科室均使用各自的设备和系统进行规划。然而,通过特定设备以及单机架构的系统进行手术规划,限制了规划的场景,无法适应多种场景的需求,从而降低了手术规划的效率。
具体实施方式
[0055] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0056] 本申请实施例提供的手术规划服务网格,可以应用于如图1所示的应用环境中。其中,终端102通过网络与手术规划服务网格104进行通信。数据中心可以存储手术规划服务网格104需要处理的数据,例如存储手术规划所需的目标数据和目标手术规划结果。数据中心可以集成在手术规划服务网格104上,也可以放在云上或其他网络服务器上。具体可以如图2所示,图2为另一个实施例中手术规划服务网格的应用环境图,手术规划服务网格104可以通过工作流服务网格获取终端发送的手术规划请求,并将发送终端的标识和手术规划请求至手术规划服务网格中的规划服务网格,并通过规划服务网格进行手术规划。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。手术规划服务网格104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0057] 在一个实施例中,如图3所示,提供了一种手术规划服务网格,包括数据中心、工作流服务网格和规划服务网格。具体内容包括:
[0058] 数据中心,用于存储手术规划所需的目标数据和目标手术规划结果。
[0059] 其中,数据中心可以设置于手术规划服务网格中,数据中心中可以存储手术规划需要用到的目标数据和目标手术规划结果。其中,目标数据可以是各类手术规划时需要使用的业务数据,例如骨关节规划、脊柱规划和神外规划等规划的数据,目标数据可以具有多种数据类型,例如结构型数据和非结构型数据等。其中,终端还可以从数据中心中读取目标手术规划结果,从而对目标手术规划结果进行展示和浏览等操作。
[0060] 工作流服务网格,用于获取终端发送的手术规划请求,并将终端的标识和手术规划请求发送至对应的规划服务网格。
[0061] 其中,工作流服务网格(Workflow Services)可以设置于上述手术规划服务网格中,工作流服务网格中包括上下文管理器(Context Manager)、应用服务(APP Webserver)和移动端服务(Mobile AR/VR Web Server)等模块。其中Context Manager负责应用之间的状态扭转,例如当前病人检查的应用功能的切换,还可以进行辅助功能和PA(PageAdmin,网页管理)等功能;APP Webserver包括静态界面模块Static UI负责前端静态页面的逻辑,控制模块Control负责前端与渲染后端和负载均衡等其他模块之间的交互。用户需要进行手术规划时,可以通过终端向手术规划服务网格发送手术规划请求,手术规划服务网格可以通过工作流服务网格接收终端发送的手术规划网格。其中,上述手术规划服务网格中可以包括多个规划服务网格,每个规划服务网格具有对应的负载信息。工作流服务网格可以基于手术规划请求确定对应的规划服务网格,并将终端的标识和手术规划请求发送至对应的规划服务网格中。
[0062] 其中,终端可以包括多种类型的终端,例如固定终端和移动终端等,则终端的标识也可以与相应类型的终端对应。例如,固定终端对应固定终端标识,移动终端对应移动终端标识等。具体地,上述固定终端可以包括计算机端的网页等;移动终端可以包括平板电脑、手机、AR/VR眼镜、HoloLens等设备。其中,平板电脑和手机端可以通过网页、应用软件等方式进行手术规划过程;AR/VR眼镜、HoloLens等虚拟现实设备可以通过相应的眼镜应用等进行手术规划。
[0063] 规划服务网格,用于基于终端的标识和手术规划请求向数据中心请求目标数据,基于目标数据生成目标手术规划结果。
[0064] 其中,规划服务网格可以设置在手术规划服务网格中,手术规划服务网格中可以设置有多个规划服务网格,规划服务网格可以接收工作流服务网格发送的终端的标识和手术规划请求,并基于该终端的标识和手术规划请求,向数据中心请求目标数据。其中,上述数据中心中可以设置有多个接口,包括第一数据接口和第二数据接口等,不同的数据接口可以用于传输不同类型的数据。规划服务网格确定上述目标数据后,可以基于数据中心提供的第一数据接口,向数据中心请求上述手术规划请求对应的目标数据,其中目标数据的数据类型和第一数据接口对应。
[0065] 规划服务网格获取到上述目标数据后,可以基于目标数据生成目标手术规划结果。例如,规划服务网格可以基于目标数据对应的业务类型、目标数据中包含的规划要求和规划参数等信息生成目标手术规划结果,具体地,规划要求可以包括手术时间、手术类型、主刀医师、手术地点等信息。另外,在一些实施例中,上述目标手术规划结果也可以由用户制定。例如,规划服务网格可以在获取目标数据后,将目标数据发送至终端,终端可以基于目标数据生成目标手术规划结果,并将目标手术规划结果发送至规划服务网格中,从而规划服务网格可以获取终端发送的基于目标数据生成的目标手术规划结果。终端得到上述目标手术规划结果后,还可以将目标手术规划结果存储至数据中心。
[0066] 具体地,上述规划服务网格可以提供一系列软件服务,在云端部署且Docker化,并且可以采用K8s平台进行运维,可以实现动态扩容和后台服务等功能。其中k8s是为容器服务而生的一个可移植容器的编排管理工具。规划服务网格得到上述目标手术规划结果后,还可以将其在终端中进行展示。其中,上述规划服务网格中还包括渲染服务(Render Services),渲染服务中包括规划应用的渲染后端(APP Render Back End)等组件,可以为终端的图像渲染,图像处理提供服务,并将图像处理的结果和数据传输给前端进行展示。从而规划服务网格可以调用上述渲染服务,对目标手术规划请求进行图像渲染,从而规划服务网格可以将渲染完成的目标手术规划结果发送至上述终端中进行展示。
[0067] 上述手术规划服务网格中,通过工作流服务网格获取终端发送的手术规划请求,将终端的标识和手术规划请求发送至对应的规划服务网格,通过规划服务网格基于终端的标识和手术规划请求向数据中心请求目标数据,基于目标数据生成目标手术规划结果。其中数据中心可以用于存储手术规划所需的目标数据和目标手术规划结果。相较于传统的通过特定设备以及单机架构进行手术规划,本方案通过包括数据中心、工作流服务网格和规划服务网格的手术规划服务网格进行多方互联的手术规划,提高了手术规划的效率。
[0068] 在一个实施例中,工作流服务网格,用于若终端标识为固定终端标识,将手术规划请求发送至负载均衡网关;负载均衡网关,用于将固定终端标识对应的固定终端的手术规划请求发送至负载最小的规划服务网格。
[0069] 本实施例中,上述手术规划服务网格还包括负载均衡网关,且上述终端的标识包括不同类型的终端的标识,例如可以包括固定终端标识和移动终端标识等。其中,上述对目标手术规划结果的渲染需要用到负载均衡,负载均衡网关(Load Balance)提供一套策略用于将规划应用的渲染资源负载。对于不同类型的终端,工作流服务网格可以基于终端的标识将手术规划请求发送至不同的模块。当工作流服务网格检测到上述终端标识为固定终端标识时,工作流服务网格可以将手术规划请求发送至负载均衡网关。其中,上述手术规划服务网格中的各个服务规划网格均有对应的负载,为使各个服务规划网格的负载平衡,需要通过负载均衡网关进行负载均衡。负载均衡网关可以接收固定终端标识对应的固定终端的手术规划请求,将该手术规划请求发送至负载最小的规划服务网格。
[0070] 另外,上述手术规划请求可以包括手术方案规划的请求和手术方案浏览的请求,当工作流服务网格检测到上述终端标识为移动终端标识时,可以检测手术规划请求是手术方案规划请求还是手术方案浏览请求,当工作流服务网格检测到为手术方案规划请求时,可以将手术规划请求发送至负载均衡网关,从而负载均衡网关可以为移动终端标识对应的移动终端选择负载最小的规划服务网格。其中,移动终端标识对应的负载均衡网关和固定终端标识对应的负载均衡网关可以相同,也可以不同。当工作流服务网格检测到为手术方案浏览请求时,可以从数据中心获取目标手术规划结果并发送至移动终端标识对应的移动终端。
[0071] 具体地,不同终端中可以显示不同类型的请求。例如在Web工作站等固定终端中可以显示前端业务请求类型的手术规划请求,在移动端和智能穿戴端可以显示移动端业务请求类型的手术规划请求。从而用户可以在不同的终端中触发不同类型的手术规划请求。如图4所示,图4为一个实施例中手术规划请求步骤的流程示意图。若工作流服务网格接收到的是Web工作站等固定终端的手术规划请求,则工作流服务网格可以将手术规划请求进行负载,选择一个负载最轻的规划服务网格(Planning Server)提供规划服务。其中,上述规划服务网格可以与云端进行数据交互,每个上述规划服务网格中可以部署有医生工作台、PA(PageAdmin,网页管理)、规划应用前后端和其他相关组件,并且提供DB(Database,数据库)的相关服务。工作流服务网格可以将数据传输到云端。另外,若工作流服务网格接收到移动端或智能穿戴设备端等移动终端的手术规划请求,可以由云端部署的虚拟现实服务(ARVR Web Server)提供数据和操作服务支持。具体可以如图5所示,图5为另一个实施例中手术规划请求步骤的流程示意图。移动端、眼镜端属于客户端,客户端可以通过HTTP请求访问ARVR Web Server,ARVR Web Server属于部署在云端的服务器端,可以为客户端提供数据服务支持,工作流服务网格验证接口信息成功后,可以进行相应的数据库操作。
[0072] 通过上述实施例,工作流服务网格通过对不同类型的终端发送的请求采用不同的处理策略,从而通过不同的服务处理不同终端的手术规划请求,提高了手术规划的效率。
[0073] 在一个实施例中,负载均衡网关,还用于:获取手术规划请求对应的请求负载,获取每个规划服务网格对应的剩余渲染负载值,并获取剩余渲染负载值与请求负载的差值,将差值最大的规划服务网格作为负载最小的规划服务网格,将手术规划请求转发至负载最小的规划服务网格。
[0074] 本实施例中,上述负载均衡网关获取到手术规划请求后,需要为其确定合适的规划服务网格进行转发。其中,各个规划服务网格可以具有对应的渲染负载值,而手术规划请求也对应有本次规划的请求负载,因此负载均衡网关可以获取手术规划请求对应的请求负载,并获取每个规划服务网格对应的剩余渲染负载值。其中,剩余渲染负载值可以为规划服务网格当前可提供的渲染负载值。负载均衡网关可以获取上述剩余渲染负载值与请求负载的差值,负载均衡网关可以根据该差值确定规划服务网格是否有余力处理该手术规划请求,以及若处理该手术规划请求时需承载的负载压力。由于上述各个规划服务网格的剩余渲染负载值可不同,因此各个规划服务网格对应的上述差值也可以不同,负载均衡网关可以获取各个规划服务网格对应的上述差值,并将差值最大对应的规划服务网格作为负载最小的规划服务网格,从而负载均衡网关可以将上述手术规划请求转发至上述负载最小的规划服务网格。
[0075] 具体地,上述负载均衡网关和规划服务网格的结构可以如图6所示,图6为一个实施例中负载均衡的结构示意图。负载均衡网关可以由注册中心、负载策略、缓存服务组成,其中注册中心可以是Nacos服务注册,Nacos是构建以“服务”为中心的现代应用架构的服务基础设施。当终端的手术规划请求到达负载均衡网关后,Ribbon会从缓存服务Redis中读取所有渲染服务器的负载值,得到最优负载值后通过Nacos拿到对应服务器的信息并通过Zuul将请求转发到该服务器,即负载策略会选取资源最丰富的服务来提供服务。其中,Ribbon是一种开源项目,主要功能是提供客户端的软件负载均衡算法;Zuul是一个网关组件API Gateway服务器,可以在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。
[0076] 上述渲染负载值可以是一种GPU值,则上述负载最小的规划服务网格的计算公式可以如下所示:Server=Max(Loop(总GPU值–已使用GPU值–请求消耗GPU值))>0。具体地,若存在4个渲染服务器,即4个规划服务网格A、B、C、D,每台服务器GPU初始值为2000。当终端的手术规划请求过来时,假设各服务器已消耗的GPU值为A=200、B=500、C=900、D=1500;现在终端请求需要消耗GPU1500;则通过上述公式可以得到A服务器剩余值为ServerA=2000–200–150=1650为最大,即负载均衡网关可以选择A为最佳服务器,即上述负载最小的规划服务网格。
[0077] 通过本实施例,负载均衡网关可以基于各个规划服务网格的负载值确定手术规划请求需要转发至的负载最小的规划服务网格,由负载最小的规划服务网格处理上述手术规划请求,提高了手术规划的效率。
[0078] 在一个实施例中,规划服务网格,还用于:检测目标数据的数据类型,若数据类型为结构化数据,基于数据中心提供的数据增删改查接口,向数据中心请求手术规划请求对应的目标数据;若数据类型为非结构化数据,基于数据中心提供的文件流接口,向数据中心请求手术规划请求对应的目标数据。
[0079] 本实施例中,规划服务网格接收手术规划请求后,可以基于手术规划请求确定手术规划需要使用的目标数据。其中,目标数据的数据类型可以有多种,不同的手术规划请求对应的目标数据可以不同。并且,不同类型的目标数据的获取方式也可以不同。因此,规划服务网格可以基于手术规划请求确定需要获取的目标数据的数据类型。其中,数据类型包括结构化数据可非结构化数据等,结构化数据也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式,主要通过关系型数据库进行存储和管理,常用场景包括高速存储应用需求、数据共享需求等;非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音视频信息等等。上述数据中心中可以配置有多个数据接口,用于传输不同类型的数据。若规划服务网格确定数据类型为结构化数据,则规划服务网格可以基于数据增删查改接口向数据中心请求手术规划请求对应的目标数据;若规划服务网格检测到数据类型为非结构化数据,规划服务网格可以基于数据中心提供的文件流接口,向数据中心请求手术规划请求对应的目标数据。
[0080] 具体地,手术规划过程可以如图7所示,图7为一个实施例中手术规划步骤的流程示意图。以骨关节规划、脊柱规划和神经外科规划等规划业务为例,这些规划业务的数据主要是DICOM(Digital Imaging and Communications in Medicine,医学数字成像和通信)类型的数据,因此终端可以预先通过Web工作台中的PA应用上传各种业务的DICOM数据,数据中心可以通过文件流接口接收这些数据,将这些数据形成数据列表并存储。在进行手术规划时,规划服务网格可以确定需要使用的规划业务的目标数据,并从数据中心中获取对应的目标数据,从而规划服务网格可以基于这些目标数据进行规划并保存规划结果。其中,手术规划结果可以是一种PLY模型文件,PLY是一种多边形模型数据格式,每个PLY文件用于描述一个多边形模型对象Object,该模型对象可以通过诸如顶点、面等数据进行描述,被统称作元素Element。PLY的文件结构是文件头+数据列表。其中文件头以行为单位描述文件类型、格式与版本、元素类型、元素的属性等。数据列表根据文件头中所列出元素类型的顺序及其属性,以文本字符或二进制依次存储各个数据。
[0081] 通过本实施例,规划服务网格可以基于不同的数据类型调用不同的数据接口进行数据传输,提高了手术规划的效率。
[0082] 在一个实施例中,数据中心,用于:根据目标手术规划结果的数据类型确定对应的数据库;根据目标手术规划结果与数据中心中的数据的映射关系,确定目标手术规划结果在对应的数据库中的数据存储位置;将目标手术规划结果存储至对应的数据库中的数据存储位置。
[0083] 本实施例中,规划服务网格可以基于目标数据得到对应的目标手术规划结果。目标手术规划结果的数据类型可以有多种,包括结构化数据和非结构化数据等。对于不同类型的数据,数据中心需要将其存储至不同的数据库。即规划服务网格得到目标手术规划结果后,可以将其发送至数据中心,数据中心可以根据目标手术规划结果的数据类型确定对应的数据库。例如,在一些实施例中,数据中心还可以检测目标手术规划结果的数据类型,若数据中心检测到上述目标手术规划结果为关系型数据,则数据中心可以确定该目标手术规划结果的数据库为结构化数据库;若数据中心检测到目标手术规划结果的数据类型为图像数据、模型数据或医学数字成像通信数据中的任意一种,则数据中心可以确定该目标手术规划结果对应的数据库为非结构化数据库。对于本实施例,由于上述DICOM属于医学数字成像通信数据,PLY数据模型数据,这些数据都属于文本文件类型,因此采用的是非结构化存储。
[0084] 由于目标手术规划结果中可以包含规划项目和对应的规划参数,而在数据中心中可以预先存储有多个不同的规划项目,这些规划项目数据可以与目标手术规划结果中的规划项目形成映射关系,则数据中心可以根据目标手术规划结果与数据中心中的数据的映射关系,确定目标手术规划结果在对应的数据库中的存储位置,例如骨关节手术规划结果可以与数据中心中对应数据库的骨关节数据形成映射关系。数据中心可以将上述目标手术规划结果存储至对应的数据库中的上述数据存储位置。
[0085] 具体地,数据中心的结构可以如图8所示,图8为一个实施例中数据中心的结构示意图。数据中心支持对多种类型的业务数据的处理,并且数据中心包括多层结构。其中框架Framework提供对外的数据接口,接口的功能主要包括数据的增删改查功能,也可以支持数据批量处理和接口横向扩展。通信插件主要支持NetBase,RestfulAPI和Socket,同时支持插件横向扩展。RESTful API是REST风格的API,是一套用来规范多种形式的前端和同一个后台的交互方式的协议。ORM(Object Relational Mapping,对象关系映射)主要是对象关系映射,主要处理对象持久化。ORM描述的是对象与数据库之间的映射关系,通过映射关系与对应的SQL操作可以把对象写入到数据库中,对象持久化相当于是把内存中的瞬时数据记录到数据库中存储起来。数据存储分为结构化数据存储和非结构化数据存储,结构化数据可以选择存储在PgSQL数据库或SQLite数据库中,非结构化数据可以存储在MongoDB数据库或HDFS数据库中。
[0086] 上述数据中心既可以存储上述目标手术规划结果,又可以提供接口供各个终端调用其中的数据。具体如图9所示,图9为一个实施例中数据存储步骤的流程示意图。上述终端设备主要包括个人计算机PC、平板电脑PAD、手机Mobile和智能头戴设备HoloLens等构成,每种终端可以产生基本的数据,并通过数据中心提供的HTTP(Hyper Text Transfer Protocol,超文本传输协议)Restful接口存储在数据中心中。对上述的结构化数据和非结构化数据,数据中心可分别采用不同的数据库进行存储。例如对于关系型数据则数据中心通过数据的增删查改接口Data Upload API存储至结构化数据;对于缩略图数据,数据中心可以通过图像上传接口Image Upload API存储至非结构化数据库;对于PLY模型,数据中心可以通过PLY Upload API存储至非结构化数据;对于医学数字成像通信数据DICOM,数据中心可以通过医学数字成像通信数据上传接口DICOM Upload API存储至非结构化数据库。
[0087] 具体地,以PC终端为例,PC终端可以把用户上传的DICOM数据和对应的缩略图、用户的数据分享、个人中心数据存储在数据中心。其中DICOM数据及缩略图以非结构化文件的形式存储在数据中心;用户的数据分享由两部分组成,包括DICOM数据和关系数据,其中分享的DICOM数据以非结构化文件的形式存储,分享关系以结构化数据库的形式存储;个人中心数据全部以结构化数据库的形式存储。其中分享关系主要描述的是不同用户之间的DICOM数据关系,比如用户A把自身的DICOM数据分享给用户B,分享关系则可以表示为(DicomId,FromUserA,ToUserB),这种关系是强关系,因此采用结构化关系型数据库存储。PAD终端可以把模型数据PLY、用户对模型的行为操作数据,例如颜色、组织名称、透明度等、以及用户的个人数据存储在数据中心。其中模型数据PLY以非结构化文件的形式存储在数据中心,用户对模型的行为操作数据以结构化数据的形式存储在数据库,用户的个人数据同样以结构化数据的形式存储在数据库中。对于手机等移动终端,可以把模型数据PLY、用户的个人数据存储在数据中心。其中模型数据PLY以非结构化文件的形式存储在数据中心,用户的个人数据以结构化数据的形式存储在数据库中。对于智能头戴设备HoloLens,可以把模型数据PLY、多人实时共享数据存储在数据中心。其中模型数据PLY以非结构化文件的形式存储在数据中心,多人实时共享数据以结构化数据的形式存储在数据库中。其中,由于在HoloLens中存在多人会议的功能,会议中多人可以同时观察使用同一个PLY模型数据,这种实时共享的设计也是强关联的,因此数据中心可以对多人实时共享数据采用结构化数据存储。
[0088] 另外,在一些实施例中,终端还可以基于数据中心提供的接口读取数据中心中的数据。如图10所示,图10为一个实施例中数据读取步骤的流程示意图。数据中心可以把已存储的数据通过HTTP等接口对外提供数据服务。而不同类型的数据采用的数据接口不同。其中,结构化数据也称为关系型数据,非结构化数据也称为非关系型数据;对于结构化数据,这些数据以数据库字段形式存储在数据中心,数据中心可以通过Restful API的形式暴露接口供终端读取和修改,例如终端通过上述数据增删改查接口(Data CRUD API)进行结构化数据的提取。对于非结构化数据,这些数据以文件形式存储在数据中心,则数据中心可以通过HTTP提供的文件流接口的形式供终端进行读取。
[0089] 通过上述实施例,数据中心可以基于不同类型的数据采用不同类型的数据库进行存储,并通过不同类型的数据接口供其他设备进行读取或修改,从而提高了手术规划的效率。
[0090] 在一个实施例中,如图11所示,提供了一种手术规划方法,以该方法应用于图1中的规划服务网格为例进行说明,包括以下步骤:
[0091] 步骤S202,获取终端对应的手术规划请求和终端的标识。
[0092] 其中,用户需要进行手术规划时,可以通过终端向手术规划服务网格发送手术规划请求,手术规划服务网格可以通过工作流服务网格接收终端发送的手术规划网格。其中,上述手术规划服务网格中可以包括多个规划服务网格,每个规划服务网格具有对应的负载信息。工作流服务网格可以基于手术规划请求确定对应的规划服务网格,并将终端的标识和手术规划请求发送至对应的规划服务网格中,从而规划服务网格可以得到终端对应的手术规划请求和终端的标识。终端可以包括多种类型的终端,例如固定终端和移动终端等,则终端的标识也可以与相应类型的终端对应。例如,固定终端对应固定终端标识,移动终端对应移动终端标识等。具体地,上述固定终端可以包括计算机端的网页等;移动终端可以包括平板电脑、手机、AR/VR眼镜、HoloLens等设备。其中,平板电脑和手机端可以通过网页、应用软件等方式进行手术规划过程;AR/VR眼镜、HoloLens等虚拟现实设备可以通过相应的眼镜应用等进行手术规划。
[0093] 步骤S204,基于终端的标识和手术规划请求向数据中心请求目标数据。
[0094] 其中,手术规划服务网格中可以设置有多个规划服务网格,规划服务网格可以接收工作流服务网格发送的终端的标识和手术规划请求,并基于该终端的标识和手术规划请求,向数据中心请求目标数据。其中,上述数据中心中可以设置有多个接口,包括第一数据接口和第二数据接口等,不同的数据接口可以用于传输不同类型的数据。规划服务网格确定上述目标数据后,可以基于数据中心提供的第一数据接口,向数据中心请求上述手术规划请求对应的目标数据,其中目标数据的数据类型和第一数据接口对应。
[0095] 步骤S206,基于目标数据生成目标手术规划结果,将目标手术规划结果存储至数据中心。
[0096] 其中,规划服务网格获取到上述目标数据后,可以基于目标数据生成目标手术规划结果。例如,规划服务网格可以基于目标数据对应的业务类型、目标数据中包含的规划要求和规划参数等信息生成目标手术规划结果,具体地,规划要求可以包括手术时间、手术类型、主刀医师、手术地点等信息。另外,在一些实施例中,上述目标手术规划结果也可以由用户制定。例如,规划服务网格可以在获取目标数据后,将目标数据发送至终端,终端可以基于目标数据生成目标手术规划结果,并将目标手术规划结果发送至规划服务网格中,从而规划服务网格可以获取终端发送的基于目标数据生成的目标手术规划结果。终端得到上述目标手术规划结果后,还可以将目标手术规划结果存储至数据中心。
[0097] 具体地,上述规划服务网格可以提供一系列软件服务,在云端部署且Docker化,并且可以采用K8s平台进行运维,可以实现动态扩容和后台服务等功能。其中k8s是为容器服务而生的一个可移植容器的编排管理工具。规划服务网格得到上述目标手术规划结果后,还可以将其在终端中进行展示。其中,上述规划服务网格中还包括渲染服务(Render Services),渲染服务中包括规划应用的渲染后端(APP Render Back End)等组件,可以为终端的图像渲染,图像处理提供服务,并将图像处理的结果和数据传输给前端进行展示。从而规划服务网格可以调用上述渲染服务,对目标手术规划请求进行图像渲染,从而规划服务网格可以将渲染完成的目标手术规划结果发送至上述终端中进行展示。
[0098] 上述手术规划方法中,通过工作流服务网格获取终端发送的手术规划请求,将终端的标识和手术规划请求发送至对应的规划服务网格,通过规划服务网格基于终端的标识和手术规划请求向数据中心请求目标数据,基于目标数据生成目标手术规划结果。其中数据中心可以用于存储手术规划所需的目标数据和目标手术规划结果。相较于传统的通过特定设备以及单机架构进行手术规划,本方案通过包括数据中心、工作流服务网格和规划服务网格的手术规划服务网格进行多方互联的手术规划,提高了手术规划的效率。
[0099] 应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0100] 在一个实施例中,提供了一种手术规划系统,系统包括:终端和上述的手术规划服务网格;终端,用于获取手术规划请求,将手术规划请求发送至手术规划服务网格中的工作流服务网格;工作流服务网格,用于获取终端发送的手术规划请求,并将终端的标识和手术规划请求发送至对应的规划服务网格;规划服务网格,用于基于终端的标识和手术规划请求向数据中心请求目标数据,基于目标数据生成目标手术规划结果,将目标手术规划结果存储至数据中心。
[0101] 对于手术规划系统的具体限定可以参见上文中对于手术规划服务网格和手术规划方法的限定,在此不再赘述。
[0102] 基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的手术规划方法的手术规划装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个手术规划装置实施例中的具体限定可以参见上文中对于手术规划方法的限定,在此不再赘述。
[0103] 在一个实施例中,如图12所示,提供了一种手术规划装置,包括:获取模块500、请求模块502和发送模块504,其中:
[0104] 获取模块500,用于获取终端对应的手术规划请求和终端的标识。
[0105] 请求模块502,用于基于所述终端的标识和手术规划请求向所述数据中心请求目标数据。
[0106] 发送模块504,用于基于所述目标数据生成目标手术规划结果,将所述目标手术规划结果存储至所述数据中心。
[0107] 上述手术规划装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0108] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是规划服务网格,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种手术规划方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0109] 本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0110] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的手术规划方法。
[0111] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的手术规划方法。
[0112] 在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的手术规划方法。
[0113] 涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
[0114] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0115] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0116] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。