您好,欢迎访问三七文档
全称:DigitalImagingCommunicationinMedical。由美国放射学院(ACR)和美国国家电子制造协会(NEMA)共同制定起因:二十世纪七十年代以来,计算机断层成象技术(CT)和其他数字成象技术飞速发展,很多厂商都研制了具有计算机的成象设备,制定了各自不同的图像格式。随着计算机网络的普及及其在医学上的广泛应用,在不同厂商生产的设备之间交换图像和相关的信息的需求日趋迫切,而缺乏统一的标准成为图像交换的主要障碍。DICOM概况DICOM标准中涵盖了医学数字图像的采集、归档、通信、显示及查询等几乎所有信息交换的协议;以开放互联的架构和面向对象的方法定义了一套包含各种类型的医学诊断图像及其相关的分析、报告等信息的对象集;定义了用于信息传递、交换的服务类与命令集,以及消息的标准响应;详述了唯一标识各类信息对象的技术;提供了应用于网络环境(OSI或TCP/IP)的服务支持;结构化地定义了制造厂商的兼容性声明(ConformanceStatement)。DICOM概况意义:DICOM标准的推出与实现,大大简化了医学影像信息交换的实现,推动了远程放射学系统、图像管理与通信系统(PACS)的研究与发展,并且由于DICOM的开放性与互联性,使得与其它医学应用系统(HIS、RIS等)的集成成为可能。DICOM概况DICOM3.0标准随着技术的发展,不断地进行更新,目前由18部分组成:第一部分:引言与概述。简要介绍了DICOM的概念及其组成。第二部分:兼容性。定义了要求制造商精确地描述其产品的DICOM兼容性,即构造一个该产品DICOM兼容性声明,它包括选择什么样的信息对象、服务类、数据编码方法等,每一个用户都可以从制造商处得到这样一份声明。DICOM3.0的组成第三部分:信息对象的定义。定义了两类信息对象类:普通性、复合型。第五部分:数据结构及编码。描述了怎样对信息对象类和服务类进行构造和编码。第六部分:数据字典。描述了所有信息对象是由数据元素组成的,数据元素的属性及涵义。DICOM文件主要由文件头和文件结构像素数据两大部分组成。文件头分为文件引言和数据集两部分DICOM文件格式MoreFilesAFilecontainsoneSOPInstanceDICOMDataSetAFilecontainsoneSOPInstanceDICOMDataSetDICOMDICOMDICOMDICOMPart5EncodingDICOMPart5EncodingInformationDICOMFileMetaInformationDICOMFileMetaSOPInstanceAFile-setcontainsDICOMFormatedFilesSOPInstanceSOPInst.第一步:跳过128个字节(00H)导言部分,读取“DICM”4个字节,确认是DICOM格式文件第二步:读取重要的数据元素,如传输语法等。其中,0002组描述设备通讯,0008组描述特征参数,0010组描述患者信息,0028组描述图像信息参数如何解读DICOM文件第三步:读取普通的TAG,直到搜寻到(7FE0,0010)。存储图像数据,像素数据的存储顺序,从左到右,从上到下如何解读DICOM文件DICOM中的传输语法(确定字节排序、VR是隐式还是显式)DICOM对象内部所有数据元素必须按照(组,元素)标签编号来排序:帮助校验数据完整性,在DICOM对象中一个接一个地读取元素时,如果发现读取的下一个数据元素标签编号比前一个还小,那么说明DICOM对象损坏了。DICOM文件包含的四级属性,patient(病人),study(检查),series(序列),SOP(影像)。每一级别需要具有能够唯一标识这个等级属性的键值,类似关系数据库中的主键。病人对应的为Patientid,检查studyinstanceUID,序列SeriesInstanceuid,影像SOPInstanceUID.DICOM数据集合是由DICOM数据元素按照一定的顺序排列组成的DICOM数据元素由四部分组成:标签,VR,数据长度和数据域DICOM最基本的结构单元——数据元素标签:(组号,元素号)所有双数组编号提供DICOM数据字典的供标准数据使用,所有单数组编号供私用数据使用。VR:表示该数据元素中的数据是什么形式的,可查阅DICOM标准第五部分的24页。VR是可选的,取决于协商的传输数据格式数据长度:所有DICOM数据元素都应该为偶数长度,若为奇数,追加空格或空NULLDICOM标准中,在某些表中使用符号“”描述项目的序列表中的含义:属性SeriesDate,SeriesTime,SeriesInstanceUID嵌套在ReferencedSeriesSequence中序列SQ编码规则注:每个在SQ序列中的对象项目前面都会有个(FFFE,E000)的标签(作为项目分隔符项)相同的属性在多个表或多个地方使用完整描述该模块,就是将两表合为一个表,且表2的属性类型参考表1的属性类型属性宏找到对应IOD的模块,根据表中的Usage确定需要的所有模块找到相应模块,根据数据元素的类型(表中的Type)确定需要的TAG查阅数据字典(第六部分)确定TAG的数据类型,填充数据DCMTK中插入数据元素的函数putAndInsertString()如何制定自己的DICOM文件MR信息实体模块注:M:Mandatory强制的C:Conditional有条件的U:User用户可选的注:关于Type的说明在标准中第五部分的40页Type1:Type1的数据元素必须存在于数据集中,且值不为空Type1c:Type1c的数据元素在某种条件下必须存在于数据集中,且值不为空Type2:Type2的数据元素必须存在于数据集中,且值可以为空Type2c:Type2c的数据元素在某种条件下必须存在于数据集中,且值可以为空Type3:Type3的数据元素是可选的,可以为空用途:表示在图像中人工添加或者由机器自动产生的标记图形,可以是位图格式、图形或者文本Overlay最多可以拥有16个不同的覆盖层面,它们的标签由60xx的值决定,其中xx为不大于64的偶数。不同的覆盖层面拥有相同的标签值注:关于MR的Overlay模块的说明在第三部分的1114页DICOM中的Overlay存储方式Overlay可以嵌入存储在图像像素数据之中,也可以独立存储在标签OverlayData(60xx,3000)中。对于检查系列而言,Overlay必须独立存储。Overlay模块必须有的非空的TAGDCM_OverlayRows(0x6000,0x0010)overlay行数DCM_OverlayColumns(0x6000,0x0011)overlay列数DCM_OverlayType(0x6000,0x0040)DCM_OverlayOrigin(0x6000,0x0050)DCM_OverlayBitsAllocated(0x6000,0x0100)DCM_OverlayBitPosition(0x6000,0x0102)DCM_OverlayData(0x6000,0x3000)Overlay像素数据OverlayType表示感兴趣的区域或者其他图形,有两个值:G=Graphics;R=ROI.OverlayOrigin表示Overlay相对于图像的起始位置。该标签中存储的字串表示Overlay开始时在原始图像的行与列的位置,row\columnOverlayBitPosition用于表示嵌入的Overlay数据在字的哪个位置OverlayBits用于表示为每个Overlay像素分配的bit数嵌入图像像素数据一般情况下,DICOM图像的像素数据存储在标签(7FE0,0010)中。Overlay的具体位置与存储像素的具体位置一致。可以根据标签OverlayBitPosition(60xx,0112)和标签OverlayBitsAllocated(60xx,0100)判断在DICOM图像像素中是否存在嵌入的Overlay标签。如果存在嵌入的Overlay像素,则OverlayBitPosition(60xx,0112)不可能为0,并且OverlayBitsAllocated(60xx,0100)的值和BitsAllocated(0028,0100)一致。独立存储的Overlay如果图像不适合嵌入Overlay像素,或者Overlay与一个检查序列相关时,Overlay也可以作为独立的数据存储在OverlayData(60xx,3000)中OverlayBitPosition(60xx,0112)值为0,且OverlayBitsAllocated(60xx,0100)为1,此时,Overlay将独立于图像像素数据存储。在OverlayData(60xx,3000)中存储的数据为比特流,每一个比特表示一个像素。DCMTK中关于overlay的函数在DicomImage类中,如getOverlayData()、addoverlay()…..
本文标题:DICOM学习笔记
链接地址:https://www.777doc.com/doc-6647046 .html