首页 > 文章中心 > 正文

DICOM标准图像数据库

DICOM标准图像数据库

1DICOM数据模型

在DICOM标准中,定义了一个以患者,研究(Study),序列(Series)、图像四个层次的信息模型。这四个层次分别对应了有关类型信息的生成阶段和不同来源。

(1)患者层次

患者层次包含了属于某个研究的患者标识和人口统计信息。由于一个患者可能存在多个研究,患者层次是信息系统模型中的最高层次,一个患者可能由于其它或以前的检查而有多个研究。然而在DICOM标准中,患者信息却被包含在研究模块中。

(2)研究层次

研究层次是在信息模型中最重要的层次。一个研究是某个特定类型检查请求的结果。放射科的所有活动都是围绕着正确处理患者的研究请求而进行的。在研究层次上,保存着患者的标识信息,并包含有与同一个研究有关的医院管理信息系统中的其它参考信息。一般地,一个研究的请求可能会涉及不同模式(Modality)的检查过程,因而涉及一个或多个图像的序列,这取决于检查所定义的协议。研究作为DICOM的信息根将所有图像数据收集到一起。在研究层次下收集了所有的图像序列。

(3)序列层次

序列层次标识了生成图像的模式类型、序列生成的日期、检查类型的细节和使用的设备等信息,是来自单一模式有关图像的集合。图像组合到序列中的方式取决于它们的临床用途。而图像在模式上是如何获取的对序列的分组并不重要。但是不同的属性将获取标识并在显示图像时表现出来。在许多情况下,图像关系是通过获取发生的方式定义的。当按顺序的获取具有空间或普通的关系时,这种获取结果的图像可以成组到一个序列中。当存在于图像之间的关系不再有效时,必须开始新序列。

(4)图像层次

信息模型的最低层次是图像层次,每个图像包含获取位置以及图像数据本身,取决于模式的类型。图像层次包含有一幅(单幅)、两幅(双屏)和在相对短的时间内收集的多幅图像(多帧图像)。多帧图像的使用节约了高层次上信息的重复,但这仅仅是在帧之间关系可以用简单方法描述时才有可能,例如时间间隔或系统移动的增量在所有帧之间都是相等的。DICOM模型考虑了在医院环境下所涉及到图像的绝大部分信息,对于系统设计有很好的参考作用。必须说明的是在信息模型中,不是所有内容都是必须的。DICOM标准在第三部分详细定义了各种信息对象的模块组成和模块中的属性,允许根据设备的类型、应用系统的需求等具体情况有条件地取舍,但必须在兼容性声明中加以说明。正是由于DICOM标准中允许属性是可选的,这种不确定性给数据库的结构定义带来困难。

2数据的表示和关系表的设计

在DICOM标准中,所有的数据(即模块中的属性)都是以数据元素的形式出现的。一个数据元素是由标记(Tag),值表示法(ValueRepresentation,VR),值长度(ValueLength,VLen)和值(Value)四个部分组成。标记用一对16位无符号整数组成,分别称为组号和元素号。标记的值的指定和语义说明在数据字典中定义。值表示法是用两个字符组成,规定了该数据元素值的表示格式,如AS表示年龄字符串,DT是日期和时间,FD表示双精度浮点数等。值长度用16位或32位整数表示,值域则实际存放具体内容。上述的信息模型并不能直接转换到关系数据库中,这是因为①DICOM标准中数据是以数据元素的格式进行交换和存放在可移动介质上的,即有(TAG,VR,VLen,V)的结构的要求,这与关系数据库中的原子属性不一致;②对于同一个属性存在着对应多个值表示法,

这使得在数据库定义的数据类型上无法直接定义;③对于同一个属性存在多个TAG,也要求存在有一种对应的映射。由于上述原因,在关系数据库的实现中,必须保存完整的数据元素结构以及内容,这样既解决了数据元素结构上的要求,也解决了由于属性可选而带来的数据稀疏问题。在我们的设计中,无论是研究,序列图像还是患者模块,其实现的关系表结构都是一样,即以(UID,TAG,VR,VLen,V)多元组表示。各模块之间以唯一标识符(UniqueIDentifier,UID)作为关键字联接。根据标准要求,主要设立下面几个表:(1)患者表PatientTable=(PatientID,TagGroup,TagElement,VR,VLen,ValueContent):存放描述患者的静态信息的数据元素,对于每个患者指定一个ID作为索引的键值。(2)研究表StudyTable=(StudyUID,TagGroup,TagElement,VR,VLen,ValueContent):存放所有研究模块的数据元素,以及患者的动态信息。(3)序列表SeriesTable=(SeriesUID,TagGroup,TagElement,VR,VLen,ValueContent):存放所有序列模块的数据元素,以及设备信息和参考帧信息。(4)图像表ImageTable=(ImageUID,TagGroup,TagElement,VR,VLen,ValueContent):存放所有描述图像属性的数据元素。(5)数据表DataTable=(DataUID,TagGroup,TagElement,VR,VLen,ValueContent):存放所有图像的象素等类型的数据。(6)访问表VisitTable=(VisitUID,TagGroup,TagElement,VR,VLen,ValueContent):存放所有访问模块的数据元素。(7)患者联接表PatientLinkTable=(PatientID,VisitUID,StudyUID,SeriesUID,ImageUID):存放所有患者与其研究、序列、图像以及访问之间联接的信息,这是一个有信息冗余的表,但可以提高数据操作的效率。除此以外,还有一些与管理类、服务类有关的表,这里就不再赘述。

3患者信息的处理

在DICOM标准中,患者信息虽然信息层次最高,但是从属于研究模块,这样带来两个问题:一是由于患者存在有多个研究,同样的患者信息就存在于多处,容易造成患者数据不一致。二是对常用的操作(如查询、存储等),都是首先从患者信息开始进行的。如果患者信息存放在研究模块中,必然先从研究模块中查找患者信息,再由此查找到其它模块中的索引信息,这样的过程会引起系统效率的降低。患者信息可以分为不变的静态信息和可变的动态信息两部分。静态信息指患者出生年月,父母姓名等等。这些信息只要在患者模块中保存一次,需要时直接引用即可。而其它的是属于动态变化的信息,如体重等,对于每次研究,这些信息可能都有变化,这些变化往往有医疗诊断价值,研究模块必须反映出这种变化,因此这些动态信息必须单独保存在研究模块中。这样分离的结果使得患者模块既提升到研究模块之外,避免了在研究模块中患者信息的重复存储,而又不造成信息丢失。当需要使用患者的静态信息时,将患者模块中的数据链接到研究模块中即可。在DICOM标准中,规定了患者姓名、患者ID作为查询的关键字,其它信息则是可选择的。但无论对中国人还是外国人来说都存在重名的问题。因而在数据库中姓名是不能作为主关键字,在查询过程中也要对同名问题加以处理。患者ID通过在系统中指定一个唯一的ID派发中心,可以保证在医院范围内的唯一性,因而可以作为数据库的主关键字。但是在网络环境下存在着同一个人在不同地点、不同的医院中有不同的编号,这使得在医院之间的信息交换过程更加复杂,一般是通过组合属性查询的方法解决这个问题。

4SQL查询过程

对于用上面各个关系表建立起来的数据库,基本的查询、存储、修改等功能都是用数据库系统中SQL语言的存储过程,配合通信网关模块中的程序实现。DICOM通信网关程序负责与网络环境中的其它DICOM设备进行通信,将DICOM消息交换协议(DIMSE)命令映射为对数据库操作的SQL语句和其它处理过程,网关程序通过ODBC方式与数据库互连。例如对于常用的从患者姓名得到某个图像数据查询过程如下:(1)从患者模块中查出所有姓名为NameStr的患者IDSELECTPatientIDFROMPatientTableWHERETagGroup=16ANDTagElement=16ANDValuecon-tent=@NameStr(2)从同名的各个患者详细信息中选出所要的患者的ID这是一个交互的过程,用户通过应用程序与数据库得到具体的患者ID。(3)以患者ID为键值查患者联接表,得到所有的研究、序列、图像UID用SELECTStudyUIDFROMPatientLinkTableWHEREPatientID=@ID得到所有研究UID。用SELECTImageUIDFROMPatientLinkTableWHEREPatientID=@ID得到所有图像UID。(4)以图像UID可以从图像数据表中得到图像数据:SELECTValueFROMDataTableWHERETagGroup=32736ANDTagElement=16ANDPatientID=@ID。(5)应用程序以ODBC的调用取出图像数据做进一步的处理。必须说明的是,上述操作仅仅是DICOM网关程序对数据库的直接操作,而数据库管理系统并不直接与系统中其它的DICOM设备交换信息。

5结论

尽管DICOM标准应用了面向对象的分析方法,但根据其信息模型,还是可以用简洁方式在关系数据库上实现其信息存储功能。本文提出的方案,在SQLServer7.0和Oracle8系统上都实现了设计目标。本系统经过实验检验,具有如下的优点:(1)库结构简单,构造方便,这使得系统维护工作量大为减少。(2)数据存储效率高,克服了记录全部属性所产生的数据稀疏问题。(3)系统扩充余地大,由于DICOM标准的是在不断的修改和补充变化的过程中,用本方案不会为因为变化而引起数据库结构的变化。(4)数据库输出数据时,易于组成标准所要求的数据集,数据转换的开销小。(5)数据库系统功能独立,不参与DICOM的消息交换协议。(6)保留了数据标记(Tag),使得数据有精确语义,不会引起语义的混淆。至于由于记录了每个数据元素的标记、值表示法和值长所带来的对存储效率的影响,我们认为在存储设备容量不断增大,性能飞速提高的现代技术条件下,以存储空间换取系统结构上的简单和程序的清晰等优势还是值得的。医学图像数据库作为医疗信息系统的核心技术,可广泛应用在PACS系统、远程医疗系统、医疗档案系统以及医疗影象设备中。

文档上传者