CN115116585B - 一种基于web的本地DICOM文件渲染方法及装置 - Google Patents
一种基于web的本地DICOM文件渲染方法及装置 Download PDFInfo
- Publication number
- CN115116585B CN115116585B CN202210825268.3A CN202210825268A CN115116585B CN 115116585 B CN115116585 B CN 115116585B CN 202210825268 A CN202210825268 A CN 202210825268A CN 115116585 B CN115116585 B CN 115116585B
- Authority
- CN
- China
- Prior art keywords
- list
- file
- dicom file
- sequence
- ordering
- 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
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H30/00—ICT specially adapted for the handling or processing of medical images
- G16H30/20—ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
- G16H40/60—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
- G16H40/63—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
Landscapes
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Biomedical Technology (AREA)
- Radiology & Medical Imaging (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于web的本地DICOM文件渲染方法及装置,其中,所述方法包括:在浏览器接收到文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表;遍历文件列表,在多个独立线程中对文件列表中的每个DICOM文件进行解析处理;并发遍历所有的DICOM文件对象列表,形成DICOM文件对象列表的病人‑检查‑序列‑图像的树形结构排序;判断树形结构排序中的序列下的图像是否存在多帧图像;若不存在时,则进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在浏览器中进行渲染显示。在本发明实施例中,实现了在浏览器中直接打开并渲染显示DICOM文件,无需安装专用的医学影像读取软件。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于web的本地DICOM文件渲染方法及装置。
背景技术
本地DICOM(Digital Imaging and Communications in Medicine,医学数字成像和通信)文件是医疗的专用图像格式,直接在电脑上无法打开查看,这时需要在电脑上按照第三方的软件才可以查看DICOM文件;由于第三方软件的安装过于复杂,并且需要占据大量的存储空间和电脑中的的运行性能;导致一般病人用户无法自己通过电脑终端查询到自己的DICOM文件中的图像;或者电脑终端需要通过联网的方式连接可以处理DICOM文件的服务器,把DICOM文件先上传到服务器,在服务器上对该DICOM文件进行相应的解析处理之后,才直接加载至电脑终端的浏览器上进行显示,这样一来上传文件非常耗时,普通老百姓操作也有一定障碍。若在无网络情况下,或者无法连接对应的服务器情况下,无法在电脑终端上对本地的DICOM在本地上进行渲染显示。
发明内容
本发明的目的在于克服现有技术的不足,本发明提供了一种基于web的本地DICOM文件渲染方法及装置,实现了在本地浏览器中直接打开并渲染显示本地DICOM文件,无需安装专用医学影像读片软件,无需上传本地DICOM文件到后台服务器,并且加载及渲染速度快。
为了解决上述技术问题,本发明实施例提供了一种基于web的本地DICOM文件渲染方法,所述方法包括:
在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表;
遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表;
并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序;
判断所述树形结构排序中的序列下的图像是否存在多帧图像;
若不存在时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
可选的,所述方法还包括:
若所述树形结构排序中的序列下的图像存在多帧图像时,则将所述树形结构排序中的序列下的图像删除,并将所述多帧图像进行序列化处理,形成图像列表;
将所述图像列表添加到所述树形结构排序中的序列下,形成新的树形结构排序;
对新的树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
可选的,所述在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表,包括:
在浏览器接收到用户拖拽的文件或文件夹后,所述浏览器中基于用户的拖拽事件调用e.dataTransfer函数,并遍历e.dataTransfer函数中的所有项目;
在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的DICOM文件数量时,递归查询所述文件或文件夹的子目录,获得文件列表。
可选的,所述遍历e.dataTransfer函数中的所有项目,包括:
在遍历e.dataTransfer函数中的所有项目时,对所遍历的e.dataTransfer函数中的所有项目进行赋值处理。
可选的,所述遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表,包括:
所述浏览器遍历所述文件列表,并生成多个Web Workers独立线程;
将遍历到的所述文件列表以并发循环的方式分发至多个Web Workers独立线程中;
所述多个Web Workers独立线程基于分别对分发的文件列表在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表。
可选的,所述在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表,包括:
检测所述浏览器是否对FileReader的支持,若否,则结束对对应的DICOM文件进行解析处理;
若支持时,则检测onload事件,并根据DICOM文件中的tag地址和长度进行逐个信息的读取处理,获得所述DICOM文件的读取信息;
遍历所述DICOM文件的读取信息,并基于遍历结果获得DICOM文件对象列表。
可选的,所述并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
并发遍历所有的所述DICOM文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;
基于AccessionNumber在所述病人列表中确定检查列表,并根据AccessionNumber对所述检查列表进行排序处理;
基于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对所述序列列表进行排序处理;
基于InstanceNo在所述序列列表中确定图像列表,并根据InstanceNo对所述图像列表进行排序处理;
基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
可选的,所述基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
将所述病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,并排序,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
可选的,所述对所述树形结构排序中的每个图像进行窗宽窗位调整处理,包括:
获得树形结构排序中的每个图像的像素值,并基于查询像素值表的方式对所述树形结构排序中的每个图像进行窗宽窗位调整处理。
另外,本发明实施例还提供了一种基于web的本地DICOM文件渲染装置,所述装置包括:
分析模块:用于在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表;
解析模块:用于遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表;
并发遍历模块:用于并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序;
判断模块:用于判断所述树形结构排序中的序列下的图像是否存在多帧图像;
渲染模块:用于若不存在时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
在本发明实施例中,使得可以在浏览器中查看本地DICOM图像,并且不需要安装第三方软件,支持普通查看、旋转、左右镜像、上下翻转、反相、缩放、移动、放大镜、鼠标中键翻页、鼠标左键快速翻页、滚动条快速定位和翻页、窗口放大镜、调节窗宽窗位等;实现了在本地浏览器中直接打开并渲染显示本地DICOM文件,无需安装专用医学影像读片软件,无需上传本地DICOM文件到后台服务器,并且加载及渲染速度快。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例中的基于web的本地DICOM文件渲染方法的流程示意图;
图2是本发明实施例中的基于web的本地DICOM文件渲染装置的结构组成示意图;
图3是本发明实施例中的DICOM文件中的数据地址、名称和长度表;
图4是本发明实施例中的DICOM图像的窗宽窗位调整算法图像。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一
请参阅图1,图1是本发明实施例中的基于web的本地DICOM文件渲染方法的流程示意图。
如图1所示,一种基于web的本地DICOM文件渲染方法,所述方法包括:
S11:在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表;
在本发明具体实施过程中,所述在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表,包括:在浏览器接收到用户拖拽的文件或文件夹后,所述浏览器中基于用户的拖拽事件调用e.dataTransfer函数,并遍历e.dataTransfer函数中的所有项目;在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的DICOM文件数量时,递归查询所述文件或文件夹的子目录,获得文件列表。
具体的,用户在第一次通过电脑或者手机等智能终端的浏览器打开DICOM文件之前,需要通过该浏览器登录指定网站,浏览器向网站请求下发ParseDcm.JS文件,浏览器接收并加载ParseDcm.JS文件;在浏览器加载ParseDcm.JS文件之后,通过DOMAPI来操作DOMTree,调用里面具体的方法(本地DICOM文件渲染方法)。若后续用户不清除浏览器缓存,该浏览器后续无需与网站连接,也能本地查看DICOM文件;因此,在浏览器接收到用户拖拽的文件或文件夹后,在该浏览器中根据用户的拖拽事件来调用e.dataTransfer函数,并且通过遍历e.dataTransfer函数中的所有项目,且在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的DICOM文件数量时,递归查询该文件或文件夹的子目录,从而得到文件列表。
同时,在遍历e.dataTransfer函数中的所有项目时,需要对所遍历的e.dataTransfer函数中的所有项目进行赋值处理。
S12:遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表;
在本发明具体实施过程中,所述遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表,包括:所述浏览器遍历所述文件列表,并生成多个Web Workers独立线程;将遍历到的所述文件列表以并发循环的方式分发至多个Web Workers独立线程中;所述多个Web Workers独立线程基于分别对分发的文件列表在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表。
进一步的,所述在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表,包括:
检测所述浏览器是否对FileReader的支持,若否,则结束对对应的DICOM文件进行解析处理;若支持时,则检测onload事件,并根据DICOM文件中的tag地址和长度进行逐个信息的读取处理,获得所述DICOM文件的读取信息;遍历所述DICOM文件的读取信息,并基于遍历结果获得DICOM文件对象列表。
具体的,遍历文件列表,在Web Workers独立线程里解析DICOM tag信息,得到DICOM对象列表;因为一个检查所包含的DICOM文件数量很多,从几百张到几千张不等,逐个顺序解析,将需要较长的处理时间,因而可能导致主进程的阻塞,从而导致处理界面的卡顿或者僵死;为了解决这个问题,通过H5的Web Workers API创建多个Web Workers独立线程;将大量的DICOM文件解析任务交给多个线程执行,通过多线程同时进行执行,使得解析任务均分配至多个线程处理,主线程的处理任务被分解,从而不会卡顿或者阻塞。通过浏览器的web worker机制,显著提高解析性能,并且在解析的过程中,并不影响浏览器的主界面操作,不影响用户的操作体验。
在加载解析程序,循环文件列表时,对于每个文件创建一个Web Workers独立线程,通过在Web Workers独立线程内对DICOM文件进行解析,读取DICOM内容,得到DICOM对象;最后即可得到DICOM文件对象列表。
即通过该浏览器实现遍历所有文件列表,并且根据文件的数量生成多个WebWorkers独立线程;将遍历到的文件列表以并发循环的方式分发至多个Web Workers独立线程中;然后通过多个Web Workers独立线程根据分别对分发的文件列表在浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表。
在对对应的DICOM文件进行解析处理时,需要检测该浏览器是否对FileReader的支持,若否,则结束对对应的DICOM文件进行解析处理;若支持,则检测onload事件,并根据DICOM文件中的tag地址和长度进行逐个信息的读取处理,获得DICOM文件的读取信息;最后遍历读取DICOM文件的读取信息,并根据遍历结果获得DICOM文件对象列表。
在DICOM文件里面每个tag都指定了地址和长度。例如:检查号地址=(0008,0050),长度=12;姓名地址=(0010,0010),长度=8;Patient ID地址=(0010,0020),长度=14;图像地址=(7FE0,0010)等,通过这种方式,可以顺利获取到想要的内容。使用的一些数据地址、名称、长度如图3所示。
S13:并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序;
在本发明具体实施过程中,所述并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:并发遍历所有的所述DICOM文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;基于AccessionNumber在所述病人列表中确定检查列表,并根据AccessionNumber对所述检查列表进行排序处理;基于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对所述序列列表进行排序处理;基于InstanceNo在所述序列列表中确定图像列表,并根据InstanceNo对所述图像列表进行排序处理;基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
进一步的,所述基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:将所述病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,并排序,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
具体的,遍历DICOM文件对象列表,即可得到病人list(列表),每个病人的检查list,每个检查的序列list,每个序列的图像list;然后同步根据PatientID,AccessionNumber,SeriesNo,InstanceNo排序;因为在处理过程中,图像的数量较多,处理速度很关键,因此可以通过建立worker线程,在线程里处理;需要处理好逻辑,防止数据节点插错。
即通过并发遍历所有的DICOM文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;再根据AccessionNumber在病人列表中确定检查列表,并根据AccessionNumber对检查列表进行排序处理;再根据于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对序列列表进行排序处理;再根据InstanceNo在序列列表中确定图像列表,并根据InstanceNo对图像列表进行排序处理;最终根据病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
在形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序时,是需要将病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,同时进行排序,最终即可形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
由于在一次影像检查结束后,多数情况下所产生的图像会有很多张;并且图像之间既有时序关系,也有状位关系,同时还有该检查相关的其他属性信息;一个文件夹中,很可能包含一个病人的多次检查,每次检查对应一个序列,每个序列对应多张图像。因此,只有对文件夹分析、解析出“病人-检查-序列-图像”的树形结构排序,即树状层次结构,才能便于医生读片诊断。
S14:判断所述树形结构排序中的序列下的图像是否存在多帧图像;
在本发明具体实施过程中,在DICOM里面有一种比较特殊的图像,为动态图像,即为多帧图像,在本实施了中根据tag值:NumberOfFrames来判断,如果NumberOfFrames>1,则可以理解为该图像为多帧图像。
S15:若所述树形结构排序中的序列下的图像存在多帧图像时,则将所述树形结构排序中的序列下的图像删除,并将所述多帧图像进行序列化处理,形成图像列表;
在本发明具体实施过程中,若树形结构排序中的序列下的图像存在多帧图像时,则需要将该树形结构排序中的序列下的图像删除,同时将多帧图像进行序列化处理,最终形成一个图像列表。
S16:将所述图像列表添加到所述树形结构排序中的序列下,形成新的树形结构排序;
在本发明具体实施过程中,将形成的一个图像列表添加到该树形结构排序中的序列下,即可形成一个新的树形结构排序。
S17:若不存在多帧图像时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
在本发明具体实施过程中,所述对所述树形结构排序中的每个图像进行窗宽窗位调整处理,包括:获得树形结构排序中的每个图像的像素值,并基于查询像素值表的方式对所述树形结构排序中的每个图像进行窗宽窗位调整处理。
具体的,窗宽窗位调整:DICOM图像和一般的图像有很大的不同,DICOM图像数据一般是大于8位的,目前操作系统,如Windows、Mac OS、Chrome、安卓都只支持图像数据为8位的图像,所以需要把DICOM图像数据转换成8位,而且不能丢失图像数据。这个调整图像的过程就叫窗宽窗位调整。
窗宽窗位调整有关的关键图像参数包括:WindowCenter:窗位值;WindowWidth:窗宽值;RescaleIntercept:截距;RescaleSlope:斜率;BitStored:一个像素有效数据位数。
通过如图4所述的算法进行转换后,即可得到8位图像,即可在浏览器中进行渲染显示。在具体实施时,对于较大的DR图像,比如胸片图像,该胸片图像的像素为3000*3000,根据图4所示的计算公式,得到了正确的结果,显示正常,但是速度很慢,计算一次需要5秒,实际工作中医生往往需要连续调窗,计算量非常大,无法实际使用;在图4所示算法中,在8<nBitStored<16时,横坐标为DICOM文件里保存的原始数据x,斜率表示用于显示的数据y,然后y=rScaleSlope*x+rScaleIntercept;或者从图像的LUT里获取。在横坐标表示显示的所有数据y,斜线表示当前显示的8位数据Y时,则有Y=(y-nLeft)/ww*255;ww=abs(nRight-nLeft),wc=(nLeft+nRight)/2;H=ww/2;nLeft=wc–H;nRight=wc+H。窗宽窗位的计算:若图像里没有给出ww、wc,则采用如下方法计算ww、wc:遍历文件里的所有数据,取出最大值xMax和最小值xMin;ww=abs(y(xMax)-y(xMin));wc=(y(xMax)+y(xMin))/2。在建立两张表:inty_table[1<<nBitStored],byteY_table[1<<nBitStored]时,y_table保存所有的显示值,计算一次,Y_table保存当前ww,wc的显示值,改变ww,wc就需要重新计算;Y_table的值在[0,255];pDib[nIndex]=Y_table[nPixelValue],8<nBitStored<16;pDib[nIndex]=Y_table[nPixelValue+HALF_LENGTH],nBitStored=16;说明:利用查表的方式速度快;把像素值作为下标使用,当数据为16位时,可能出现负值,要把下标适当变换:+HALF_LENGTH。
观察图像数据,发现像素尺寸很大,但是里面的像素值范围要小得多,像素值的范围在0~1<<nBitStored这个范围,预先计算好像素值,转换的时候通过查询像素值表来得到显示图像数据,大幅度减少计算量。即:1)开一个线程,根据存储位数,计算出亮度表。实时判断,如果存储图像位数改变了,重新计算亮度表;2)把乘法除法换成移位操作,提高计算性能;3)使用像素值作为下标,得到图像的亮度值,填充到图像里,形成可以显示的8位图像;4)经过多种方法优化后,调窗像素为3000*3000的图像。如此则一次操作压缩到了20毫秒,体现在操作上非常流畅,达到了医生的使用要求。
在本发明实施例中,使得可以在浏览器中查看本地DICOM图像,并且不需要安装第三方软件,支持普通查看、旋转、左右镜像、上下翻转、反相、缩放、移动、放大镜、鼠标中键翻页、鼠标左键快速翻页、滚动条快速定位和翻页、窗口放大镜、调节窗宽窗位等;实现了在本地浏览器中直接打开并渲染显示本地DICOM文件,无需安装专用医学影像读片软件,无需上传本地DICOM文件到后台服务器,并且加载及渲染速度快。
实施例二
请参阅图2,图2是本发明实施例中的基于web的本地DICOM文件渲染装置的结构组成示意图。
如图2所示,一种基于web的本地DICOM文件渲染装置,所述装置包括:
分析模块21:用于在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表;
在本发明具体实施过程中,所述在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的DICOM文件进行分析,获得文件列表,包括:在浏览器接收到用户拖拽的文件或文件夹后,所述浏览器中基于用户的拖拽事件调用e.dataTransfer函数,并遍历e.dataTransfer函数中的所有项目;在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的DICOM文件数量时,递归查询所述文件或文件夹的子目录,获得文件列表。
具体的,用户在第一次通过电脑或者手机等智能终端的浏览器打开DICOM文件之前,需要通过该浏览器登录指定网站,浏览器向网站请求下发ParseDcm.JS文件,浏览器接收并加载ParseDcm.JS文件;在浏览器加载ParseDcm.JS文件之后,通过DOM API来操作DOMTree,调用里面具体的方法(本地DICOM文件渲染方法)。若后续用户不清除浏览器缓存,该浏览器后续无需与网站连接,也能本地查看DICOM文件;因此,在浏览器接收到用户拖拽的文件或文件夹后,在该浏览器中根据用户的拖拽事件来调用e.dataTransfer函数,并且通过遍历e.dataTransfer函数中的所有项目,且在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的DICOM文件数量时,递归查询该文件或文件夹的子目录,从而得到文件列表。
同时,在遍历e.dataTransfer函数中的所有项目时,需要对所遍历的e.dataTransfer函数中的所有项目进行赋值处理。
解析模块22:用于遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表;
在本发明具体实施过程中,所述遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个DICOM文件进行解析处理,获得DICOM文件对象列表,包括:所述浏览器遍历所述文件列表,并生成多个Web Workers独立线程;将遍历到的所述文件列表以并发循环的方式分发至多个Web Workers独立线程中;所述多个Web Workers独立线程基于分别对分发的文件列表在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表。
进一步的,所述在所述浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表,包括:
检测所述浏览器是否对FileReader的支持,若否,则结束对对应的DICOM文件进行解析处理;若支持时,则检测onload事件,并根据DICOM文件中的tag地址和长度进行逐个信息的读取处理,获得所述DICOM文件的读取信息;遍历所述DICOM文件的读取信息,并基于遍历结果获得DICOM文件对象列表。
具体的,遍历文件列表,在Web Workers独立线程里解析DICOM tag信息,得到DICOM对象列表;因为一个检查所包含的DICOM文件数量很多,从几百张到几千张不等,逐个顺序解析,将需要较长的处理时间,因而可能导致主进程的阻塞,从而导致处理界面的卡顿或者僵死;为了解决这个问题,通过H5的Web Workers API创建多个Web Workers独立线程;将大量的DICOM文件解析任务交给多个线程执行,通过多线程同时进行执行,使得解析任务均分配至多个线程处理,主线程的处理任务被分解,从而不会卡顿或者阻塞。通过浏览器的web worker机制,显著提高解析性能,并且在解析的过程中,并不影响浏览器的主界面操作,不影响用户的操作体验。
在加载解析程序,循环文件列表时,对于每个文件创建一个Web Workers独立线程,通过在Web Workers独立线程内对DICOM文件进行解析,读取DICOM内容,得到DICOM对象;最后即可得到DICOM文件对象列表。
即通过该浏览器实现遍历所有文件列表,并且根据文件的数量生成多个WebWorkers独立线程;将遍历到的文件列表以并发循环的方式分发至多个Web Workers独立线程中;然后通过多个Web Workers独立线程根据分别对分发的文件列表在浏览器内对对应的DICOM文件进行解析处理,获得DICOM文件对象列表。
在对对应的DICOM文件进行解析处理时,需要检测该浏览器是否对FileReader的支持,若否,则结束对对应的DICOM文件进行解析处理;若支持,则检测onload事件,并根据DICOM文件中的tag地址和长度进行逐个信息的读取处理,获得DICOM文件的读取信息;最后遍历读取DICOM文件的读取信息,并根据遍历结果获得DICOM文件对象列表。
在DICOM文件里面每个tag都指定了地址和长度。例如:检查号地址=(0008,0050),长度=12;姓名地址=(0010,0010),长度=8;Patient ID地址=(0010,0020),长度=14;图像地址=(7FE0,0010)等,通过这种方式,可以顺利获取到想要的内容。使用的一些数据地址、名称、长度如图3所示。
并发遍历模块23:用于并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序;
在本发明具体实施过程中,所述并发遍历所有的所述DICOM文件对象列表,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:并发遍历所有的所述DICOM文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;基于AccessionNumber在所述病人列表中确定检查列表,并根据AccessionNumber对所述检查列表进行排序处理;基于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对所述序列列表进行排序处理;基于InstanceNo在所述序列列表中确定图像列表,并根据InstanceNo对所述图像列表进行排序处理;基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
进一步的,所述基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序,包括:将所述病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,并排序,形成所述DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
具体的,遍历DICOM文件对象列表,即可得到病人list(列表),每个病人的检查list,每个检查的序列list,每个序列的图像list;然后同步根据PatientID、AccessionNumber、SeriesNo、InstanceNo排序;因为在处理过程中,图像的数量较多,处理速度很关键,因此可以通过建立worker线程,在线程里处理;需要处理好逻辑,防止数据节点插错。
即通过并发遍历所有的DICOM文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;再根据AccessionNumber在病人列表中确定检查列表,并根据AccessionNumber对检查列表进行排序处理;再根据SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对序列列表进行排序处理;再根据InstanceNo在序列列表中确定图像列表,并根据InstanceNo对图像列表进行排序处理;最终根据病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
在形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序时,是需要将病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,同时进行排序,最终即可形成DICOM文件对象列表的病人-检查-序列-图像的树形结构排序。
由于在一次影像检查结束后,多数情况下所产生的图像会有很多张;并且图像之间既有时序关系,也有状位关系,同时还有该检查相关的其他属性信息;一个文件夹中,很可能包含一个病人的多次检查,每次检查对应一个序列,每个序列对应多张图像。因此,只有对文件夹分析、解析出“病人-检查-序列-图像”的树形结构排序,即树状层次结构,才能便于医生读片诊断。
判断模块24:用于判断所述树形结构排序中的序列下的图像是否存在多帧图像;
在本发明具体实施过程中,在DICOM文件里面有一种比较特殊的图像,为动态图像,即为多帧图像。在本实施例了中根据tag值:NumberOfFrames来判断,如果NumberOfFrames>1,则可以理解为该图像为多帧图像。
删除模块25:用于若所述树形结构排序中的序列下的图像存在多帧图像时,则将所述树形结构排序中的序列下的图像删除,并将所述多帧图像进行序列化处理,形成图像列表;
在本发明具体实施过程中,若树形结构排序中的序列下的图像存在多帧图像时,则需要将该树形结构排序中的序列下的图像删除,同时将多帧图像进行序列化处理,最终形成一个图像列表。
添加模块26:用于将所述图像列表添加到所述树形结构排序中的序列下,形成新的树形结构排序;
在本发明具体实施过程中,将形成的一个图像列表添加到该树形结构排序中的序列下,即可形成一个新的树形结构排序。
渲染模块27:用于若不存在多帧图像时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
在本发明具体实施过程中,所述对所述树形结构排序中的每个图像进行窗宽窗位调整处理,包括:获得树形结构排序中的每个图像的像素值,并基于查询像素值表的方式对所述树形结构排序中的每个图像进行窗宽窗位调整处理。
具体的,窗宽窗位调整:DICOM图像和一般的图像有很大的不同,DICOM图像数据一般是大于8位的,目前操作系统,如Windows、MacOS、Chrome、安卓都只支持图像数据为8位的图像,所以需要把DICOM图像数据转换成8位,而且不能丢失图像数据。这个调整图像的过程就叫窗宽窗位调整。
窗宽窗位调整有关的关键图像参数包括:WindowCenter:窗位值;WindowWidth:窗宽值;RescaleIntercept:截距;RescaleSlope:斜率;BitStored:一个像素有效数据位数。
通过如图4所述的算法进行转换后,即可得到8位图像,即可在浏览器中进行渲染显示。在具体实施时,对于较大的DR图像,比如胸片图像,该胸片图像的像素为3000*3000,根据图4所示的计算公式,得到了正确的结果,显示正常,但是速度很慢,计算一次需要5秒,实际工作中医生往往需要连续调窗,计算量非常大,无法实际使用;在图4所示算法中,在8<nBitStored<16时,横坐标为DICOM文件里保存的原始数据x,斜率表示用于显示的数据y,然后y=rScaleSlope*x+rScaleIntercept;或者从图像的LUT里获取。在横坐标表示显示的所有数据y,斜线表示当前显示的8位数据Y时,则有Y=(y-nLeft)/ww*255;ww=abs(nRight-nLeft),wc=(nLeft+nRight)/2;H=ww/2;nLeft=wc–H;nRight=wc+H。窗宽窗位的计算:若图像里没有给出ww、wc,则采用如下方法计算ww、wc:遍历文件里的所有数据,取出最大值xMax和最小值xMin;ww=abs(y(xMax)-y(xMin));wc=(y(xMax)+y(xMin))/2。在建立两张表:inty_table[1<<nBitStored],byteY_table[1<<nBitStored]时,y_table保存所有的显示值,计算一次,Y_table保存当前ww,wc的显示值,改变ww,wc就需要重新计算;Y_table的值在[0,255];pDib[nIndex]=Y_table[nPixelValue],8<nBitStored<16;pDib[nIndex]=Y_table[nPixelValue+HALF_LENGTH],nBitStored=16;说明:利用查表的方式速度快;把像素值作为下标使用,当数据为16位时,可能出现负值,要把下标适当变换:+HALF_LENGTH。
观察图像数据,发现像素尺寸很大,但是里面的像素值范围要小得多,像素值的范围在0~1<<nBitStored这个范围,预先计算好像素值,转换的时候通过查询像素值表来得到显示图像数据,大幅度减少计算量。即:1)开一个线程,根据存储位数,计算出亮度表。实时判断,如果存储图像位数改变了,重新计算亮度表;2)把乘法除法换成移位操作,提高计算性能;3)使用像素值作为下标,得到图像的亮度值,填充到图像里,形成可以显示的8位图像;4)经过多种方法优化后,调窗像素为3000*3000的图像。如此则一次操作压缩到了20毫秒,体现在操作上非常流畅,达到了医生的使用要求。
在本发明实施例中,使得可以在浏览器中查看本地DICOM图像,并且不需要安装第三方软件,支持普通查看、旋转、左右镜像、上下翻转、反相、缩放、移动、放大镜、鼠标中键翻页、鼠标左键快速翻页、滚动条快速定位和翻页、窗口放大镜、调节窗宽窗位等;实现了在本地浏览器中直接打开并渲染显示本地DICOM文件,无需安装专用医学影像读片软件,无需上传本地DICOM文件到后台服务器,并且加载及渲染速度快。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
另外,以上对本发明实施例所提供的一种基于web的本地DICOM文件渲染方法及装置进行了详细介绍,本文中应采用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种基于web的本地dicom文件渲染方法,其特征在于,所述方法包括:
在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的dicom文件进行分析,获得文件列表;
遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个dicom文件进行解析处理,获得dicom文件对象列表;
并发遍历所有的所述dicom文件对象列表,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序;
判断所述树形结构排序中的序列下的图像是否存在多帧图像;
若不存在时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示;
所述并发遍历所有的所述dicom文件对象列表,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
并发遍历所有的所述dicom文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;
基于AccessionNumber在所述病人列表中确定检查列表,并根据AccessionNumber对所述检查列表进行排序处理;
基于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对所述序列列表进行排序处理;
基于InstanceNo在所述序列列表中确定图像列表,并根据InstanceNo对所述图像列表进行排序处理;
基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序;
所述基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
将所述病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,并排序,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序。
2.根据权利要求1所述的本地dicom文件渲染方法,其特征在于,所述方法还包括:
若所述树形结构排序中的序列下的图像存在多帧图像时,则将所述树形结构排序中的序列下的图像删除,并将所述多帧图像进行序列化处理,形成图像列表;
将所述图像列表添加到所述树形结构排序中的序列下,形成新的树形结构排序;
对新的树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示。
3.根据权利要求1所述的本地dicom文件渲染方法,其特征在于,所述在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的dicom文件进行分析,获得文件列表,包括:
在浏览器接收到用户拖拽的文件或文件夹后,所述浏览器中基于用户的拖拽事件调用e.dataTransfer函数,并遍历e.dataTransfer函数中的所有项目;
在e.dataTransfer函数中的所有项目的赋值等于文件或文件夹中的dicom文件数量时,递归查询所述文件或文件夹的子目录,获得文件列表。
4.根据权利要求3所述的本地dicom文件渲染方法,其特征在于,所述遍历e.dataTransfer函数中的所有项目,包括:
在遍历e.dataTransfer函数中的所有项目时,对所遍历的e.dataTransfer函数中的所有项目进行赋值处理。
5.根据权利要求1所述的本地dicom文件渲染方法,其特征在于,所述遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个dicom文件进行解析处理,获得dicom文件对象列表,包括:
所述浏览器遍历所述文件列表,并生成多个Web Workers独立线程;
将遍历到的所述文件列表以并发循环的方式分发至多个Web Workers独立线程中;
所述多个Web Workers独立线程基于分别对分发的文件列表在所述浏览器内对对应的dicom文件进行解析处理,获得dicom文件对象列表。
6.根据权利要求5所述的本地dicom文件渲染方法,其特征在于,所述在所述浏览器内对对应的dicom文件进行解析处理,获得dicom文件对象列表,包括:
检测所述浏览器是否对FileReader的支持,若否,则结束对对应的dicom文件进行解析处理;
若支持时,则检测onload事件,并根据dicom文件中的tag地址和长度进行逐个信息的读取处理,获得所述dicom文件的读取信息;
遍历所述dicom文件的读取信息,并基于遍历结果获得dicom文件对象列表。
7.根据权利要求1所述的本地dicom文件渲染方法,其特征在于,所述对所述树形结构排序中的每个图像进行窗宽窗位调整处理,包括:
获得树形结构排序中的每个图像的像素值,并基于查询像素值表的方式对所述树形结构排序中的每个图像进行窗宽窗位调整处理。
8.一种基于web的本地dicom文件渲染装置,其特征在于,所述装置包括:
分析模块:用于在浏览器接收到用户拖拽的文件或文件夹后,对接收到的文件或文件夹中的dicom文件进行分析,获得文件列表;
解析模块:用于遍历所述文件列表,并基于并发循环的方式在多个独立线程中对所述文件列表中的每个dicom文件进行解析处理,获得dicom文件对象列表;
并发遍历模块:用于并发遍历所有的所述dicom文件对象列表,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序;
判断模块:用于判断所述树形结构排序中的序列下的图像是否存在多帧图像;
渲染模块:用于若不存在时,则对所述树形结构排序中的每个图像进行窗宽窗位调整处理,并将窗宽窗位调整后的树形结构排序在所述浏览器中进行渲染显示;
所述并发遍历所有的所述dicom文件对象列表,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
并发遍历所有的所述dicom文件对象列表,根据PatientID确定病人列表,并按照PatientID对所述病人列表进行排序处理;
基于AccessionNumber在所述病人列表中确定检查列表,并根据AccessionNumber对所述检查列表进行排序处理;
基于SeriesNo在所述检查列表中确定序列列表,并根据SeriesNo对所述序列列表进行排序处理;
基于InstanceNo在所述序列列表中确定图像列表,并根据InstanceNo对所述图像列表进行排序处理;
基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序;
所述基于病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序,包括:
将所述病人列表排序结果、检查列表排序结果、序列列表排序结果和图像列表排序结果以病人为根节点构建树形结构,并排序,形成所述dicom文件对象列表的病人-检查-序列-图像的树形结构排序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210825268.3A CN115116585B (zh) | 2022-07-14 | 2022-07-14 | 一种基于web的本地DICOM文件渲染方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210825268.3A CN115116585B (zh) | 2022-07-14 | 2022-07-14 | 一种基于web的本地DICOM文件渲染方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115116585A CN115116585A (zh) | 2022-09-27 |
CN115116585B true CN115116585B (zh) | 2023-10-03 |
Family
ID=83332107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210825268.3A Active CN115116585B (zh) | 2022-07-14 | 2022-07-14 | 一种基于web的本地DICOM文件渲染方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115116585B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572607A (zh) * | 2011-12-28 | 2012-07-11 | 中国人民解放军第四军医大学唐都医院 | 一种基于多线程技术的医学影像优化调阅方法 |
CN103093074A (zh) * | 2011-11-03 | 2013-05-08 | 深圳市蓝韵网络有限公司 | 在检查报告中嵌入dicom医学图像的方法 |
JP2014048884A (ja) * | 2012-08-31 | 2014-03-17 | Toshiba Corp | 医用画像保管装置及び医用画像保管参照システム |
CN103853530A (zh) * | 2012-11-28 | 2014-06-11 | 深圳市蓝韵网络有限公司 | 在浏览器上快速显示医学图像的方法 |
CN106021612A (zh) * | 2016-06-30 | 2016-10-12 | 沈阳东软医疗系统有限公司 | 一种图像处理方法、装置及设备 |
CN106709240A (zh) * | 2016-12-01 | 2017-05-24 | 彭志勇 | 医学dicom图像显示方法 |
CN106708933A (zh) * | 2016-11-21 | 2017-05-24 | 贵阳朗玛信息技术股份有限公司 | 一种dicom影像文件存储方法及装置 |
CN207572608U (zh) * | 2017-11-08 | 2018-07-03 | 富誉电子科技(淮安)有限公司 | 电连接器 |
CN108563728A (zh) * | 2018-04-04 | 2018-09-21 | 沈阳东软医疗系统有限公司 | 一种通过浏览器上传医学影像文件的方法和装置 |
CN109545333A (zh) * | 2018-11-15 | 2019-03-29 | 青岛海信医疗设备股份有限公司 | Dicom影像显示、处理的方法及装置 |
CN110176293A (zh) * | 2019-05-29 | 2019-08-27 | 数坤(北京)网络科技有限公司 | 一种影像加载方法、装置及计算机存储介质 |
CN111881401A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 基于WebAssembly的浏览器深度学习方法及系统 |
CN113468448A (zh) * | 2020-03-31 | 2021-10-01 | 腾讯科技(深圳)有限公司 | 页面渲染方法及装置 |
CN114420262A (zh) * | 2021-12-28 | 2022-04-29 | 宁波市科技园区明天医网科技有限公司 | 基于WebSocket的DICOM影像远程渲染方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9466918B2 (en) * | 2015-01-08 | 2016-10-11 | Simula Technology Inc. | Signal connector having grounding member for pressing and preventing from short-circuit |
-
2022
- 2022-07-14 CN CN202210825268.3A patent/CN115116585B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103093074A (zh) * | 2011-11-03 | 2013-05-08 | 深圳市蓝韵网络有限公司 | 在检查报告中嵌入dicom医学图像的方法 |
CN102572607A (zh) * | 2011-12-28 | 2012-07-11 | 中国人民解放军第四军医大学唐都医院 | 一种基于多线程技术的医学影像优化调阅方法 |
JP2014048884A (ja) * | 2012-08-31 | 2014-03-17 | Toshiba Corp | 医用画像保管装置及び医用画像保管参照システム |
CN103853530A (zh) * | 2012-11-28 | 2014-06-11 | 深圳市蓝韵网络有限公司 | 在浏览器上快速显示医学图像的方法 |
CN106021612A (zh) * | 2016-06-30 | 2016-10-12 | 沈阳东软医疗系统有限公司 | 一种图像处理方法、装置及设备 |
CN106708933A (zh) * | 2016-11-21 | 2017-05-24 | 贵阳朗玛信息技术股份有限公司 | 一种dicom影像文件存储方法及装置 |
CN106709240A (zh) * | 2016-12-01 | 2017-05-24 | 彭志勇 | 医学dicom图像显示方法 |
CN207572608U (zh) * | 2017-11-08 | 2018-07-03 | 富誉电子科技(淮安)有限公司 | 电连接器 |
CN108563728A (zh) * | 2018-04-04 | 2018-09-21 | 沈阳东软医疗系统有限公司 | 一种通过浏览器上传医学影像文件的方法和装置 |
CN109545333A (zh) * | 2018-11-15 | 2019-03-29 | 青岛海信医疗设备股份有限公司 | Dicom影像显示、处理的方法及装置 |
CN110176293A (zh) * | 2019-05-29 | 2019-08-27 | 数坤(北京)网络科技有限公司 | 一种影像加载方法、装置及计算机存储介质 |
CN113468448A (zh) * | 2020-03-31 | 2021-10-01 | 腾讯科技(深圳)有限公司 | 页面渲染方法及装置 |
CN111881401A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 基于WebAssembly的浏览器深度学习方法及系统 |
CN114420262A (zh) * | 2021-12-28 | 2022-04-29 | 宁波市科技园区明天医网科技有限公司 | 基于WebSocket的DICOM影像远程渲染方法 |
Non-Patent Citations (3)
Title |
---|
一种DICOM文件并行查找算法的设计与实现;郭华源;北京生物医学工程;第第31卷卷(第第2期期);174-177 * |
一种基于普通Web浏览器的DICOM图像处理方法;薛卫京 等;中国医疗器械杂志;第33卷(第03期);第179-182页 * |
医学影像读取与处理教学平台软件开发;丁辉 等;实验技术与管理;第28卷(第03期);108-111 * |
Also Published As
Publication number | Publication date |
---|---|
CN115116585A (zh) | 2022-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10755411B2 (en) | Method and apparatus for annotating medical image | |
RU2541216C2 (ru) | Двунаправленное обновление grid-таблицы и ассоциированных визуализаций | |
US8707159B1 (en) | Translating tabular data formatted for one display device to a format for display on other display device | |
CN105528408B (zh) | 页面展示方法和装置 | |
US10296571B2 (en) | Method, system, apparatus, network entity and computer program product for providing a user with an editable webpage | |
CN108447547A (zh) | 一种医学影像数据的存储、下载方法及装置 | |
US20090013044A1 (en) | Techniques for managing annotation transformations for context changes | |
US10713420B2 (en) | Composition and declaration of sprited images in a web page style sheet | |
CN109783757B (zh) | 渲染网页的方法及装置、系统、存储介质、电子装置 | |
CN110489725B (zh) | 三维可视化方法 | |
US20170359434A1 (en) | Web caching with image and local storage | |
CN111161849A (zh) | 一种基于Web的医学影像可视化实现方法、平台以及系统 | |
Qiao et al. | Medical high-resolution image sharing and electronic whiteboard system: A pure-web-based system for accessing and discussing lossless original images in telemedicine | |
CN109545333A (zh) | Dicom影像显示、处理的方法及装置 | |
CN116955863A (zh) | 基于虚拟树的动态树形结构渲染方法及装置 | |
US8219515B2 (en) | Visualization of data record physicality | |
CN115116585B (zh) | 一种基于web的本地DICOM文件渲染方法及装置 | |
US20060005066A1 (en) | Mechanism for improving accessibility of JMX monitoring information in web content | |
CN111428452B (zh) | 一种批注数据保存方法及装置 | |
US20070057965A1 (en) | Positioning screen elements | |
CN114496175A (zh) | 一种医疗图像查看方法、装置、设备和存储介质 | |
CN115170700A (zh) | 基于Flutter框架实现CSS动画的方法、计算机设备及存储介质 | |
CN114153547A (zh) | 管理页面显示方法及装置 | |
CN114090925A (zh) | 一种视觉类主题的切换方法、装置、电子设备及存储介质 | |
CN112433778A (zh) | 一种移动设备页面显示方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |