DICOM醫學影像文件格式解析


DICOM醫學影像文件格式解析

dicom協議中文文檔可去csdn下載

1.DICOM

DICOM(DigitalImaging andCommunications inMedicine)是指醫療數字影像傳輸協定,是用於醫學影像處理、儲存、打印、傳輸的一組通用的標准協定。它包含了文件格式的定義以及網絡通信協議。DICOM是以TCP/IP為基礎的應用協定,並以TCP/IP聯系各個系統。兩個能接受DICOM格式的醫療儀器間,可通過DICOM格式的文件,來接收與交換影像及病人資料。

目前,DICOM被廣泛應用於放射醫療,心血管成像以及放射診療診斷設備(X射線,CT,核磁共振,超聲等),並且在眼科和牙科等其它醫學領域得到越來越深入廣泛的應用。

目前采用的標准是DICOM3.0,每一張圖像中都攜帶着大量的信息,這些信息具體可以分為以下四類:

  • (a)Patient
  • (b)Study
  • (c)Series
  • (d)Image

每一個DICOM Tag都是由兩個十六進制數的組合來確定的,分別為Group和Element。如(0010,0010)這個Tag表示的是Patient’s Name,它存儲着這張DICOM圖像的患者姓名。

2.DICOM存儲格式

DICOM文件的整體結構如下表所示,先是128字節的導言部分(沒有實際信息),接着是四個字節組成的"DICM"字符串,然后是若干DataElement元素依次排列直至文件結束。

導言 "DICM" DataElement DataElement ... DataElement
128 Byte 4 Byte n Byte n Byte n Byte

2.1 DataElement的三種結構

DataElement是存儲文件信息的主體,DataElement的總體結構如下表所示:

Tag VR(值表示法) Len(數據長度) 數據值(內容)
4 Byte 2 Byte 2 Byte Len Byte

Tag由2 Byte的組號(group)和2 Byte的元素號(element)組成,VR是DICOM特有的值表示法,關於值表示法的解釋見下文

按照VR的類型以及是否顯示VR,DataElement又分為三種具體的結構。

  • 顯示VR:VR為OB OW OF UT SQ UN的元素結構
結構 組號 元素號 VR 預留 值長度 數據元素值
字節數 2 2 2 2(0x00,0x00) 4 由值長度確定
  • 顯示VR:VR為普通類型時元素結構(少了預留那一行)
結構 組號 元素號 VR 值長度 數據元素值
字節數 2 2 2 4 由值長度確定
  • 隱式VR
結構 組號 元素號 值長度 數據元素值
字節數 2 2 4 由值長度確定

2.2 DataElement的Tag

DataElement的Tag用於標識Element的數據內容,比如病人信息、圖像的格式等。

Tag總共有2000多個。

常用的主要組號:0002組描述設備通訊,0008組描述特征參數,0010組描述患者信息,0028組描述圖像信息參數。

Dicom文件數據中所有dataElement從前到后

2.2.1 按tag格式又可簡單分段

  • 文件元Tag(組號+0000)

不受傳輸語法影響,總是以顯示VR方式表示,用於定義了傳輸語法;

文件元Tag的dataElement,並沒有多大的意義,它的值長度是整個組所有DataElement的字節長度,一個Dicom中可以只有一個文件元Tag,也可以有多個文件元Tag。

  • 普通Tag

除了文件元Tag和像素Tag,其余的都是普通Tag數據。包括:圖像寬,高,數據傳輸格式,病人姓名,病人生日,病歷醫院,病歷科室,病情的描述等等數據;

  • 像素Tag(7fe0,0010)

表示DataElement存儲的是病歷的圖像數據。

2.2.2 按Tag展示信息的類別

  • Patient Tag
Group Element Tag Description 中文解釋 VR
0010 0010 Patient’s Name 患者姓名 PN
0010 0020 Patient ID 患者ID LO
0010 0030 Patient’s Birth Date 患者出生日期 DA
0010 0032 Patient’s Birth Time 患者出生時間 TM
0010 0040 Patient’s Sex 患者性別 CS
0010 1030 Patient’s Weight 患者體重 DS
0010 21C0 Pregnancy Status 懷孕狀態 US
  • Study Tag
Group Element Tag Description 中文解釋 VR
0008 0050 Accession Number:A RIS generated number that identifies the order for the Study. 檢查號:RIS的生成序號,用以標識做檢查的次序. SH
0020 0010 Study ID 檢查ID. SH
0020 000D Study Instance UID:Unique identifier for the Study. 檢查實例號:唯一標記不同檢查的號碼. UI
0008 0020 Study Date:Date the Study started. 檢查日期:檢查開始的日期. DA
0008 0030 Study Time:Time the Study started. 檢查時間:檢查開始的時間. TM
0008 0061 Modalities in Study 一個檢查中含有的不同檢查類型. CS
0008 0015 Body Part Examined 檢查的部位. CS
0008 1030 Study Description 檢查的描述. LO
0010 1010 Patient’s Age 做檢查時刻的患者年齡,而不是此刻患者的真實年齡. AS
  • Series Tag
Group Element Tag Description 中文解釋 VR
0020 0011 Series Number:A number that identifies this Series. 序列號:識別不同檢查的號碼. IS
0020 000E Series Instance UID:Unique identifier for the Series. 序列實例號:唯一標記不同序列的號碼. UI
0008 0060 Modality 檢查模態(MRI/CT/CR/DR) CS
0008 103E Series Description 檢查描述和說明 LO
0008 0021 Series Date 檢查日期 DA
0008 0031 Series Time 檢查時間 TM
0020 0032 Image Position (Patient):The x, y and z coordinates of the upper left hand corner of the image, in mm. 圖像位置:圖像的左上角在空間坐標系中的x,y,z坐標,單位是毫米. 如果在檢查中,則指該序列中第一張影像左上角的坐標. DS
0020 0037 Image Orientation (Patient):The direction cosines of the first row and the first column with respect to the patient. 圖像方位: DS
0018 0050 Slice Thickness:Nominal slice thickness, in mm. 層厚. DS
0018 0088 Spacing Between Slices 層與層之間的間距,單位為mm DS
0020 1041 Slice Location:Relative position of exposure expressed in mm. 實際的相對位置,單位為mm. DS
0018 0023 MR Acquisition CS
0018 0015 Body Part Examined 身體部位. CS
  • Image Tag
Group Element Tag Description 中文解釋 VR
0008 0008 Image Type:Image identification characteristics. CS
0008 0018 SOP Instance UID SOP實例UID.
0008 0023 Content Date:The date the image pixel data creation started. 影像拍攝的日期. DA
0008 0033 Content Time 影像拍攝的時間. TM
0020 0013 Image/Instance Number:A number that identifies this image. 圖像碼:辨識圖像的號碼. IS
0028 0002 Samples Per Pixel:Number of samples (planes) in this image. 圖像上的采樣率. US
0028 0004 Photometric Interpretation:Specifies the intended interpretation of the pixel data. 光度計的解釋,對於CT圖像,用兩個枚舉值MONOCHROME1,MONOCHROME2.用來判斷圖像是否是彩色的,MONOCHROME1/2是灰度圖,RGB則是真彩色圖,還有其他. CS
0028 0010 Rows: Number of rows in the image. 圖像的總行數,行分辨率. US
0028 0011 Columns: Number of columns in the image. 圖像的總列數,列分辨率. US
0028 0030 Pixel Spacing:Physical distance in the patient between the center of each pixel. 像素間距.像素中心之間的物理間距. DS
0028 0100 Bits Allocated:Number of bits allocated for each pixel sample. Each sample shall have the same number of bits allocated. 分配的位數:存儲每一個像素值時分配的位數,每一個樣本應該擁有相同的這個值. US
0028 0101 Bits Stored:Number of bits stored for each pixel sample. Each sample shall have the same number of bits stored. 存儲的位數:有12到16列舉值.存儲每一個像素用的位數.每一個樣本應該有相同值. US
0028 0102 High Bit:Most significant bit for pixel sample data. Each sample shall have the same high bit. 高位. US
0028 0103 Pixel Representation:Data representation of the pixel samples. Each sample shall have the same pixel representation.Enum: 0000H=unsigned integer,0001H=2’s complement. 像素數據的表現類型:這是一個枚舉值,分別為十六進制數0000和0001.0000H = 無符號整數,0001H = 2的補碼. US
0028 1050 Window Center 窗位. DS
0028 1051 Window Width 窗寬. DS
0028 1052 Rescale Intercept:The value b in relationship between stored values (SV) and the output units.Output units = m*SV + b.Required if Modality LUT Sequence (0028, 0030) is not present. 截距:如果表明不同模態的LUT顏色對應表不存在時,則使用方程Units = m*SV + b,計算真實的像素值到呈現像素值。其中這個值為表達式中的b。 DS
0028 1053 Rescale Slope:m in the equation specified by Rescale Intercept (0028,1052).Required if Rescale Intercept is present. 斜率.這個值為表達式中的m。 DS
0028 1054 Rescale Type:Specifies the output units of Rescale Slope (0028,1053) and Rescale Intercept (0028,1052).Enum: US=Unspecified Requried if Photometric Interpretation is MONOCHROME2, and Bits Stored is greater than 1.This specifies an identity Modality LUT transformation. 輸出值的單位.這是一個枚舉值, LO

2.3 DataElement的VR

