医学图像处理方法及系统、客户端及服务器与流程

文档序号:15603500发布日期:2018-10-09 17:00阅读:222来源:国知局
医学图像处理方法及系统、客户端及服务器与流程

本发明涉及医学图像处理领域,特别涉及医学图像处理方法及系统、客户端及服务器。



背景技术:

大型医疗设备的工作站通常有诸应用程序具有图像处理功能。各个图像处理算法通过动态链接库(.dll)文件进行封装,形成可被调用的图像处理算法库。 每个应用程序作为相互独立的进程,需要分别加载图像处理算法库,并单独分配资源供图像处理算法库使用。应用程序通过图像处理算法库的接口调用图像处理算法对图像进行增强、降噪、均衡或校正等处理。

例如,利用数字化X射线摄影机(Digital Radiography,DR)检查时,受检者位于检查室,医师或操作者位于操作间;医生或操作者通过操作间中的工作站控制DR设备并获取受检者的图像。在获取受检者图像后,根据图像的质量以及不同的医疗用途,医生或操作者可能需要通过工作站中的应用程序对图像进行增强、降噪、均衡或校正等处理。

然而,对于上述图像处理算法库的调用方法,由于各个应用程序需要完成的图像处理操作不同,故,每个应用程序调用的图像处理算法库也不尽相同。若这些应用程序同时运行,则可能导致同一算法库被多次加载,造成资源的重复占用,使系统资源过度消耗,处理速度降低。

更多相关技术方案可以参考公开号为CN 102681867A的中国专利,但仍未解决上述技术问题。



技术实现要素:

本发明解决的是现有技术中多个用户业务同时调用图像处理算法库造成的资源冗余消耗的问题。

为了解决上述问题,本发明技术方案提供一种医学图像处理方法,所述方法根据用户业务请求服务单元对源图像进行处理,所述服务单元具有多个算法库,所述方法包括:注册用户业务,根据所述用户业务生成共享存储和与所述用户业务对应的注册信息;加载源图像;发送图像处理请求,处理所述源图像并生成目标图像,基于所述注册信息将所述目标图像写入所述共享存储;读取所述目标图像。

可选地,所述注册用户业务,根据所述用户业务生成共享存储和与所述用户业务对应的注册信息包括:发送注册请求;对所述注册请求进行协议分析,提取所述注册请求的协议字段内容,获取用户业务标签;基于所述用户业务标签生成与所述用户业务对应的注册信息,生成共享存储,并获取共享存储标签;将所述共享存储标签返回所述用户业务。

可选地,所述加载源图像包括:发送设置图像来源请求;对所述设置图像来源请求进行协议分析,提取所述设置图像来源请求的协议字段内容,获取图像描述符;根据所述图像描述符加载所述源图像,绑定所述图像描述符和所述用户业务标签。

可选地,所述图像描述符关联于所述源图像的网络位置或物理存储器中的至少一种。

可选地,所述源图像具有第一参数组合,所述第一参数组合关联于降噪强度、双边过滤强度、多尺度增强强度、显示查找表曲线对比度或显示查找表曲线水平位移。

可选地,所述发送图像处理请求,处理所述源图像并生成目标图像,基于所述注册信息将所述目标图像写入所述共享存储包括:发送图像处理请求;对所述图像处理请求进行协议分析,提取所述图像处理请求的协议字段内容,获取第二参数组合;合并所述第一参数组合和所述第二参数组合,获得第三参数组合;将所述第三参数组合与所述服务单元中的算法库进行匹配形成匹配结果,基于所述匹配结果处理所述源图像,生成目标图像;基于所述注册信息将所述目标图像写入所述共享存储。

可选地,所述第二参数组合关联于降噪强度、双边过滤强度、多尺度增强强度、显示查找表曲线对比度或显示查找表曲线水平位移。

可选地,在合并所述第一参数组合和所述第二参数组合时,若所述第一参数组合与所述第二参数组合不同,则以所述第二参数组合为准。

可选地,所述医学图像处理方法还包括:释放所述共享存储。

可选地,所述医学图像处理方法采用如下方式处理多个用户业务发送的所述注册请求、所述设置图像来源请求和所述图像处理请求:提供消息队列一,用于保存多个用户业务发送的注册请求;所述用户业务发送的注册请求插入所述消息队列一队尾,所述服务单元处理位于所述消息队列一队头的注册请求;提供消息队列二,用于保存多个用户业务发送的设置图像来源请求;所述用户业务发送的设置图像来源请求插入所述消息队列二队尾,所述服务单元处理位于所述消息队列二队头的设置图像来源请求;提供消息队列三,用于保存多个用户业务发送的图像处理请求;所述用户业务发送的图像处理请求插入所述消息队列三队尾,所述服务单元处理位于所述消息队列三队头的图像处理请求。

本发明技术方案还提供一种客户端,具有至少一个用户业务,用于向服务器发送注册请求以生成与所述用户业务对应的共享存储,所述注册请求包括用户业务标签;或用于发送设置图像来源请求,所述设置图像来源请求包括图像描述符;或用于发送图像处理请求;或用于从所述共享存储中读取源图像经处理后得到的目标图像。

本发明技术方案还提供一种服务器,包括服务单元,用于接收用户业务发送的注册请求,根据用户业务生成共享存储和与所述用户业务对应的注册信息,所述注册请求包括用户业务标签;或用于加载源图像;或用于处理所述源图像并生成目标图像,并基于所述注册信息将所述目标图像写入所述共享存储。

相应地,本发明技术方案还提供一种医学图像处理系统,包括所述客户端和所述服务器。

可选地,所述客户端和所述服务器之间通过套接字socket建立通信通道。

与现有技术相比,本发明技术方案中,经过注册的用户业务在处理医学图像时,需要向服务单元发送请求;服务单元分配独立的共享存储用于存放源图像处理后得到的目标图像。上述图像处理操作通过服务单元将算法库独立于各个用户业务,具有如下优点:

算法库与应用程序之间无接口依赖,服务单元中的算法库可以任意扩展,用户业务调用扩展后的算法库不需要重新编译以适应接口的变化;算法库运行于服务器端,可以先于用户业务而独立启动,启动速度快;另外,由于用户业务占用资源少,故,可以同时启动多个用户业务而不致造成系统资源紧张,减少了多个用户业务同时调用算法库造成的资源冗余消耗,提高系统的稳定性和效率。

附图说明

图1是现有医疗设备工作站中重复加载算法库的图像处理方法示意图;

图2是本发明实施方式的医学图像处理方法的流程图;

图3是本发明实施方式的医学图像处理方法中注册用户业务的流程图;

图4是本发明实施方式的医学图像处理方法中加载源图像的流程图;

图5是本发明实施方式的医学图像处理方法中处理源图像的流程图;

图6是本发明实施方式的医学图像处理系统的示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在以下描述中阐述了具体细节以便于充分理解本发明。但是本发明能够以多种不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广。因此本发明不受下面公开的具体实施方式的限制。

如背景技术所述,医疗设备的工作站中每个应用程序作为相互独立的进程,需要分别加载图像处理算法库,并单独分配资源供图像处理算法库使用。举例来说,参阅图1,图1是现有医疗设备工作站中重复加载算法库的图像处理方法示意图。第一应用程序Application1对源图像进行处理时,分配一块内存区用于加载第一算法库AlgorithmLibrary1;第二应用程序Application2对源图像进行处理时,分配另一块内存区用于加载第二算法库AlgorithmLibrary2;第三应用程序Application3对源图像进行处理时,分配又一块内存区用于加载第一算法库AlgorithmLibrary1和第二算法库AlgorithmLibrary2。

第一应用程序Application1分配的内存区和第三应用程序Application3分配的内存区都加载了第一算法库AlgorithmLibrary1;第二应用程序Application2分配的内存区和第三应用程序Application3分配的内存区都加载了第二算法库AlgorithmLibrary2。

发明人经过研究发现,每个应用程序都单独加载算法库,相应的算法库便会被多次加载,重复占用资源。同时运行需要相同图像处理算法库的不同应用程序,会导致系统资源的浪费,处理速度降低。对于包含复杂算法的算法库,处理效率降低尤其明显。此外,每个应用程序需要加载的算法库不完全相同,若某个应用程序与对应算法库的接口发生变化,例如增加接口,则可能导致该算法库的函数入口点发生变化,其他应用程序无法正常加载该算法库,而需要重新编译后再加载。

基于此,本发明技术方案提供一种医学图像处理方法,所述方法根据用户业务请求服务单元对源图像进行处理,所述服务单元具有多个算法库。参阅图2,图2是本发明实施方式的医学图像处理方法的流程图。所述方法包括:

S10:注册用户业务,根据所述用户业务生成共享存储和与所述用户业务对应的注册信息;

S20:加载源图像;

S30:发送图像处理请求,处理所述源图像并生成目标图像,基于所述注册信息将所述目标图像写入所述共享存储;

S40:读取所述目标图像,释放所述共享存储。

所述源图像是指由医疗设备中探测器输出的电信号直接获得的原始图像。所述源图像具有第一参数组合,所述第一参数组合关联于降噪强度、双边过滤强度、多尺度增强强度、显示查找表曲线对比度或显示查找表曲线水平位移。

源图像可以存储于医疗设备工作站内的物理存储器中,可以存储于医疗设备工作站之外的网络位置。所述医疗设备可以是数字化X射线摄影(Digital Radiography,DR)设备、数字减影造影(Digital Subtract Angiography,DSA)设备、计算机X射线断层扫描(Computed tomography,CT)设备、磁共振成像(Magnetic Resonance Imaging,MRI)设备或正电子发射计算机断层扫描(Positron Emission Tomography,PET)设备。

下面结合具体实施例对上述医学图像处理方法进行详细说明。本实施例中,第一用户业务需要利用第一算法库处理源图像,第二用户业务需要利用第二算法库处理源图像,第三用户业务需要利用第一算法库和第二算法库处理源图像。

S10:注册用户业务,根据所述用户业务生成共享存储和与所述用户业务对应的注册信息。参阅图3,图3是本发明实施方式的医学图像处理方法中注册用户业务的流程图。步骤S10包括:

S11.发送注册请求。用户业务100在请求服务单元200对源图像进行处理之前需要先在服务单元200中进行注册。用户业务100发送注册请求CMD_REG至服务单元200。

S12.对所述注册请求进行协议分析,提取所述注册请求的协议字段内容,获取用户业务标签。服务单元200对所述注册请求CMD_REG进行协议分析,提取所述注册请求CMD_REG的协议字段内容,获取用户业务标签。用户业务标签是用于标识用户业务的字段,可以是用户业务的名称,也可以是用户业务的ID。

S13.基于所述用户业务标签生成与所述用户业务对应的注册信息,生成共享存储300,获取共享存储标签。用户业务的注册信息关联于用户业务标签,如前所述,用户业务标签是用于标识用户业务的字段,可以是用户业务的名称,也可以是用户业务的ID,因此,用户业务的注册信息也可以标识用户业务。除了标识用户业务外,注册信息还可以包括用户业务发出注册请求的时间、执行图像处理操作的限定条件等。共享存储标签是用于标识共享存储的字段,可以是共享存储的名称,也可以是共享存储的ID。

S14.将所述共享存储标签返回所述用户业务。

本实施例中,首先注册第一用户业务,根据所述第一用户业务生成第一共享存储和与所述第一用户业务对应的第一注册信息。具体而言:

执行步骤S11,第一用户业务向服务单元发送注册请求CMD_REG_1。

执行步骤S12,所述服务单元对所述注册请求CMD_REG_1进行协议分析,提取所述注册请求CMD_REG_1的协议字段内容,获取第一用户业务标签。

执行步骤S13,所述服务单元基于所述第一用户业务标签生成与所述第一用户业务对应的第一注册信息,所述服务单元生成第一共享存储,获取所述第一共享存储标签。

执行步骤S14,所述服务单元将所述第一共享存储标签返回所述第一用户业务。

第二用户业务和第三用户业务的注册方法与所述第一用户业务类似,此不赘述。

需要说明的是,若多个用户业务发送注册请求给服务单元,则提供消息队列一,用于保存多个用户业务发送的注册请求。所述用户业务发送的注册请求插入所述消息队列一队尾,所述服务单元处理位于所述消息队列一队头的注册请求。

