- 浏览: 3444130 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
sonichy:
Qt5改动很多,要改改了。
基于QItemDelegate的例子1 SpinBoxDelegate -
我的主页6:
楼主,2.2子查询的分页方式:SELECT * FROM ar ...
Mysql 分页语句Limit用法 -
liguoqi:
非常感谢楼主的用心指导,工具以及图片例子都提供了 赞!
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载 -
liguoqi:
问下这个图片怎么解压损坏呀
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载 -
liguoqi:
楼主讲解的非常详细,还附带工具和图片例子,非常感谢
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载
前言:
虽然写了这么一大堆,实际过程很简单,大家耐心看完,绝对能成功。我已经在我的办公电脑和我的影像工作站上,都成功实现了。(简单文字版,请看这篇《DCMTK3.6.0(MD支持库)安装说明-无图版》)
DCMTk3.5.4安装类似于下面,但是CMake生成的时候,可以直接界面上修改,因为3.5.4和3.6.0的CMakeLists.txt很多地方已经不一样了,之间的区别可以参考这篇文章《DCMTK3.5.4与3.6.0版本的区别》
柳北风儿
qimo601@126.com
2012-06-07
一、运行环境:WIN7 32bit + VisualStudio2008 + dcmtk3.6.0 + Cmake2.8.8
或者 WIN7 64bit
二、准备工作:
1)MD/MT的知识储备:
/MT和/MTd表示采用多线程CRT库的静态lib版本。该选项会在编译时将运行时库以静态lib的形式完全嵌入。该选项生成的可执行文件运行时不需要运行时库dll的参加,会获得轻微的性能提升,但最终生成的二进制代码因链入庞大的运行时库实现而变得非常臃肿。当某项目以静态链接库的形式嵌入到多个项目,则可能造成运行时库的内存管理有多份,最终将导致致命的“Invalid Address specified to RtlValidateHeap”问题。另外托管C++和CLI中不再支持/MT和/MTd选项。
/MD和/MDd表示采用多线程CRT库的动态dll版本,会使应用程序使用运行时库特定版本的多线程DLL。链接时将按照传统VC链接dll的方式将运行时库MSVCRxx.DLL的导入库MSVCRT.lib链接,在运行时要求安装了相应版本的VC运行时库可再发行组件包(当然把这些运行时库dll放在应用程序目录下也是可以的)。 因/MD和/MDd方式不会将运行时库链接到可执行文件内部,可有效减少可执行文件尺寸。当多项目以MD方式运作时,其内部会采用同一个堆,内存管理将被简化,跨模块内存管理问题也能得到缓解。
结论:/MD和/MDd将是潮流所趋,/ML和/MLd方式请及时放弃,/MT和/MTd在非必要时最好也不要采用了。
2)下载软件:
②dcmtk-3.6.0-win32-i386-support_MD.zip(注意,要下载***support_MD的压缩文件,而不要下载上面单独列出来的支持库)。我选择的MD,因为我的软件项目都是基于MD的运行时库。(您也可以选择dcmtk-3.6.0-win32-i386-support_MT.zip,如果您的项目是基于MT。通过项目属性的C/C++->code generation 可以更改运行时库)将这些压缩文件解压缩到硬盘上一个单独的文件夹里,我的解压缩目录是D:\DCMTK\。
③从cmake官方网站下载cmake的安装文件,我下载的是cmake-2.8.8-win32-x86.exe。将其安装到计算机任意目录下。
④dcmtk-3.6.0-html-help.zip,dcmtk html版本帮助文档,CHM版本暂时还未出。
#include "testa.h" #include <QtGui/QApplication> #include <QDebug> #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmdata/dctk.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); TestA w; w.show(); DcmFileFormat fileformat; OFCondition oc = fileformat.loadFile("111.dcm"); if(oc.good()){ OFString patientName; if(fileformat.getDataset()->findAndGetOFString(DCM_PatientName, patientName).good()) { qDebug()<<"Patient Name:"<<patientName.data(); } } return a.exec(); }
- 111.DCM.rar (228 KB)
- 下载次数: 112
评论
dcm文件没放在debug下吧,写成绝对路径试试
dcmdata.lib(dcuid.obj) : error LNK2019: 无法解析的外部符号 _WSACleanup@0,该符号在函数 "long __cdecl gethostid(void)" (?gethostid@@YAJXZ) 中被引用
这个错误请问如何解决
首先恭喜您编译成功。
你的问题,我估计是在使用lib的方法上有问题。
你参考本文最后的例子,请确认lib文件引入的顺序,以及是否有遗漏。
DCMTK的lib文件顺序大致如下:
wsock32.lib
netapi32.lib
ofstd.lib
oflog.lib
dcmdata.lib
dcmnet.lib
dcmimage.lib
dcmimgle.lib
zlib.lib
如果载入顺序错了,会有编译错误的。
如果您有最新进展可以通知我,我的最新博客[url= http://blog.163.com/qimo601@126]http://blog.163.com/qimo601@126[/url]
我用命令:
dcmprscp.exe -c dcmpstat.cfg -p IHEFULL
启动了SCP,
用命令:
dcmpsprt.exe -s -c dcmpstat.cfg -p IHEFULL CT.dcm
生成了HG和SP文件,
用命令:
dcmprscu -d -v +d -c dcmpstat.cfg SP_XX.dcm
打印出了一些信息,但是scp端并没有使用默认的打印机打印出来啊,难道说dcmprscp不能作为打印服务器?求指点啊。谢谢了。
兄弟,打印这块,我暂时还没用到。
但是我看到冷老师一篇文章写的非常详细,或许对你有帮助。
你按照他的步骤,应该是可以实现打印的。里面需要配置网络,以及要修改 C:/DICOM/Source/dcmpstat.cfg配置文件的信息。
希望您能成功。最好能总结一下,跟大家共享一下您的实验心得。
冷老师的DCMTK打印文章链接:http://qimo601.iteye.com/blog/1555204
我用命令:
dcmprscp.exe -c dcmpstat.cfg -p IHEFULL
启动了SCP,
用命令:
dcmpsprt.exe -s -c dcmpstat.cfg -p IHEFULL CT.dcm
生成了HG和SP文件,
用命令:
dcmprscu -d -v +d -c dcmpstat.cfg SP_XX.dcm
打印出了一些信息,但是scp端并没有使用默认的打印机打印出来啊,难道说dcmprscp不能作为打印服务器?求指点啊。谢谢了。
发表评论
-
医学影像期刊总结
2012-06-08 10:41 32351、《中国医学影像学杂志》 是由中华人民共和国卫生部主管、中 ... -
DCMTK3.6.0(MD支持库)安装说明-无图版
2012-06-08 10:07 4879不知道为啥ItEye只能显示日志文字的部分内容,本篇日志完整版 ... -
DCMTK的Lib 引用顺序
2012-06-07 14:24 3325我们知道,在引用lib的时候,只需要配置项目属性 ... -
DCMTK3.5.4与3.6.0版本的区别
2012-06-07 13:30 6676首先要明白DCMTK默认选择的/MT和/MTd的运行时库。 ... -
官方DCMTK的安装步骤
2012-06-07 13:22 8563官方安装DCMTK3.6.0的步骤: 详细中文安装步 ... -
DCMTK3.6.0 安装失败的说明
2012-06-07 10:59 4336前两天,参考这个例子DCMTK3.6.0 (MT支持库)安装 ... -
DCMTK3.6.0 (MT支持库)安装 完整说明
2012-06-06 11:21 97086月7日 13:58 更新 MD项目的,请参考这篇 《DCMT ... -
DCMTK 安装错误总结
2012-06-05 17:18 0Compilation of DCMTK-based p ... -
dcmtk 3.6.0 error C1083: Cannot open include file: 'iostream.h' 解决办法
2012-06-05 10:36 33272011年1月6日发布的dcmtk 3.6.0版本在编 ... -
defaultlib "library" conflicts with use of other libs; use /NODEFAULTLIB:library
2012-06-04 20:31 8758我在Qt的Gui项目中,加入DCMTK编译后的MD/MDd运行 ... -
warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODE
2012-06-04 19:15 4888刚编译了DCMTK,运行一个小例子,出现如此错误: ... -
VC 运行时库 /MD、/MDd 和 /MT、/MTd
2012-06-04 14:03 27729这里总结下他们的区别,后面的那个'd'是代表DEBUG版本,没 ... -
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载
2012-05-22 14:53 37672最近要开发医学图像处理软件,所以先搜了一些可以读取DCM ...
相关推荐
6. **编译与配置**:DCMTK 3.6.0的编译过程涉及设置环境变量、配置选项,以及链接依赖库。开发者需要熟悉CMake等构建工具来完成编译和安装。 7. **安全与隐私**:由于涉及到患者信息,使用DCMTK时必须遵循HIPAA...
配置DCMTK3.6.0库在VS2012中是一项技术性较强的任务,涉及到CMake的使用、编译选项的设定、环境变量的配置等多个步骤。成功配置后,你可以利用DCMTK的强大功能处理和交换DICOM格式的医学图像数据,从而开发出符合...
Dcmtk3.6.0, 如果从头开始理解DICOM的协议,然后完全自己编写这些代码来实现这些协议,是一件工程浩大的事情。德国offis公司开发的DCMTK,为我们提供了实现DICOM协议的一个平台,使得我们可以在它的基础上轻松的完成...
DCMTK(DICOM ToolKit)是一个开源软件库,专门用于开发与DICOM(Digital Imaging and Communications in Medicine)标准相兼容的应用程序和组件。DICOM是医疗领域广泛使用的标准,用于存储、传输和处理医学影像数据...
在描述中提到的"dcmtk-3.6.0版本编译出的动态库文件,包含Debug和Release版本",意味着你将获得一套完整的DCMTK库,无论是在开发阶段还是最终发布的产品中,都能找到对应版本的库文件进行链接。 压缩包内的文件名称...
做了一个DCMTK 3.6.0版本的CHM帮助文件,拿上来共享一下;有些粗糙,大家不要介意。
这个“dcmtk-3.6.0-win32-i386-support_MD”版本是针对Windows 32位平台的DCMTK支持库,包含了MD(Medical Device)相关的支持。 DICOM是医疗领域广泛采用的数据交换、存储和通信的标准,它定义了如何在不同设备...
总结,DCMTK-3.6.0在Linux系统下为开发者提供了强大的DICOM支持,无论是开发医疗图像处理应用,还是构建医疗信息系统,都能从中受益。通过理解和利用其核心组件、构建过程以及提供的各种资源,用户能够高效地实现...
DCMTK3.6.2+VS2015(MD支持版)编译和安装示范,本文的编译机器是Windows10 64位系统,使用VS2015和cmake3.7.2编译DCMTK源码为64位包(运行时库为MD或MDd)。
这个3.6.0版本的官方帮助文档是开发者和使用者理解DCMTK的重要资源,提供了详尽的函数、类和方法的说明。 DCMTK的核心功能包括: 1. **DICOM网络协议实现**:DCMTK提供了实现DICOM网络协议的工具,如dcmnet库,允许...
包括dcmtk-3.6.0、dcmtk-3.6.0-win32-i386-support_MD和dcmtk-3.6.0-html-help(英文版),同时,附带cmake-3.2.2-win32-x86。 在win7旗舰版32位+VS2005下亲测编译通过,没有问题。
dcmtk-3.6.0帮助文档chm版
DCMTK 3.6.1是该工具包的一个稳定版本,包含了用于创建、读取、修改和传输DICOM数据的库和实用程序。 在描述中提到的"Release版本的动态库文件",意味着这些库文件已经过优化,适用于生产环境。与Debug版本相比,...
DCMTK提供了一系列的库和命令行工具,帮助开发者实现DICOM的解析、创建、编辑以及传输等功能。 DCMTK的核心组件包括: 1. **dcmdata**: 这个库负责处理DICOM数据元素,解析和生成DICOM数据流。 2. **dcmsr**: 用于...
总的来说,这个"dcmtk-3.6.1_0924编译之后的包"是一个方便开发者使用的资源,提供了完整的DCMTK库和相关工具,以便于在项目中集成 DICOM 支持,进行医学图像处理和通信。使用这个包,开发者可以避免从源代码编译的...
从官方或者第三方镜像站点下载DCMTK的源码包,例如`dcmtk3.6.0.tar.gz`。解压后进入源码目录,创建一个名为`dcmtk-bin`的文件夹,这将是编译生成的二进制文件的存放位置。 ```bash tar -zxvf dcmtk3.6.0.tar.gz cd ...
1. 将支持库中的相应 lib 文件、include 文件、bin 文件拷贝到 VS2010 安装目录的相应文件夹下。 2. 打开 CMAKE,选择源代码的位置和编译结果的存放位置。 3. 选择编译环境为 Visual Studio 2010。 4. 勾选所需的...
DCMTK3.6.2是该库的一个特定版本,它支持多种功能,如 DICOM 数据的读取、写入、转换、网络传输等。 在项目开发中,有时我们需要对库进行编译以适应特定的开发环境,例如本例中的Microsoft Visual Studio 2015 (VS...
在Windows 32位系统上,你需要安装Qt 5.10版本,确保它是32位的,因为你要编译的是32位的DCMTK库。同时,还需要安装一个C/C++编译器,如Microsoft Visual Studio或MinGW,以完成编译过程。 4. **编译DCMTK** - ...