DICOM
Введение в основы стандарта.
Олег Пьяных
contact@[Link] апрель 2004
DICOM
! Digital Imaging and COmmunications in Medicine
(«дайком»).
! Создан в 1985 (American College of Radiology (ACR) и
National Electrical Manufacturers Association (NEMA) )
с целью сделать медицинскую информацию
независимой от производителей. Улучшенная
версия опубликована в 1988.
! Продемонстрирован в работе в 1992, RSNA.
! Окончательно утвержден в 1993.
Основные понятия DICOM
! Data Element (DE) – «атом» информации
! Value Representation (VR) – DE, записанный в стандартном
формате (всего 27 типов: имя, строка, дата,...)
Пример: 15 апреля 2004 → 20040415
! Data Dictionary – словарь стандартных названий и форматов
DE
! DICOM Object (DO) – объект (набор DE), кодирующий
логически-законченный объем информации (команда, файл, ...)
! Объектный принцип представления данных. Объекты
содержат информацию о себе, и обмениваются командами
(услугами) между собой
Ключевое понятие: Data Element
! Каждый атом информации представлен в DICOM как Data Element:
Patient Name: Иван Сидоров Строка имени (PN)
Tag
Tag Value Representation (VR)
Число (DS)
Patient Weight: 90,017
! Родственные элементы объединены в пронумерованные группы
(например, группа данных о пациенте, номер 0010). В результате
каждый элемент получает двойной номер, состоящий из номера
своей группы и своего номера в этой группе:
Tag = (Группа, Элемент) Полное название элемента VR
(0010,0010) Patient’s Name (имя пациента) PN
(0010,1020) Patient’s Weight (вес пациента) DS
(0010,1001) Other Patient’s Names (другие имена) PN
Складываем DE в DICOM Object
Исходная
информация Словарь
Patient Name: Иван Сидоров как набор DE DICOM
Patient Weight: 90,017 Tag Полное название VR
Image Zoom Factor: 2,01 (0010,0010) Patient’s Name PN
(0010,1020) Patient’s Weight DS
... (0010,1001) Other Patient’s Names PN
Элемент Длина значения
Группа группы элемента
0010 0010 12 Иван^Сидоров
0010 0020 6 90,017 DICOM-объект
0028 0031 4 2,01 Значение
элемента
...
Так что же такое DICOM-файл ?
! DICOM-файл – это сохраненный на диске Data Object, стандартный
объект. Файлы образовались как часть стандарта, а не наоборот.
! Простой способ распознать: должен содержать DICM с 129 по 132
байт:
Преимущества структуры DICOM
! Жесткий, но поразительно «вместительный» формат
для самой разнообразной информации
! Можете представить информацию любой сложности:
DO может использоваться как DE («вложенность»
данных). Напоминает XML
! Можете создавать ваши собственные элементы и
словари (группы с нечетными номерами)
! Если какое-то DICOM-устройство не может
распознать какой-то элемент (нет в словаре), оно его
должно просто пропустить (важно!). Именно поэтому
каждый DE записывается в DO со своей длиной.
Часть 2: Избранные места из словаря.
Группа 0008 - общая информация
(0008,0020) Study Date – дата осмотра больного
(0008,0021) Series Date – дата серии изображений
(0008,0022) Acquisition Date – дата получения изображений
(0008,0030) Study Time – время осмотра больного
(0008,0031) Series Time – время серии изображений
(0008,0032) Acquisition Time – время получения изображений
(0008,0060) Modality – модальность (KT, МР, УЗИ,...)
(0008,0061) Modalities – список всех модальностей пациента
(0008,0082) Institution Code Sequence - клиника
(0008,0090) Referring Physician’s Name – имя врача (направляющего)
(0008,0092) Referring Physician's – адрес врача
(0008,0094) Referring Physician’s Telephone – телефон врача
(0008,0116) Responsible Organization – ответственная организация
(0008,1010) Station Name – имя рабочей станции
(0008,1030) Study Description – описание экзамена
(0008,1032) Procedure Code Sequence – последовательность процедур
(0008,103E) Series Description – описание серии
(0008,1050) Performing Physician’s Name - лечащие врачи (имена)
(0008,1060) Name of Physician(s) Reading Study – радиологи (имена)
(0008,1080) Admitting Diagnoses Description - диагноз
(0008,1084) Admitting Diagnoses Code Sequence - коды диагноза
(0008,1090) Manufacturer’s Model Name – модель устройства
(0008,2218) Anatomic Region Sequence – анатомическая последовательность
Группа 0010 - пациент
(0010,0010) Patient’s Name - имя
(0010,0020) Patient ID – номер (паспорта)
(0010,0030) Patient's Birth Date – дата рождения
(0010,0032) Patient's Birth Time – время рождения
(0010,0040) Patient's Sex - пол
(0010,0050) Patient's Insurance Plan Code Sequence - страховка
(0010,0101) Patient’s Primary Language Code Sequence – родной язык
(0010,1000) Other Patient IDs – прочие номера
(0010,1001) Other Patient Names – прочие имена (0010,2110) Contrast Allergies - аллергии
(0010,1005) Patient's Birth Name – имя при рождении (0010,2150) Country of Residence – страна
(0010,1010) Patient's Age - возраст проживания
(0010,1020) Patient's Size - рост (0010,2152) Region of Residence – район
(0010,1030) Patient's Weight - вес проживания
(0010,1040) Patient's Address - адрес (0010,2154) Patient’s Telephone Numbers –
(0010,1080) Military Rank – военное звание номера телефонов
(0010,1081) Branch of Service – род войск (0010,2160) Ethnic Group - раса
(0010,2000) Medical Alerts - противопоказания (0010,2180) Occupation - профессия
(0010,21A0) Smoking Status – курит?
(0010,21B0) Additional Patient History –
дополнительная история пациента
(0010,21C0) Pregnancy Status - беременность
(0010,21F0) Patient's Religious Preference -
религия
(0010,4000) Patient Comments - комментарии
Группа 0018 – физика снимка
(0018,0015) Body Part Examined – часть тела
(0018,0040) Cine Rate – интервал между кадрами
(0018,0050) Slice Thickness – толщина слоя
(0018,0060) KVP – киловольты
(0018,0087) Magnetic Field Strength – сила магнитного поля
(0018,1042) Contrast/Bolus Start Time – время введения контрастного вещества: от...
(0018,1043) Contrast/Bolus Stop Time – ... и до
(0018,1044) Contrast/Bolus Total Dose – доза вещества
(0018,1045) Syringe Counts – количество инъекций
(0018,1046) Contrast Flow Rate(s) – скорость распостранения
(0018,1088) Heart Rate – пульс
(0018,1164) Imager Pixel Spacing – расстояние между пикселями
(0018,11A2) Compression Force – сила сжатия
(0018,1210) Convolution Kernel – ядро свертки
(0018,1261) Phosphor Type – тип фосфора
(0018,5100) Patient Position- координаты пациента
(0018,5101) View Position – координаты точки осмотра
(0018,5210) Image Transformation Matrix – преобразование изображения: матрица...
(0018,5212) Image Translation Vector – ...и вектор
Группа 0028 - изображение
(0028,0002) Samples per Pixel – число компонент пикселя
(0028,0004) Photometric Interpretation – тип изображения
(0028,0008) Number of Frames – число кадров
(0028,0010) Rows - высота
(0028,0011) Columns - ширина
(0028,0012) Planes – плоскости
(0028,0030) Pixel Spacing – расстояние между пикселями
(0028,0031) Zoom Factor – увеличение
(0028,0100) Bits Allocated – битность пикселя
(0028,1050) Window Center – центр окна яркости...
(0028,1051) Window Width – ...и его ширина
(0028,1052) Rescale Intercept – свободный член...
(0028,1053) Rescale Slope – ...и коэффициент отображения
(0028,1090) Recommended Viewing Mode – рекомендуемый способ просмотра
(0028,2110) Lossy Image Compression – сжималось ли изображение с потерями...
(0028,2112) Lossy Image Compression Ratio – ...и во сколько раз
И т. д.
! Группа 0038 – график осмотра
! Группа 0040 – как был получен снимок
! Группы 2000, 2010 – как печатался снимок
! Группы 50XX – аннотации (надписи на снимках, звук)
! Группы 60XX – наложенные изображения (overlays)
! Группа 7FE0 – пиксели изображения
! Всего около 1700 стандартных терминов, но порядка
100 в обычном DICOM-снимке
Часть 3: Объектный мир DICOM-сети
! DICOM объекты бывают двух типов: команды
(command) и данные (data).
! Пример - печать на принтере:
Объект 1: Объект 2:
Компьютер Включен? Принтер
Да
Тогда печатай [Link]
[Link]
Печатаю...
Напечатал !
Command Object = DO комманды
! DICOM Command Object – «язык» DICOM-сетей:
Command Object Data Object (если надо)
Command Data
Element Element
! Пример:
Command
Data Object
Object
Напечатать КТ снимок КТ снимок
Прекратить печать (без данных)
Как строится DICOM-сеть
! DICOM Application Entity (AE) – любое DICOM-
совместимое устройство (КТ, МР, рабочая станция)
! Каждая AE предлагает набор DICOM-услуг, в форме
Command Objects, применяемых к Data Objects.
! Если две AE предлагают совместимые услуги, то они
готовы общаться друг с другом. Пример
совместимости: тип (КТ, МР,...) и формат (сжатие,
глубина цвета,...) изображений.
! Проверка совместимости АЕ – первый шаг в любом
типе DICOM-связи.
DICOM сеть – диалог между АЕ
АЕ1 – АЕ2 –
«модальность» «архив»
Обмен КТ-снимками
»
ст
ли
ч ий
а бо
«Р
АЕ3 –
«рабочее место»
Базовые команды DICOM-сети
! Основные услуги (команды):
" Echo – проверяет наличие DICOM-связи между двумя АЕ
" Store - сохраняет DICOM-объекты на указанном AE
" Find - ищет DICOM-объекты на указанном AE
" Get - извлекает DICOM-объекты с указанного AE
" Move - копирует DICOM-объекты с AE1 на AE2
! Каждая команда существует в варианте «запрос» (request) и
«ответ» (response)
! Этих примитивов уже достаточно для построения базовой сети,
но есть и другие команды
! Запросы, как правило, отправляет «клиент» (Service Class User,
SCU), а отвечает на них «сервер» (Service Class Provider, SCP).
! Клиент и сервер образуют объектную пару (Service Object Pair,
SOP).
Пример DICOM-сети, детальнее
АЕ1 – АЕ2 –
«модальность» «архив»
CT Store Request
CT Store Response …
t
eq ues se…
R on
Get es p
CT t R
Ge
CT
АЕ3 –
«рабочее место»
Еще пример: загрузка DICOM-снимков
Станция A Станция Б
Move - запрос
Store - запрос
Store - ответ
Move - ответ
PACS
! Picture Archiving and Communication System – по
сути, DICOM-сети
! Базируются на локальных TCP/IP сетях (LAN)
! Объединяют в себе DICOM-совместимые
модальности, цифровой архив (БД), рабочие станции
! Главные цели:
" Надежное получение, хранение, рассылка и архивирование
цифровых медицинских снимков
" Быстрый и качественный их показ
Итак...
Так что же все-таки дает DICOM медицине?
! Стандарт!
! Адекватное и предельно полное
представление медицинской информации
! Универсальный способ описания
функциональности медицинских устройств
Часть 4, развлекательная: Как
распознать хорошую DICOM-программу
! Максимум внимания – изображению
! Качество показа
! Стандартные медицинские «инструменты»
просмотра, и ничего лишнего
! Терпимость к вариациям в DICOM
! Возможность работы с многими снимками в
разнообразных раскладках
! Ориентированность на диагноз, медицинская
информативность
Итог
! У DICOM нет альтернатив, и не предвидится
! DICOM-несовместимые устройства отмирают
! Стандарт бесплатен и доступен для изучения
! Волна дешевых DICOM-программ и систем:
не все то золото...