CN104572293B - 基于bs结构的医学影像阅片系统的实现方法 - Google Patents
基于bs结构的医学影像阅片系统的实现方法 Download PDFInfo
- Publication number
- CN104572293B CN104572293B CN201310522401.9A CN201310522401A CN104572293B CN 104572293 B CN104572293 B CN 104572293B CN 201310522401 A CN201310522401 A CN 201310522401A CN 104572293 B CN104572293 B CN 104572293B
- Authority
- CN
- China
- Prior art keywords
- medical image
- image
- web server
- browser
- subprocess
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Medical Treatment And Welfare Office Work (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开一种基于BS结构的医学影像阅片系统的实现方法,包括步骤:浏览器采用Ajax技术通过HTTP协议向医学影像Web服务器发出图像请求;医学影像Web服务器采用进程调度机制和缓冲机制获取对应当前请求的医学影像返回给浏览器;浏览器采用模拟队列的方式从医学影像Web服务器获取医学影像并进行显示。本发明浏览器无需安装客户端和插件,实现过程更简洁,用户使用更方便,同时医学影像Web服务器通过采用进程调度机制和缓冲机制实现了影像的快速传输与处理,整个系统在性能上有了很大的改进同时为系统跨平台跨浏览器的实现提供了有利条件。
Description
技术领域
本发明涉及医学影像处理技术,尤其是涉及一种基于BS结构的医学影像阅片系统的实现方法。
背景技术
最近JavaScript引擎的快速发展,脚本运行性能大幅提高,在浏览器端处理复杂应用变得可能,在前端采用模拟线程/模拟队列技术对用户的请求进行处理,同时Web影像服务程序中采用进程调度机制和缓冲机制实现医学影像的快速加载,这二者的结合能及时响应用户请求,保证取图成功。
已有发明通过ActiveX技术或者Java Applet来实现图像的处理,但需要浏览器预先安装插件。现有Web PACS需要在浏览器上安装ActiveX控件或Java Applet,加大了用户使用的难度和实施的复杂度,此种方法会影响图像浏览相关的每个用户,且插件的不稳定性会影响用户其他的浏览器操作。
发明内容
本发明是提出一种基于BS结构的医学影像阅片系统的实现方法,在浏览器没有插件支持的条件下实现医学影像显示,实现过程更简洁,用户使用更方便。
本发明采用如下技术方案实现:一种基于BS结构的医学影像阅片系统的实现方法,该医学影像阅片系统包括浏览器、采用进程调度机制和缓冲机制的医学影像Web服务器及图像处理子进程,所述方法包括步骤:
浏览器采用Ajax技术通过HTTP协议向医学影像Web服务器发出图像请求;
医学影像Web服务器根据共享内存的状态判断是否分配图像处理子进程的工作任务,如果共享内存中存在对应当前请求的医学影像,则直接将共享内存中对应当前请求的医学影像返回给浏览器,当共享内存中不存在当前请求的医学影像时,医学影像Web服务器分配图像处理子进程工作任务,并于图像处理子程序获取对应当前请求的医学影像后控制将对应当前请求的医学影像返回给浏览器;
图像处理子程序根据DICOM文件的UIDs从数据文件存储服务器请求对应当前请求的医学影像的DICOM文件流,并将DICOM文件流存储在共享内存中;
浏览器采用模拟队列的方式从医学影像Web服务器获取医学影像并进行显示。
其中,浏览器采用模拟队列的方式从医学影像Web服务器获取医学影像并进行显示的步骤具体包括:
当用户请求医学图像后,浏览器首先获取DICOM影像信息,采用模拟队列的方式保证每次只取当前信息同时保证获取成功;
当模拟队列的所有信息获取完成后,启动取图线程并加载蒙层图和切块图,在加载过程中蒙层显示而切块图隐藏,当加载完成后,切块图显示而蒙层图隐藏,同样采用模拟队列的方式保证用户最后一次的操作请求成功;
当显示窗口的图像加载完成后,启动显示线程来显示图像和图像信息。
其中,浏览器与医学影像Web服务器之间通过Ajax技术进行异步通信。
在,医学影像Web服务器为高并发Web服务器,且医学影像Web服务器具有完成端口来完成多个浏览器的并发请求。
其中,在医学影像Web服务器中至少配置了Web服务子进程、共享内存、处理任务子进程和管理主进程,通过进程调度机制来使用完成端口。
其中,进程调度机制包括:
当医学影像Web服务器接收到一个来自浏览器的请求时,Web服务子进程启动一个线程任务;
判断处理子进程的属性信息结构,如果该进程已经分配资源,直接向处理任务子进程发出处理请求,同时向处理任务子进程发出消息,通知处理任务子进程进入执行状态,如果该进程没有分配资源,则向管理主进程发出请求,由管理主进程为该线程任务分配资源;
如果所有的处理任务子进程都处于处理状态,则由管理主进程直接启动一个进程来执行任务。
与现有技术相比,本发明具有如下有益效果:
本发明改进了现有的Web PACS(Picture Archiving and CommunicationSystems)在客户端处理图像的框架,在浏览器没有安装任何插件下完成,直接通过Ajax技术实时向医学影像Web服务器发送获取医学影像的请求,医学影像Web服务器采用进程调度机制和缓冲机制根据请求中的参数处理和返回影像,同时在浏览器上进行显示,实现过程更简洁,用户使用更方便。并且,本发明在传统Web PACS的基础上改进了浏览器处理医学影像的模式,无需安装客户端和插件,只需要登录浏览器就可以使用本系统,同时采用进程调度机制和缓冲机制,实现了影像的快速传输与处理,整个系统在性能上有了很大的改进同时为系统跨平台跨浏览器的实现提供了有利条件。
附图说明
图1是本发明的系统结构示意图;
图2是浏览器获取医学影响的流程示意图;
图3是医学影像Web服务器中完成端口的模型示意图;
图4是医学影像Web服务器中各个进程的工作原理示意图。
具体实施方式
本发明提出一种基于BS结构(即浏览器和服务器结构)的医学影像阅片系统,在浏览器无插件支持情况下,直接通过Ajax技术实时向医学影像Web服务器发送请求url,医学影像Web服务器采用进程调度机制和缓冲机制根据请求中的参数处理和返回医学影像,同时在浏览器上进行显示。
如图1所示,系统主要由三部分构成,分别是浏览器、医学影像Web服务器和影像处理子进程。其中,浏览器作为客户端,可以是由HTML、JavaScript或CSS等语言来实现。作为客户端的浏览器采用Ajax技术通过HTTP协议向医学影像Web服务器发出图像请求url,医学影像Web服务器根据共享内存的状态判断是否分配图像处理子进程的工作任务——如果共享内存中存在当前请求的医学影像,则直接将共享内存中当前请求的医学影像返回并在浏览器上显示,当共享内存中不存在当前请求的医学影像时,医学影像Web服务器分配图像处理子进程,由图像处理子程序根据WADO(Web Access to DICOM Persistent Objects)协议串中的DICOM(Digitalimaging and Communications in Medicine)文件的UIDs从数据文件存储服务器请求DICOM文件流,并将DICOM文件流存储在共享内存,同时将数据返回,浏览器通过HTTP协议接收从医学影像Web服务器返回的影像并进行显示。
浏览器是显示影像以及用户交互影像的主窗口,要求页面设计能够满足用户对影像阅片系统的需求,并且当网络环境不稳定时保证系统的流畅性,因此,在本申请中浏览器采用Ajax技术、模拟线程(采用模拟线程的目的是为了实现请求的正确响应,利用状态位的改变来开启或者关闭模拟线程)、模拟队列技术(用户的请求操作在前台缓冲区域保存,当前请求正在执行时忽略缓冲区的其他请求,请求的任务执行完成后判断缓冲区任务的长度,若仍存在请求时,获取最后一次请求执行,忽略其他请求,这样即可避免请求堵塞导致浏览器卡死)以及多图层分块技术对医学影像请求进行处理,方便医学影像Web服务器及时响应保证最后取图的成功。
Ajax提供浏览器与医学影像Web服务器之间异步通信的能力,从而使用户从请求/响应的循环中解脱出来。借助于Ajax,可以在用户单击浏览器上的操作按钮时,使用JavaScript和DHTML立即更新用户界面(User Interface,UI),并向医学影像Web服务器发出异步请求,以执行更新或查询数据库。当请求返回时,就可以使用JavaScript和CSS来相应地更新UI,而不是刷新整个页面。最重要的是,用户甚至不知道浏览器正在与医学影像Web服务器通信:Web站点看起来是即时响应的。采用Ajax后,可以缩短Web站点的响应时间,提高服务的处理速度。
多图层分块技术是指,过在WADO服务中将影像显示区域显示的影像块裁剪出来,并返回与实际显示显示框大小一致的影像。影像分块提高了影像的传输速度,但由于所截取的分块的影像只是显示区域显示的影像,当对医学影像缩放、移动等操作时,仅能看到截取的分块的影像,产生影像浏览不连贯,用户体验性差等负面现象,因此引入双图层技术,通过设置底层图像和切块图像的位置和大小,并且将二者完美重合,达到显示影像流畅的效果。
结合图2所示,当用户请求医学图像后,浏览器首先获取DICOM影像信息,采用模拟队列的方式保证每次只取当前信息同时保证获取成功。当这个序列的所有信息获取完成后,启动取图线程,加载蒙层图和切块图,在加载过程中蒙层显示,切块图隐藏,当加载完成后,切块图显示蒙层图隐藏,同样采用模拟队列的方式保证用户最后一次的操作请求成功。当显示窗口的图像加载完成后,启动显示线程,显示图像和图像信息,整个获取医学影像图形的流程结束。
医学影像Web服务器是一种高并发Web服务器,在有限的服务器资源下尽可能的支持更多的用户并发请求。基于此目的,本申请采用了Windows系统的完成端口(CompletedPorts)技术来提高Web影像服务器的性能。如图3所示的完成端口(Completed Ports)模型示意图,完成端口是指一种通知队列,通过操作系统将完成的重叠I/O请求通知放到完成端口中。一个I/O操作完成后,操作系统会发送一个通知到与此操作相关的线程中,而事先创建的套接字可以在任意时间与此完成端口关联,提交给线程处理。高效的处理海量连接是完成端口的最大优点,正好满足系统处理高并发量的需求。
另外,医学影像Web服务器通过使用完成端口技术,设计了一种进程管理服务体系。如图4所示,在医学影像Web服务器中至少配置了Web服务子进程(WebServerChild.exe)、共享内存(Shared Memory)、处理任务子进程(WebExecChild.exe)、管理主进程(WebServer.exe),由管理进程来实现对资源的有效分配,具体处理流程如下:
1、当管理主进程WebServer.exe启动后,将进程消息句柄记录在属性信息中。同时为了避免启动任务进程影响系统的运行效率,在启动管理主进程后预先启动几个处理子进程,使用CreateProcess启动任务进程,函数调用结束后返回进程ID号,找出子进程信息列表中未记录进程信息的位置,将内容写入该位置,同时修改进程状态表示该Web服务子进程WebServerChild.exe正在启动中,不能接收任务处理。
2、处理任务子进程WebExecChild.exe启动后,打开管理主进程创建的共享内存,将其影射到该进程地址中,这样处理任务子进程WebExecChild.exe就可以访问进程信息列表,修改进程状态,说明进程已经启动,进入等待任务状态,同时向管理主进程发出消息,通知管理主进程可以为该进程分配任务。
3、当Web服务接收到一个任务请求时,Web服务子进程WebServerChild.exe启动一个线程任务,首先判断处理子进程WebExecChild.exe的属性信息结构,如果该进程已经分配资源,直接向处理任务子进程WebExecChild.exe发出处理请求,如果未分配资源,将管道进程属性值改变向管理主进程WebServer.exe发出请求,管理主进程WebServer.exe为该线程分配资源,同时向处理任务子进程WebExecChild.exe发出消息,通知处理任务子进程WebExecChild.exe进入执行状态。如果所有的处理任务子进程WebExecChild.exe都处于处理状态,则由管理主进程WebServer.exe直接启动一个进程来执行任务。
通过此进程调度策略和缓冲机制实现多用户的并发、避免医学影像的重复加载,从而有效的改善了医学影像加载失败或加载延迟等问题,有利于节约资源、提高医学影像的加载速度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于BS结构的医学影像阅片系统的实现方法,其特征在于,该医学影像阅片系统包括浏览器、采用进程调度机制和缓冲机制的医学影像Web服务器及图像处理子进程,所述方法包括步骤:
浏览器采用Ajax技术通过HTTP协议向医学影像Web服务器发出图像请求;
医学影像Web服务器根据共享内存的状态判断是否分配图像处理子进程的工作任务,如果共享内存中存在对应当前请求的医学影像,则直接将共享内存中对应当前请求的医学影像返回给浏览器,当共享内存中不存在当前请求的医学影像时,医学影像Web服务器分配图像处理子进程工作任务,并于图像处理子程序获取对应当前请求的医学影像后控制将对应当前请求的医学影像返回给浏览器;
图像处理子程序根据DICOM文件的UIDs从数据文件存储服务器请求对应当前请求的医学影像的DICOM文件流,并将DICOM文件流存储在共享内存中;
当用户请求医学图像后,浏览器首先获取DICOM影像信息,采用模拟队列的方式保证每次只取当前信息同时保证获取成功;
当模拟队列的所有信息获取完成后,启动取图线程并加载蒙层图和切块图,在加载过程中蒙层显示而切块图隐藏,当加载完成后,切块图显示而蒙层图隐藏,同样采用模拟队列的方式保证用户最后一次的操作请求成功;
当显示窗口的图像加载完成后,启动显示线程来显示图像和图像信息。
2.根据权利要求1所述基于BS结构的医学影像阅片系统的实现方法,其特征在于,浏览器与医学影像Web服务器之间通过Ajax技术进行异步通信。
3.根据权利要求1所述基于BS结构的医学影像阅片系统的实现方法,其特征在于,医学影像Web服务器为高并发Web服务器,且医学影像Web服务器具有完成端口来完成多个浏览器的并发请求。
4.根据权利要求3所述基于BS结构的医学影像阅片系统的实现方法,其特征在于,在医学影像Web服务器中至少配置了Web服务子进程、共享内存、处理任务子进程和管理主进程,通过进程调度机制来使用完成端口。
5.根据权利要求4所述基于BS结构的医学影像阅片系统的实现方法,其特征在于,进程调度机制包括:
当医学影像Web服务器接收到一个来自浏览器的请求时,Web服务子进程启动一个线程任务;
判断处理子进程的属性信息结构,如果该进程已经分配资源,直接向处理任务子进程发出处理请求,同时向处理任务子进程发出消息,通知处理任务子进程进入执行状态,如果该进程没有分配资源,则向管理主进程发出请求,由管理主进程为该线程任务分配资源;
如果所有的处理任务子进程都处于处理状态,则由管理主进程直接启动一个进程来执行任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310522401.9A CN104572293B (zh) | 2013-10-29 | 2013-10-29 | 基于bs结构的医学影像阅片系统的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310522401.9A CN104572293B (zh) | 2013-10-29 | 2013-10-29 | 基于bs结构的医学影像阅片系统的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572293A CN104572293A (zh) | 2015-04-29 |
CN104572293B true CN104572293B (zh) | 2017-12-26 |
Family
ID=53088439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310522401.9A Active CN104572293B (zh) | 2013-10-29 | 2013-10-29 | 基于bs结构的医学影像阅片系统的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572293B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306573B (zh) * | 2015-11-03 | 2019-07-23 | 浙江格林蓝德信息技术有限公司 | 医学影像原始数据调度方法和医学影像传输系统 |
CN106021612A (zh) * | 2016-06-30 | 2016-10-12 | 沈阳东软医疗系统有限公司 | 一种图像处理方法、装置及设备 |
CN107870816B (zh) * | 2016-09-27 | 2021-11-26 | 苏宁易购集团股份有限公司 | 一种用于图像处理和存储的方法及装置 |
CN107919162A (zh) * | 2017-07-28 | 2018-04-17 | 广州华银医学检验中心有限公司 | 一种阅片信息分享方法及系统 |
CN107887003B (zh) * | 2017-10-18 | 2021-09-07 | 刘志鹏 | 基于SaaS的医学影像处理方法 |
CN108874516A (zh) * | 2018-01-08 | 2018-11-23 | 深圳市铱硙医疗科技有限公司 | 基于mri图像生成csv文件的方法及装置 |
CN108461114A (zh) * | 2018-03-16 | 2018-08-28 | 沈阳东软医疗系统有限公司 | 一种基于浏览器的图像处理方法及装置 |
CN109147914B (zh) * | 2018-10-16 | 2023-04-28 | 上海联影医疗科技股份有限公司 | 一种图像重建系统 |
CN109756704A (zh) * | 2018-11-30 | 2019-05-14 | 安徽清新互联信息科技有限公司 | 一种嵌入式音视频监控系统的进程间通信方法及系统 |
CN109754868A (zh) * | 2018-12-18 | 2019-05-14 | 杭州深睿博联科技有限公司 | 用于医学影像的数据处理方法及装置 |
CN109767827A (zh) * | 2019-01-14 | 2019-05-17 | 云南大学 | Dicom图像原始数据在内存中的共享方法和共享系统 |
CN110855763A (zh) * | 2019-11-04 | 2020-02-28 | 武汉联影医疗科技有限公司 | 基于b/s架构的医学影像采集方法、系统、装置和设备 |
CN112382372B (zh) * | 2020-10-16 | 2024-04-19 | 北京全域医疗技术集团有限公司 | 一种基于网络页面查看dicom文件的系统、方法及设备 |
CN112951382B (zh) * | 2021-02-04 | 2023-09-29 | 慧影医疗科技(北京)股份有限公司 | 医学影像匿名上传方法及系统 |
CN113571162B (zh) * | 2021-07-19 | 2024-02-06 | 蓝网科技股份有限公司 | 一种多用户协同操作医学影像的实现方法、装置及系统 |
CN113838182B (zh) * | 2021-11-24 | 2022-03-22 | 之江实验室 | 基于多线程的磁共振3d图像大数据量渲染方法及系统 |
CN115942003A (zh) * | 2022-12-26 | 2023-04-07 | 杭州医策科技有限公司 | 一种基于浏览器服务器架构的病理图片阅片方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073537A (zh) * | 2010-09-29 | 2011-05-25 | 深圳市蓝韵实业有限公司 | 一种高并发Web医学影像服务器的实现方法 |
CN102591963A (zh) * | 2011-12-30 | 2012-07-18 | 奇智软件(北京)有限公司 | 网页内容加载控制方法及装置 |
CN103177037A (zh) * | 2011-12-26 | 2013-06-26 | 深圳市蓝韵网络有限公司 | 在浏览器上快速显示多帧医学图像的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7483939B2 (en) * | 2005-08-25 | 2009-01-27 | General Electric Company | Medical processing system allocating resources for processing 3D to form 2D image data based on report of monitor data |
-
2013
- 2013-10-29 CN CN201310522401.9A patent/CN104572293B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073537A (zh) * | 2010-09-29 | 2011-05-25 | 深圳市蓝韵实业有限公司 | 一种高并发Web医学影像服务器的实现方法 |
CN103177037A (zh) * | 2011-12-26 | 2013-06-26 | 深圳市蓝韵网络有限公司 | 在浏览器上快速显示多帧医学图像的方法 |
CN102591963A (zh) * | 2011-12-30 | 2012-07-18 | 奇智软件(北京)有限公司 | 网页内容加载控制方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104572293A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104572293B (zh) | 基于bs结构的医学影像阅片系统的实现方法 | |
CN102902805B (zh) | 一种页面访问方法和装置 | |
CN104598257B (zh) | 远程应用程序运行的方法和装置 | |
US8701108B2 (en) | Apparatus and method for controlling live-migrations of a plurality of virtual machines | |
CN103620548B (zh) | 具有增强的应用元数据的存储器管理器 | |
CN109086134A (zh) | 一种深度学习作业的运行方法和装置 | |
US20110196957A1 (en) | Real-Time Policy Visualization by Configuration Item to Demonstrate Real-Time and Historical Interaction of Policies | |
US20140081901A1 (en) | Sharing modeling data between plug-in applications | |
JP6484667B2 (ja) | 構造化文書のページレットのキャッシング | |
KR20120005488A (ko) | 소프트웨어 애플리케이션의 스타트업 비용을 저감시키기 위한 시스템 및 방법 | |
JP2009541831A (ja) | グリッド・システムにおいてセキュリティ強制を追跡するシステムおよび方法 | |
CN106502699A (zh) | 一种应用页面处理方法、装置及系统 | |
CN105787123A (zh) | 最小下载和模拟的页面导航特征 | |
US20090024916A1 (en) | Seamless Asynchronous Updates of Dynamic Content | |
CN102385523A (zh) | 一种云操作系统的驱动安装和管理方法 | |
KR20140101370A (ko) | 자율형 네트워크 스트리밍 기법 | |
CN105095220B (zh) | 一种浏览器实现方法、终端和虚拟化代理装置 | |
CN112256406B (zh) | 作业流程平台化调度方法 | |
JP2015180991A (ja) | 画像形成装置、画像形成装置の制御方法およびプログラム | |
CN106817388A (zh) | 虚拟机、宿主机获取数据的方法、装置及访问数据的系统 | |
CN106155575A (zh) | 用于扩展存储系统的高速缓存的方法和装置 | |
CN115202729A (zh) | 基于容器服务的镜像生成方法、装置、设备及介质 | |
Lange et al. | Experiences with client-based speculative remote display | |
CN105607896B (zh) | 应用程序的开发方法和系统 | |
CN103399776A (zh) | 可重用mock创建方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518000 No. 1001 Nanshan Chi Park A3 building 6 floor Applicant after: LANWON TECHNOLOGY CO., LTD. Address before: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518000 No. 1001 Nanshan Chi Park A3 building 6 floor Applicant before: LANWON SCIENCE & TECHNOLOGY CO., LTD. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant |