DCMTK的Worklist初探
作为一个非医学相关专业的程序员,要实现通过DCMTK实现相关通讯还是得兜些圈子。在这里记录一下比较绕,实际却很简单的Worklist吧。
首先我们需要一个查询的SCP,DCMTK为我们提供了wlmscpfs用于测试:
usage: wlmscpfs [options] port
比较绕的点在于,仅提供ip与port是不够的的,中间的options需要什么呢,实际可用的如下:
wlmscpfs.exe -dfr -dfp wlistdb/OFFIS 104
-dfr为--disable-file-reject,-dfp代指--data-files-path。问题就在dfp的介绍比较笼统,查阅资料后发现,要实现worklist查询,SCP和SCU都需要有worklist文件,后缀为.wl。其实这种文件就是dcm文件,只是文件中一般不存储像素信息,主要用于存取患者信息。SCP和SCU所用的wl文件区别在于,一个有值域,一个没有。
worklist文件是以二进制形式存储的,DCMTK为我们提供了工具可将wl文件转换为dump文件,这是一种可逆向转换的ASCII文件,我们可使用dcmdump.exe将wl转换为dump文件后,查看或修改dump文件。然后再将dump文件通过dump2dcm.exe转换回wl文件。
问题来了,wl文件从哪儿获取呢?其实DCMTK源码包中就有。SCP所需的wl文件位置在${dcmtk_dir}\dcmwlm\data\wlistdb\OFFIS下(${dcmtk_dir}表示dcmtk源码目录),SCU所需的wl文件位置在${dcmtk_dir}\dcmwlm\data\wlistqry。通过之前提到的工具可将dump文件转化为wl文件。
光有文件还不行,还得将文件以一定形式组织起来。新建文件夹结构如下,然后将SCP所需文件放入OFFIS下,SCU所需文件放入wlistqry下。同时我们还需要将原OFFIS目录下的lockfile文件放入新OFFIS目录下。
Root_Folder
├─wlistdb
│ └─OFFIS
└─wlistqry
如此,可以使用上述指令开始SCP服务。
接下来使用
usage: findscu [options] peer port [dcmfile-in...]
findscu -aec . 127.0.0.1 104 wlistqry/wlistqry.wl -k 0010,0020
DCMTK的Worklist初探相关推荐
- pacs dicom3.0 DCMTK EFilm
pacs dicom3.0 DCMTK EFilm -------------------------------------------------- http://bbs.hc3i.cn/thre ...
- web Server支持 perl
最近使用DCMTK 安装worklist 需要用到webserver支持perl. DCMTK官方建议用NCSA Httpd1.5来安装webserver,但是这个软件一般用在Unix/Linux上, ...
- 【转】DICOM医学图像处理:基于DCMTK工具包学习和分析worklist
转自:https://blog.csdn.net/zssureqh/article/details/38775315 背景: DICOM3.0协议中有介绍关于worklist的部分.简而言之,work ...
- workList in DCMTK问题总结
最近正在配置DCMTK中的worklist,因为需要响应C-Find请求. 出现了很多问题,先总结问题,慢慢解决.以后再来叙述如何配置worklist 1.为啥看不到AETitle下面的文件呢???? ...
- DICOM医学图像处理:Dcmtk与fo-dicom保存文件的不同设计模式之“同步VS异步”+“单线程VS多线程”...
2019独角兽企业重金招聘Python工程师标准>>> 一.背景: 最近一直在做DCM相关的编程工作,以前项目使用C++居多,所以使用DCMTK开源库,而目前团队使用C#居多,所以需 ...
- 【转】DCMTK各模块说明!!!!!!!
转自:https://blog.csdn.net/Kelvin_Yan/article/details/50765693 有删改 原文来自wiki DCMTK:http://support.dcmtk ...
- DCMTK:wwwapp instalation
问题 最近按照wwwapp.txt安装worklist中www application server.总有一步看不透. 3. INSTALL FILES b) Then copy all execut ...
- dcmtk在PACS开发中的应用(基础篇) 作者:冷家锋 第四章 工作列表(Work List)(二)...
第四章 工作列表( Work List )(二) 1 .目的 书接前文:http://blog.csdn.net/pachleng/archive/2010/08/10/5800513.aspx,自定 ...
- dcmtk在PACS开发中的应用(基础篇) 作者:冷家锋 第三章 工作列表(Work List)(一)...
第三章 工作列表( Work List )(一) 1 .目的 在工作站上登记患者,影像设备通过 DICOM 标准中的 Work List 获取登记的患者信息. 2 .实验平台 Windows XP P ...
- DCMTK之MPPS服务实现
DCMTK之MPPS服务实现 前 言 放射科信息管理系统(Radiology InformationSystem, RIS)与图像传输与归档系统[1](Picture Archivingand Com ...
最新文章
- faiss(1):简介 安装 与 原理
- intelij idea启动之谜
- arm-linux-ld: cannot find -lgcc,/arm-linux-gnueabi/bin/ld: cannot find crt1.o
- filesystemwatch java_C#方法的委托和java中的回调
- JAVA代码实现按列表中元素的时间字段排序
- 华为云上可订阅F5_F5亮相华为云计算大会 解读云应用交付
- 在进行了解JAVA CLASS文件解析时必须要明白的三个概念
- Matplotlib常用绘图示例
- 啊哈C语言课后练习题
- 这16个数据可视化案例,惊艳了全球数据行业
- 汉字识别原理、方法与实现
- 全日制大专计算机专业一天几节课,大学一节课多长时间 一天上几节
- word2019 分页、分节(即分节符下的分页)、页码、页眉设置最佳实践
- Java实现一个打飞机的小游戏【附源码】
- 什么是MIT开源协议
- php面试题和答案整理
- 计算机excel公式2010,计算机二级Office2010Eexcel公式汇总
- js 12:00时间加上半小时,返回小时和分钟
- lil9341_使用Python评估Lil John的“拒绝接受什么”
- Spring Boot Security - Remember Me示例