VR(Value Representation)值表示法是DICOM文件中特有的一種數據類型表示方式,規定了不同數據類型的含義及存儲格,共有27種VR。在隱式VR的結構中會根據元素標識進行判斷。Tag和VR是有對應關系的,每一種Tag其實是有一個固定的VR類型。

2.3.1 27種VR的含義及數據長度

VR 含義 允許的字符 數據長度
CS - Code String代碼字符串 開頭結尾可以有沒有意義的空格的字符串,比如“CD123_4” 大寫字母,0-9,空格以及下划線字符 最多 16 個字符
SH - Short String短字符串 短字符串,比如:電話號碼,ID等 最多 16 個字符
LO - Long String 長字符串 一個字符串,可能在開頭、結尾填有空 格。比如“Introduction to DICOM” 最多 64 個字符
ST - Short Text短文本 可能包含一個或多個段落的字符串 最多 1024 個字符
LT - Long Text短文本 可能包含一個或多個鍛煉的字符串,與LO相同,但可以更長 最多 10240 個字符
UT - Unlimited Text無限制文本 包含一個或多個段落的字符串,與 LT 類似 最多(2的32次方–2)個字符
AE - Application Entity應用實體 標識一個設備的名稱的字符串,開頭和 結尾可以有無意義的字符。比如 “MyPC01” 最多 16 個字符
PN - Person Name病人姓名 有插入符號()作為姓名分隔符的病人姓名。比如“SMITHJOHN” “Morrison- JonesSusan^^Ph.D, Chief Executive Officer” 最多 64 個字符
UI - Unique Identifier (UID)唯一標識符 一個用作唯一標識各類項目的包含 UID 的字符串。比如“1.2.840.10008.1.1” 0-9 和半角句號(.) 最多64 個字符
DA - Date日期 格式為 YYYYMMDD 的字符串;YYYY 代表年;MM 代表月;DD 代表日。比 如“20050822”表示 2005 年 8 月 22 日 0-9 8個字符
TM - Time時間 格式為 HHMMSS 的字符串。FRAC; HH 表示小時(范圍“00”-“23”); MM 表示分鍾(范圍“00”-“59”); 而 FRAC 包含秒的小數部分,即百萬分 之一秒。比如“183200.00” 表示下午 6:32 0-9 和半角句號(.) 最多 16 個字符
DT - Date Time日期時間 格式為 YYYYMMDDHHMMSS. FFFFFF,串聯的日期時間字符串。字符串的各部分從左至右是:年 YYYY;月 MM;日 DD;小時 HH;分鍾 MM;秒 SS;秒的小數 FFFFFF。比如 20050812183000.00”表示 2005 年 8 月 12 日下午 18 點 30 分 00 秒 0-9,加號,減號和半角句號 最多 26 個字符
AS - Age String年齡字符串 符合以下格式的字符串:nnnD, nnnW, nnnM, nnnY;其中 nnn 對於 D 來說表示天數,對於W來說表示周數,對於M 來說表示月數,對於 Y 來說表示歲數。 比如“018M”表示他的年齡是 18 個月 0–9, D, W,M, Y 4 個字符
IS - Integer String整型字符串 表示一個整型數字的字符串。比如“-1234567” 0-9,加號(+),減號(-) 最多 12 個字符
DS - Decimal String 小數字符串 表示定點小數和浮點小數。 比如“12345.67”,“-5.0e3” 0-9,加號(+),減號(-), 最多 16 個字符 E,e 和半角句號(.) 最多 16 個字符
SS - Signed Short有符號短型 符號型二進制整數,長度 16 比特 2 個字符
US - Unsigned Short 無符號短型 無符號二進制整數,長度 16 比特 2 個字符
SL - Signed Long有符號長型 有符號二進制整數 4 個字符
UL - Unsigned Long 無符號長型 無符號二進制整數,長度 32 比特 4 個字符
AT - Attribute Tag屬性標簽 16 比特無符號整數的有序對,數據元素的標簽 4 個字符
FL - Floating Single 單精度浮點 單精度二進制浮點數字 4 個字符
FD - Floating Point Double雙精度二進制浮點數字 雙精度二進制浮點數字 8 個字符
OB - Other Byte String其他字節字符串 字節的字符串(“其他”表示沒有在VR中定義的內容)
OW - Other Word String其他單詞字符串 16 比特(2 字節)單詞字符串
OF - Other Float String其他浮點字符串 32 比特(4 個字節)浮點單詞字符串
SQ - Sequence Items條目序列 條目的序列
UN – Unknown未知 字節的字符串,其中內容的編碼方式是未知的

2.4 DataElement的數據長度

數據長度用兩個字節存儲了數據元素值的長度,所有DICOM數據元素都應該為偶數長度,若為奇數,追加空格或空NULL。當數據長度為0xFFFFFFFF時,數據一直到截止符為止。

3 未完待續

添加js解析dicom的內容


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM