java如何在我自己的API中实现Dicom属性字典
您好
我目前正在尝试学习一些Java编程。为了做到这一点,我正试图做一些真正有用的东西。因为我在学习医学成像,我想我会用Java编写自己的Dicom Api
Dicom标准的一部分是包含Dicom文件中使用的属性的数据字典。这些属性必须具有以下属性
(组,元素)说明
例如:
(0x0002,0x0000)长度
(0x0002,0x0002)MediaStoredSOPClassUID
(0x0002,0x0010)TransferSyntaxUID
(0x0003,0x0003)长度
我想知道应该如何在API中实现这些。我想到的选择是:
- Enum,问题是唯一属性可能具有相同的描述李>
enum Attributes{
Length(0x0002,0x0000),
Length(0x0003,0x0000,
}
- 一个静态类,只有一些包含属性的常量。还有激进分子的名字问题李>
- 包含此数据的xml文件李>
我真的很想使用xml来实现这一点,因为数据的表格化和易于访问。但是有没有什么方法可以把它包含在我的Api中呢
~Timo Willemsen
# 1 楼答案
以下是PS 3.6-2008作为GDCM中使用的XML:
http://gdcm.svn.sf.net/viewvc/gdcm/trunk/Source/DataDictionary/Part6.xml?view=markup
如上所述,我还将添加VM和Retired标志:
# 2 楼答案
您可能还想研究其他DICOM源PixelMed尤其包含一个基于XML和XSLT的验证器。有几个DICOM plugins可供ImageJ使用
# 3 楼答案
为了便于访问,应该将XML文件放在类路径中,这样您就可以通过^{} 获取其位置,或者通过^{} 获取其内容
要使用标准API读取/评估/写入XML文件,我可以推荐StAX。如果XML文件相对较大(超过数十兆字节),那么我可以推荐更多
或者,如果文件不是很大,它是纯键值对,那么你也可以考虑properties files,你可以很容易地用^{} API管理,基本上扩展^ {< CD4>}。
# 4 楼答案
地图最适合您,请定义一个包含dicom条目的类:
还要创建一个包含所有条目的映射
将字典文件中的每一行读入条目类对象
de
后,将其添加到映射中由于组和元素的组合是唯一的,因此不会发生任何冲突