本实施例中,若第一用户业务、第二用户业务和第三用户业务分别依次向服务单元发送注册请求CMD_REG_1、注册请求CMD_REG_2、注册请求CMD_REG_3,则第一用户业务发送的注册请求CMD_REG_1首先插入消息队列一队尾;接着第二用户业务发送的注册请求CMD_REG_2再插入消息队列一队尾,排在注册请求CMD_REG_1之后;最后第三用户业务发送的注册请求CMD_REG_3再插入消息队列一队尾,排在注册请求CMD_REG_2之后。

服务单元处理用户业务的注册请求时,首先从消息队列一队头取出第一用户业务的注册请求CMD_REG_1进行处理,再取出第二用户业务的注册请求CMD_REG_2进行处理,最后取出第三用户业务的注册请求CMD_REG_3进行处理。

S20:加载源图像。参阅图4,图4是本发明实施方式的医学图像处理方法中加载源图像的流程图。步骤S20包括:

S21.发送设置图像来源请求。

用户业务在请求服务单元对图像进行处理之前,需要发送设置图像来源请求,如图4所示,用户业务100发送设置图像来源请求CMD_SET_IMAGE给服务单元200。

S22.对所述设置图像来源请求进行协议分析,提取所述设置图像来源请求的协议字段内容,获取图像描述符。

服务单元200对设置图像来源请求CMD_SET_IMAGE进行协议分析,获取图像描述符。所述图像描述符关联于所述源图像的网络位置或物理存储器中的至少一种。例如,图像描述符可以关联于存储所述源图像的内存地址、数据库记录、物理路径或网络路径。

S23.根据所述图像描述符加载所述源图像,绑定所述图像描述符和所述用户业务标签。

服务单元200根据图像描述符中携带的源图像的存储地址加载源图像。如前所述,源图像可以存储于医疗设备工作站内的物理存储器中,可以存储于医疗设备工作站之外的网络位置。服务单元200便从相应的位置加载源图像。

本实施例中,服务单元加载源图像。具体而言:

执行步骤S21,第一用户业务发送设置图像来源请求CMD_SET_IMAGE_1。

执行步骤S22,服务单元对所述设置图像来源请求CMD_SET_IMAGE_1进行协议分析,提取所述设置图像来源请求CMD_SET_IMAGE_1的协议字段内容,获取第一图像描述符。

执行步骤S23,根据所述第一图像描述符加载所述源图像,绑定所述第一图像描述符和所述第一用户业务标签。

对于第二用户业务和第三用户业务,其加载源图像的方法与第一用户业务类似,此不赘述。

需要说明的是,若多个用户业务发送设置图像来源请求给服务单元,则提供消息队列二,用于保存多个用户业务发送的设置图像来源请求。所述用户业务发送的设置图像来源请求插入所述消息队列二队尾,所述服务单元处理位于所述消息队列二队头的设置图像来源请求。

举例说明,若第一用户业务、第二用户业务和第三用户业务依次向服务单元发送设置图像来源请求CMD_SET_IMAGE_1、设置图像来源请求CMD_SET_IMAGE_2和设置图像来源请求CMD_SET_IMAGE_3,则第一用户业务发送的设置图像来源请求CMD_SET_IMAGE_1首先插入消息队列二队尾;接着第二用户业务发送的设置图像来源请求CMD_SET_IMAGE_2再插入消息队列二队尾,排在设置图像来源请求CMD_SET_IMAGE_1之后;最后第三用户业务发送的设置图像来源请求CMD_SET_IMAGE_3再插入消息队列二队尾,排在设置图像来源请求CMD_SET_IMAGE_2之后。

服务单元对设置图像来源请求CMD_SET_IMAGE进行协议分析时,首先从消息队列二队头取出第一用户业务的设置图像来源请求CMD_SET_IMAGE_1进行协议分析,再取出第二用户业务的设置图像来源请求CMD_SET_IMAGE_2进行协议分析,最后取出第三用户业务的注册请求CMD_SET_IMAGE_3进行协议分析。

S30:发送图像处理请求,处理所述源图像并生成目标图像,基于所述注册信息将所述目标图像写入所述共享存储。参阅图5,图5是本发明实施方式的医学图像处理方法中处理源图像的流程图。步骤S30包括:

S31.发送图像处理请求。用户业务100向服务单元200发送图像处理请求。

S32.对所述图像处理请求进行协议分析,提取所述图像处理请求的协议字段内容,获取第二参数组合。所述第二参数组合关联于降噪强度、双边过滤强度、多尺度增强强度、显示查找表曲线对比度或显示查找表曲线水平位移。

S33.合并所述第一参数组合和所述第二参数组合,获得第三参数组合。在合并所述第一参数组合和所述第二参数组合时,若所述第一参数组合与所述第二参数组合中的参数相同,则第三参数组合可以选用第一参数组合,也可以选用第二参数组合;若所述第一参数组合与所述第二参数组合不同,则以所述第二参数组合为准。

S34.将所述第三参数组合与所述服务单元中的算法库进行匹配形成匹配结果,基于所述匹配结果处理所述源图像,生成目标图像。

S35.基于所述注册信息将所述目标图像写入所述共享存储。服务单元200将所述目标图像写入所述共享存储300。

本实施例中,第一用户业务发送图像处理请求,服务单元处理所述源图像并生成目标图像,基于所述第一注册信息将所述目标图像写入第一共享存储。具体而言:

执行步骤S31,第一用户业务向服务单元发送图像处理请求CMD_PROCESS_IMAGE_1。

执行步骤S32,所述服务单元对所述图像处理请求CMD_PROCESS_IMAGE_1进行协议分析,提取所述图像处理请求CMD_PROCESS_IMAGE_1的协议字段内容,获取第二参数组合。

执行步骤S33,合并所述第一参数组合和所述第二参数组合,获得第三参数组合。

执行步骤S34,服务单元将所述第三参数组合与所述服务单元中的算法库进行匹配形成匹配结果,基于所述匹配结果处理所述源图像,生成目标图像。

执行步骤S35,服务单元基于所述第一注册信息将所述目标图像写入所述第一共享存储。

第二用户业务和第三用户业务处理源图像的方法与第一用户业务类似,此不赘述。

需要说明的是,若多个用户业务发送图像处理请求给服务单元,则提供消息队列三,用于保存多个用户业务发送的图像处理请求;所述用户业务发送的图像处理请求插入所述消息队列三队尾,所述服务单元处理位于所述消息队列三队头的图像处理请求。

举例说明,若第一用户业务、第二用户业务和第三用户业务分别依次向服务单元发送图像处理请求CMD_PROCESS_IMAGE_1、图像处理请求CMD_PROCESS_IMAGE_1和图像处理请求CMD_PROCESS_IMAGE_1,则第一用户业务发送的图像处理请求CMD_PROCESS_IMAGE_1首先插入消息队列三的对尾;接着第二用户业务发送图像处理请求CMD_PROCESS_IMAGE_2再插入消息队列三队尾,排在图像处理请求CMD_PROCESS_IMAGE_1之后;最后第三用户业务发送的图像处理请求CMD_PROCESS_IMAGE_3再插入消息队列三的队尾,排在图像处理请求CMD_PROCESS_IMAGE_2之后。

服务单元对图像处理请求CMD_PROCESS_IMAGE进行协议分析时,首先从消息队列三队头取出第一用户业务的图像处理请求CMD_PROCESS_IMAGE_1进行协议分析,再取出第二用户业务的图像处理请求CMD_PROCESS_IMAGE_2进行协议分析,最后取出第三用户业务的图像处理请求CMD_PROCESS_IMAGE_3进行协议分析。

S40:读取所述目标图像。继续参阅图4,用户业务100从所述共享存储300读取所述目标图像。

本实施例中,用户业务100读取目标图像后,服务单元200释放共享存储300。在其他实施例中,用户业务100读取目标图像后,服务单元200也可以保留共享存储300,用于用户业务100发出下一次图像处理请求时保存目标图像。

需要说明的是,共享存储只针对不同的用户业务分配。不同的用户业务请求服务单元生成不同的共享存储,无论这些用户业务使用的算法是否相同。同一用户业务请求服务单元生成同一共享存储,若同一用户业务需要分别使用不同的算法处理多个不同的源图像,则服务通过同一共享存储返回多个目标图像。

