转自:http://www.cnblogs.com/assassinx/archive/2013/01/09/dicomViewer.html Dicom全称是医学数字图像与通讯,这里讲的暂不涉及通讯那方面的问题 只讲*.dcm 也就是diocm格式文件的读取,读取本身是没啥难度的 无非就是字节码....
分类:
其他好文 时间:
2015-07-29 18:43:02
阅读次数:
307
背景:DICOM专栏系列中曾介绍过大多数的DICOM标准开源实现库,例如dcmtk、fo-dicom、mDCM,以及dcm4che。之前的介绍大都局限在表层,并未深入对比分析彼此的不同,因此在具体使用过程中很容易踩坑——例如此次对于dcm文件的压缩。
近期由于项目需要,外出给客户部署云平台,鉴于当地网络环境以及数据量的问题,急需对数据进行压缩处理,由于医学数据主要用于临床辅助诊断,因此不能采用有损压...
分类:
其他好文 时间:
2015-07-27 00:29:32
阅读次数:
692
1. 数据位存储(DCM_BitsStored)、数据位分配(DCM_BitsAllocated)、数据符号类型(DCM_PixelRepresentation)、灰度偏移(DCM_RescaleIntercept) 和数据值(DCM_PixelData)本身的关系:
(1) DCM_BitsAllocated是给每个像素分配的字节数对应的位数,如单字节就是8,两字节就是16.........
分类:
其他好文 时间:
2015-07-23 12:04:26
阅读次数:
607
今天在用DicomFile.Open(Stream s)这个接口时,遇到一个异常: DicomIoException: Requested 132 bytes past end of fixed length stream.具体原因我们看下源码就很清楚:public bool Require(uint count, ByteSourceCallback callback, object s...
分类:
其他好文 时间:
2015-07-08 00:40:38
阅读次数:
207
背景:在做一个Dicom Web Service, 其中WADO-RS中需要解析TransferSyntax, 然后就用到了fo-dicom中的DicomFile.ChangeTransferSyntax方法。代码类似: var df = DicomFile.Open(samplesDir + @"\User Submitted\overlays.dcm"); df...
??DICOM RESTFul服务中好多请求url都是类似:{SERVICE}/studies/{StudyInstanceUID}, UID如1.2.156.112605.75006881735343.1369658683.4.4.1。我们默认建立的Asp Net WebApi 服务时,如果请求url包含‘.',则返回404错误。 解决办法:需要在web.config文件中添加如下节点。...
1. 前言: 基于DICOM3.0标准的医学图像中,每一张图像中都携带着许多的信息,这些信息主要可以分为Patient, Study, Series和Image四类。每一个DICOM Tag都是由两个十六进制数的组合来确定的,分别为Group和Element。如(0010,0010)这个Tag表示的...
分类:
其他好文 时间:
2015-06-15 23:39:24
阅读次数:
1304
背景:近期由于项目需要,开始频繁接触基于Java的DICOM标准实现库,即dcm4che。与以往使用的dcmtk和fo-dicom不同的是,dcm4che工具包是整个dcm4che项目的一部分,只作为解析DICOM格式的工具包被dcm4chee使用,而dcm4chee是一种托管在JBoss AS中的WEB应用。其内部添加了诸多的业务层的逻辑,在实际应用中遇到了几个问题,记录下来,以备后续仔细分析。...
分类:
其他好文 时间:
2015-06-15 00:17:29
阅读次数:
308
背景:之前博文DICOM:开源DICOM服务框架DCM4CHEE安装中曾介绍过在Windows7环境下安装部署dcm4chee。近期公司项目需要与部署到Linux系统的远端基于dcm4chee框架的DICOM服务器进行交互。由于网络问题,为了提高调试效率,就在本地Ubuntu14虚拟机中尝试安装部署了一套dcm4chee服务以及oviyam2客户端,详情如下。...
分类:
系统相关 时间:
2015-06-07 01:06:57
阅读次数:
591
背景:之前专栏中介绍过fo-dicom来实现DICOM标准中的DIMSE-C各项服务,此次现实中遇到了特殊需求,即“要根据不同的dicom文件存储到不同的位置,且该位置信息通过dicom文件内部自有信息无法构造”。在具体实现过程中由于WCF实例模型、C#闭包等原因,走了不少弯路,这里将整个分析过程记录下来,供以后学习参考。...
分类:
其他好文 时间:
2015-06-04 19:34:27
阅读次数:
1839