本发明技术方案还提供一种客户端,具有至少一个用户业务,用于向服务器发送注册请求以生成与所述用户业务对应的共享存储,所述注册请求包括用户业务标签;或用于发送设置图像来源请求,所述设置图像来源请求包括图像描述符;或用于发送图像处理请求;或用于从所述共享存储中读取源图像经处理后得到的目标图像。所述图像描述符关联于所述源图像的网络位置或物理存储器中的至少一种。

本发明技术方案还提供一种服务器,包括服务单元,用于接收用户业务发送的注册请求,根据用户业务生成共享存储和与所述用户业务对应的注册信息,所述注册请求包括用户业务标签;或用于加载源图像;或用于处理所述源图像并生成目标图像,并基于所述注册信息将所述目标图像写入所述共享存储。

所述服务器还包括消息队列单元,所述消息队列单元包括:

消息队列一,用于保存多个用户业务发送的注册请求;所述用户业务发送的注册请求插入所述消息队列一队尾,所述服务单元处理位于所述消息队列一队头的注册请求。

消息队列二,用于保存多个用户业务发送的设置图像来源请求;所述用户业务发送的设置图像来源请求插入所述消息队列二队尾,所述服务单元处理位于所述消息队列二队头的设置图像来源请求。

消息队列三,用于保存多个用户业务发送的图像处理请求;所述用户业务发送的图像处理请求插入所述消息队列三队尾,所述服务单元处理位于所述消息队列三队头的图像处理请求。

相应地,本发明技术方案还提供一种医学图像处理系统,包括上述客户端和服务器。

参阅图6,图6是本发明实施方式的医学图像处理系统的示意图。作为本发明的一个具体实施例,所述医学图像处理系统包括客户端一、客户端二、……、客户端N。其中,客户端一具有N个用户业务,即用户业务11至用户业务1n;客户端二具有N个用户业务,即用户业务21至用户业务2n,……,客户端N具有n个用户业务,即用户业务n1至用户业务nn。

所述医学图像处理系统还包括服务器,所述服务器包括服务单元和消息队列单元。

客户端一至客户端N中的一个或多个用户业务都可以向服务器发送注册请求、设置图像来源请求或图像处理请求,所述注册请求插入消息队列单元的消息队列一,所述设置图像来源请求插入消息队列单元的消息队列二,所述图像处理请求插入消息队列单元的消息队列三。

服务单元根据消息队列一中的注册请求生成与所述用户业务对应的共享存储。本实施例中,第一共享存储对应于所述用于业务11,第二共享存储对应于所述用户业务12,……,第N共享存储对应于客户业务1n。其他用户业务对应的共享存储,例如用户业务21至用户业务2n的共享存储或用户业务n1至用户业务nn的共享出出,图中未示出。

服务单元根据消息队列二中设置图像来源请求加载源图像。服务单元根据消息队列三种的图像处理请求处理源图像,并将处理后的目标图像存储至相应地共享存储。

客户端中的各个用户业务从相应地共享存储中读取目标图像。

本实施例中,所述客户端和所述服务器之间可以通过套接字(socket)建立通信通道。在其他实施例中,所述客户端和所述服务器之间也可以通过邮槽(mailslot)或其他方式建立通信通道。

综上所述, 本发明技术方案中,经过注册的用户业务在处理医学图像时,需要向服务单元发送请求;服务单元分配独立的共享存储用于存放源图像处理后得到的目标图像。上述图像处理操作通过服务单元将算法库独立于各个用户业务,具有如下优点:

算法库与应用程序之间无接口依赖,服务单元中的算法库可以任意扩展,用户业务调用扩展后的算法库不需要重新编译以适应接口的变化;算法库运行于服务器端,可以先于用户业务而独立启动,启动速度快;另外,由于用户业务占用资源少,故,可以同时启动多个用户业务而不致造成系统资源紧张,减少了多个用户业务同时调用算法库造成的资源冗余消耗,提高系统的稳定性和效率。

以上公开了本发明的多个方面和实施方式,本领域的技术人员会明白本发明的其它方面和实施方式。本发明中公开的多个方面和实施方式只是用于举例说明,并非是对本发明的限定,本发明的真正保护范围和精神应当以权利要求书为准。

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