что такое изображение dicom

Файлы формата DICOM (Photoshop Extended)

Видеоролик о файлах DICOM см. по адресу www.adobe.com/go/vid0028_ru.

Стандарт DICOM (сокращенное название Digital Imaging and Communications in Medicine (формирование, передача и хранение медицинских изображений)) является наиболее распространенным стандартом данных медицинских сканирований. Photoshop Extended позволяет открывать файлы стандарта DICOM (с расширением DC3, DCM, DIC или без расширения) и работать с ними. Файлы DICOM могут содержать несколько «фрагментов» или кадров, которые соответствуют различным слоям изображения.

Photoshop считывает все кадры из файла стандарта DICOM и преобразует их в слои Photoshop. Photoshop также способен располагать все кадры в формате DICOM в сетке одного слоя или преобразовывать их в 3D-объем, который можно вращать в 3D-пространстве. Программа Photoshop может считывать 8‑, 10‑, 12‑ или 16‑битные файлы DICOM. Программа Photoshop преобразует 10‑ и 12‑битные файлы в 16‑битные файлы.

После открытия файла стандарта DICOM в программе Photoshop можно использовать любой инструмент Photoshop для настройки изображения, нанесения меток или добавления аннотации к файлу. Например, для добавления комментария к файлу используйте инструмент «Комментарий», для пометки определенной области изображения используйте инструмент «Карандаш», для удаления с изображения пыли и царапин используйте фильтр «Пыль и царапины». Для измерения содержимого изображения используйте «Линейку» или инструменты выделения.

Каждая шкала изменений, присутствующая в файле DICOM, автоматически импортируется вместе с файлом. Если шкала отсутствует, то добавляется пользовательская шкала с масштабом по умолчанию (1 пиксель = 1 мм). См. раздел «Настройка масштаба измерений (Photoshop Extended)».

8-битные файлы DICOM можно сохранять в файл с любым форматом, поддерживаемым Photoshop (16-битные файлы должны сохраняться в файлах формата DICOM, Large Document Format, Photoshop, Photoshop PDF, Photoshop Raw, PNG или TIFF).

При сохранении файла в формате DICOM все стили слоев, настройки, режимы наложения и маски сохранены не будут.

Открытие файла DICOM (Photoshop Extended)

Перед открытием файла формата DICOM необходимо задать вариант открытия кадров DICOM (в качестве слоев, в сетке, как 3D-объем), а также установить параметры (в диалоговом окне «Импорт файла формата DICOM»), сделав анонимными метаданные пациента и отобразив перекрытия. Во время импорта можно выполнять панорамирование, увеличение, а также регулировать окна.

Диалоговое окно импорта файлов формата DICOM также содержит заголовки DICOM — текстовую информацию о файле (размеры, данные о разрешении и сведения о сжатии данных).

С помощью команды «Новый видеослой из файла» можно импортировать последовательность из нескольких однокадровых файлов формата DICOM в один файл Photoshop с несколькими слоями. См. раздел «Импорт последовательностей изображений (Photoshop Extended)».

Источник

Файлы формата DICOM

Важно! что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

3D-функции Photoshop будут удалены в будущих обновлениях. Пользователям, работающим с 3D-функциями, рекомендуется ознакомиться с новой коллекцией Adobe Substance 3D, которая представляет собой новое поколение 3D-инструментов от Adobe.

Дополнительную информацию о прекращении поддержки 3D-функций Photoshop можно найти здесь: Photoshop 3D | Распространенные вопросы об упраздненных 3D-функциях.

В Photoshop CS6 функциональные возможности 3D были доступны в Photoshop Extended. Все возможности Photoshop Extended доступны в Photoshop. Photoshop не имеет специальной версии Extended.

Сведения о файлах формата DICOM

Стандарт DICOM (сокращенное название Digital Imaging and Communications in Medicine (формирование, передача и хранение медицинских изображений)) является наиболее распространенным стандартом данных медицинских сканирований. Photoshop позволяет открывать файлы стандарта DICOM (с расширением DC3, DCM, DIC или без расширения) и работать с ними. Файлы DICOM могут содержать несколько «фрагментов» или кадров, которые соответствуют различным слоям изображения.

Photoshop считывает все кадры из файла стандарта DICOM и преобразует их в слои Photoshop. Photoshop также способен располагать все кадры в формате DICOM в сетке одного слоя или преобразовывать их в 3D-объем, который можно вращать в 3D-пространстве. Программа Photoshop может считывать 8‑, 10‑, 12‑ или 16‑битные файлы DICOM. Программа Photoshop преобразует 10‑ и 12‑битные файлы в 16‑битные файлы.

После открытия файла стандарта DICOM в программе Photoshop можно использовать любой инструмент Photoshop для настройки изображения, нанесения меток или добавления аннотации к файлу. Например, для добавления комментария к файлу используйте инструмент «Комментарий», для пометки определенной области изображения используйте инструмент «Карандаш», для удаления с изображения пыли и царапин используйте фильтр «Пыль и царапины». Для измерения содержимого изображения используйте «Линейку» или инструменты выделения.

Каждая шкала изменений, присутствующая в файле DICOM, автоматически импортируется вместе с файлом. Если шкала отсутствует, то добавляется пользовательская шкала с масштабом по умолчанию (1 пиксель = 1 мм). См. раздел Задание шкалы измерений.

8-битные файлы DICOM можно сохранять в файл с любым форматом, поддерживаемым Photoshop (16‑битные файлы должны сохраняться в файлах формата DICOM, Large Document Format, Photoshop, Photoshop PDF, Photoshop Raw, PNG или TIFF).

При сохранении файла в формате DICOM все стили слоев, настройки, режимы наложения и маски сохранены не будут.

Открытие файла DICOM

Перед открытием файла формата DICOM необходимо задать вариант открытия кадров DICOM (в качестве слоев, в сетке, как 3D-объем), а также установить параметры (в диалоговом окне «Импорт файла формата DICOM»), сделав анонимными метаданные пациента и отобразив перекрытия. Во время импорта можно выполнять панорамирование, увеличение, а также регулировать окна.

Диалоговое окно импорта файлов формата DICOM также содержит заголовки DICOM — текстовую информацию о файле (размеры, данные о разрешении и сведения о сжатии данных).

С помощью команды «Новый видеослой из файла» можно импортировать последовательность из нескольких однокадровых файлов формата DICOM в один файл Photoshop с несколькими слоями. См. раздел Импорт последовательностей изображений.

Источник

DICOM Viewer изнутри. Функциональные возможности

Добрый день, хабрасообщество. Мне хотелось бы продолжить рассмотрение аспектов реализации DICOM Viewer’а, и сегодня речь пойдёт о функциональных возможностях.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Инструментарий в 2D

Мультипланарная реконструкция (MPR)

Мультипланарная реконструкция позволяет создавать изображения из оригинальной плоскости в аксиальную, фронтальную, сагиттальную или произвольную плоскости. Для того чтобы построить MPR, необходимо построить объёмную 3D-модель и «разрезать» её в нужных плоскостях. Как правило, наилучшее качество MPR получается при компьютерной томографии(КТ), потому что в случае КТ можно создать 3D модель с разрешением, одинаковым во всех плоскостях. Поэтому выходное MPR получается с таким же разрешением, какое было у исходных изображений, полученных из КТ. Хотя бывают и МРТ с хорошим разрешением. Вот пример мультипланарной реконструкции:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Зелёным — аксиальная плоскость (слева вверху);
Красным — фронтальная плоскость (справа вверху);
Синим — сагиттальная плоскость (слева внизу);
Жёлтым — произвольная плоскость (справа внизу).

Положение правого нижнего снимка определяется жёлтой линией на виде сбоку (левый верхний). Это и есть изображение, полученное «разрезанием» 3D-модели наклонной плоскостью. Для получения значения плотности в конкретной точки плоскости используется трилинейная интерполяция.

Мультипланарная реконструкция по произвольной кривой (curved MPR)

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

То же самое, что и MPR, только вместо произвольной плоскости можно взять кривую, как показано на рисунке. Используется, например, в стоматологии для панорамного снимка зубов.

Каждая точка на кривой задаёт исходную точку трассировки, а нормаль к кривой в этой точке соответствует направлению оси Y в двухмерном изображении для этой точки. Оси X изображения соответствует сама кривая. То есть в каждой точке двухмерного изображения направление оси X – это касательная к кривой в соответствующей точке на кривой.

Проекция минимальной/средней/максимальной интенсивности (MIP)

Значения минимальной интенсивности показывают мягкие ткани. Тогда как значения максимальной интенсивности соответствуют наиболее ярким участкам трёхмерного объекта — это либо наиболее плотные ткани, либо органы, насыщенные контрастным веществом. Минимальное/среднее/максимальное значение интенсивности берётся в диапазоне (как показано на рисунке пунктирными линиями). Минимальное значение по всей модели будет принимать воздух.

Алгоритм вычисления MIP очень простой: выбираем плоскость на 3D модели — пусть будет плоскость XY. Потом проходим по оси Z и выбираем максимальное значение интенсивности на заданном диапазоне и отображаем его на 2D плоскости:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Изображение, полученное путём проекции средней интенсивности, близко к обычному рентгеновскому снимку:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Некоторые виды радиологических исследований не дают должного эффекта без использования контрастного препарата, поскольку не отражают некоторые виды тканей и органов. Это связано с тем, что в организме человека есть ткани, плотность которых примерно одинакова. Чтобы отличать такие ткани друг от друга, используют контрастное вещество, которое придаёт крови большую интенсивность. Также контрастное вещество используется для визуализации сосудов при ангиографии.

Режим DSA для ангиографии

Ангиография — это приём, позволяющий визуализировать системы кровотоков (вены и сосуды) различных органов. Для этого используется контрастное вещество, которое вводят в исследуемый орган, и рентгеновский аппарат, создающий снимки во время ввода контрастного вещества. Таким образом на выходе аппарата получается набор снимков с разной степенью визуализации кровотоков:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Однако вместе с венами и сосудами на снимках видны ткани других органов, например, черепа. Режим DSA (Digital subtraction angiography) позволяет визуализировать только кровотоки без каких-либо других тканей. Как это работает? Берём изображение серии, в котором кровотоки ещё не визуализированы контрастным веществом. Как правило, это первое изображение серии, так называемая маска:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Затем вычитаем это изображение из всех остальных изображений серии. Получаем следующее изображение:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

На этом изображении хорошо видны кровотоки и практически не видны другие ткани, что позволяет проводить более точную диагностику.

Инструментарий в 3D

Инструмент куб видимости (Clipping Box)

Инструмент Clipping Box позволяет увидеть кости и анатомические ткани в разрезе, а также показать внутренние органы изнутри. Инструмент реализуется на уровне рендера, просто ограничивая область рейтрейсинга.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В реализации область рейтрейсинга ограничивается плоскостями с нормалями, направленными в сторону отсечения. То есть куб представляется шестью плоскостями.

Инструментарий редактирования объема — вырезание многоугольником

Инструмент похож на предыдущий и позволяет удалять фрагмент объёма под произвольным многоугольником:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Под вырезанием следует понимать зануление вокселей в 3D-моделе, попавших в область многоугольника.
Также есть инструмент «Ножницы», который позволяют удалять части 3D-модели по принципу связности. Реализация: при выделении объекта происходит циклический поиск близлежащих связных вокселей, пока все близлежащие воксели не будут просмотрены. Затем все просмотренные воксели удаляются.

Линейка в 3D

В 3D можно производить измерения органов под любым углом, что невозможно для некоторых случаех в 2D.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В режиме 3D можно также воспользоваться полигональной линейкой:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Инструментарий в 4D

Совмещение нескольких томографических серий в 3D (Fusion PET-CT)

ПЭТ-КТ (англ. PET-CT) относительно новая технология, являющаяся исследовательским методом ядерной медицины. Является методом мультимодальной томографии. Четвёртым измерением в данном случае является модальность (PET и CT). Предназначена в основном для обнаружения раковых опухолей.

CT помогает получить анатомическую структуру человеческого тела:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

а PET показывает определённые области концентрации радиоактивного вещества, которая напрямую связана с интенсивностью кровоснабжения данной области.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

PET получает картину биохимической активности, детектируя в теле человека радиоактивные изотопы. Радиоактивное вещество скапливается в органах, насыщенных кровью. Затем радиоактивное вещество претерпевает позитронный бета-распад. Образовавшиеся позитроны в дальнейшем аннигилирует с электронами из окружающей ткани, в результате чего происходит излучение пар гамма-лучей, которые и детектируются аппаратом, и затем на основе полученной информации строится 3D изображение.

Выбор радиоактивного изотопа определяет биологический процесс, который желают отследить в процессе исследования. Процессом может быть метаболизм, транспорт веществ и др. Поведение процесса в свою очередь является ключом к верной диагностике заболевания. На изображении выше у пациента в области печени видна опухоль.

Но основываясь на PET трудно понять, в какой части тела находится область с максимальной концентрацией радиоактивного вещества. При соединении геометрии тела (CT) и областей, насыщенных кровью с высокой концентрацией радиоактивного вещества (PET), получаем:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В качестве радиоактивного вещества для PET применяются радиоактивные изотопы с разными периодами полураспада. Для образования всякого рода злокачественных образований используется фтор-18 (фтордезоксиглюкоза), йод-124 используется для диагностирования рака щитовидной железы, галлий-68 — для обнаружения нейроэндокринных опухолей.

Функционал Fusion формирует новую серию, в которой изображения обоих модальностей (и PET и CT) объединены. В реализации изображения обоих модальностей перемешиваются, а затем сортируются по оси Z (считаем, что X и Y – оси изображения). Фактически получается, что изображения в серии чередуются (PET, CT, PET, CT …). Эта серия в дальнейшем используется для отрисовки 2D fusion и 3D fusion. В случае 2D fusion изображения отрисовываются попарно(PET-CT) в порядке возрастания Z:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В данном случае сначала был отрисовано изображение CT, затем PET.

3D fusion реализован для видеокарты на CUDA. На видеокарте отрисовываются одновременно обе 3D-модели — PET и CT и получается реальный мультимодальный fusion. На процессоре fusion тоже работает, но работает несколько иначе. Дело в том, что на процессоре обе модели представлены в памяти как отдельные окто-деревья. Следовательно, при отрисовке необходимо трассировать два дерева и синхронизировать пропуск прозрачных вокселей. А это бы значительно снизило скорость работы. Поэтому было решено просто накладывать результат рендера одной 3D-модели поверх другой.

4D CardiacCT

Технология Cardiac CT используется для диагностики различных нарушений работы сердца, включая коронарную болезнь сердца, тромбоэмболия легочной артерии и другие заболевания.

4D Cardiac CT представляет собой 3D во времени. Т.е. получается небольшое видео, которое будем называть кинопетлёй, в которой каждый кадр будет представлять собой 3D-объект. Исходные данные представляют собой набор dicom-изображений сразу для всех кадров кинопетли. Для того чтобы преобразовать набор изображений в кинопетлю, необходимо сначала сгруппировать исходные изображения по кадрам, а затем для каждого кадра создать 3D. Построение 3D-объекта на уровне кадра происходит так же как и для любой серии dicom-изображений. Мы используем эвристическую сортировку изображений для группировки по кадрам, используя положение изображения на оси Z (считая что X и Y это оси изображения). Полагаем, что после группировки по кадрам, в каждом кадре получается одинаковое количество изображений. Переключение кадра фактически сводится к переключение 3D-модели.

5D Fusion Pet – CardiacCT

5D Fusion Pet – CardiacCT — это 4D Cardiac CT с добавлением fusion с PET в качестве пятой размерности. В реализации сначала создаём две кинопетли: с CardiacCT и с PET. Затем делаем fuision соответствующих кадров кинопетель, что даёт нам отдельную серию. Затем строим 3D полученной серии. Выглядит это так:

Виртуальная эндоскопия

В качестве примера виртуальной эндоскопии будем рассматривать виртуальную колоноскопию, поскольку она является наиболее распространённым видом виртуальной эндоскопии. Виртуальная колоноскопия позволяет на основе данных КТ построить объёмную реконструкцию области брюшной полости и по этой трёхмерной реконструкции произвести диагностику. Во вьюере есть инструмент полёт камеры (fly-through) с навигацией по MPR:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

который в том числе позволяет автоматически следовать анатомической структуре. В частности позволяет просматривать внутрикишечную область в автоматическом режиме. Вот как это выглядит:

Полёт камеры представляет серию последовательных перемещений по внутрикишечной области. Для каждого шага вычисляется вектор перемещения камеры в следующую часть анатомической структуры. Вычисление производится на основе прозрачных вокселей в следующей части анатомической структуры. Фактически вычисляется некий средний воксель среди прозрачных. Начальный вектор перемещения задаётся вектором камеры. В инструменте Полёт камеры используется исключительно перспективная проекция.

Также есть функционал для автоматической сегментации кишечника, т.е. функционал для отделения кишечной области от остальной анатомии:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Возможна также навигация по сегментированной 3D-модели (кнопка Show camera orientation), которая по клику мыши на 3D-моделе перемещает камеру на соответствующую позицию в исходной анатомии.
Сегментация реализуется с помощью волнового алгоритма. Полагается, что анатомия замкнутая в том смысле, что она не контактирует с другими органами и внешним пространством.

Система просмотра ЭКГ (Waveform)

Отдельным модулем во viewer’е реализовано чтение данных из Waveform и их отрисовка. DICOM ECG Waveform это специальный формат хранение данных отведений электрокардиограмм, определяемый стандартом DICOM. Данные электрокардиограммы представляют собой двенадцать отведений — 3 стандартных, 3 усиленных и 6 грудных. Данные каждого отведения представляют собой последовательность измерений электрического напряжения на поверхности тела. Для того чтобы отрисовать напряжения, нужно знать масштаб по вертикали в мм/мВ и масштаб по горизонтали в мм/сек:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В качестве вспомогательных атрибутов также отрисовывается сетка для простоты измерения расстояний и масштаб в левом верхнем углу. Варианты масштаба подобраны с учётом врачебной практики: по вертикали — 10 и 20 мм/мВ, по горизонтали — 25 и 50 мм/сек. Также реализованы инструменты для измерения расстояния по горизонтали и вертикали.

DICOM-Viewer как DICOM-клиент

DICOM-Viewer, помимо прочего, представляет собой полноценный DICOM-клиент. Есть возможность производить поиск на PACS-сервере, получать из него данные и др. Функции DICOM-клиента реализованы с помощью открытой библиотеки DCMTK. Рассмотрим типичный use-case работы DICOM-клиента на примере viewer’а. Производим поиск стадий на удалённом PACS-сервере:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

При выборе стадии внизу отображаются серии для выбранной стадии и количество изображений в них. Сверху справа указывается PACS-сервер, на котором будет произведён поиск. Поиск можно параметризовать, уточняя критерии поиска: PID, дата исследования, имя пациента и др. Поиск на клиенте реализуется командой C-FIND SCU с помощью библиотеки DCMTK, которая работает на одном из уровней: STUDY, SERIES и IMAGE.

Далее изображения выбранной серии можно загрузить, используя команды С-GET-SCU и C-MOVE-SCU. Протокол DICOM обязывает стороны соединения, т.е. клиента и сервера, заранее договориться, какие типы данных они собираются передавать через это соединение. Под типом данных понимается комбинация значений параметров SOPClassUID и TransferSyntax. SOPClassUID определяет тип операции, которую планируется выполнять через данное соединение. Наиболее часто используемые SOPClassUID’ы: Verification SOP Class (пинг сервера), Storage Service Class (сохранение изображений), Printer Sop Class (выполнение печати на DICOM-принтере), CT Image Storage (сохранение изображений КТ), MR Image Storage (сохранение изображение МРТ) и другие. TransferSyntax определяет формат бинарного файла. Популярные TransferSyntax’ы: Little Endian Explicit, Big Endian Implicit, JPEG Lossless Nonhierarchical (Processes 14). То есть, чтобы передать МРТ изображения в формате Little Endian Implicit, то в соединение необходимо добавить пару MR Image Storage — Little Endian Explicit.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Загруженные изображения сохраняются в локальное хранилище и, при повторном просмотре, загружаются из него, что позволяет увеличить производительность viewer’а. Сохранённые серии помечаются жёлтым значком в верхнем левом углу первого изображения серии.

Также DicomViewer как DICOM-клиент умеет записывать диски с исследованиями в формате DICOMDIR. Формат DICOMDIR реализуется в виде бинарного файла, который содержит относительные пути ко всем DICOM-файлам, которые записываются на диск. Реализуется с помощью библиотеки DCMTK. При чтении диска считываются пути ко всем файлам из DICOMDIR и после этого загружаются. Для добавления в DICOMDIR стадий и серий был разработан такой интерфейс:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Вот и всё, что я хотел рассказать про функционал DicomViewer’а. Как всегда очень приветствуется обратная связь от квалифицированных специалистов.

Примеры данных:
MANIX — для общих примеров (MPR, 2D, 3D и т.д.)
COLONIX — для виртуальной колоноскопии
FIVIX — 4D CARDIAC-CT
CEREBRIX — Fusion PET-CT

Источник

DICOM Viewer изнутри. Воксельный рендер

Добрый день, уважаемое хабра-сообщество!

Сегодня мне бы хотелось пролить свет на одну из самых неосвещённых тематик на хабре. Речь пойдёт о визуализаторе медицинских радиологических изображений или DICOM Viewer’е. Планируется написать несколько статей, в которых поговорим об основных возможностях DICOM Viewer’а — в том числе возможности воксельного рендера, 3D, 4D, рассмотрим его устройство, поддержку протокола DICOM и др. В этой статье я расскажу о воксельном рендере и его устройстве. Всем заинтересовавшимся добро пожаловать под кат.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Компания, в которой я работаю, имеет большой опыт в сфере разработки программного обеспечения медицинской направленности. С некоторыми проектами мне довелось работать, поэтому хотелось поделиться накопленным опытом в этой области и показать, что у нас получилось. Также хотелось бы воспользоваться случаем и получить обратную связь от врачей-ренгенологов по использованию Viewer’а.

Одним из наших продуктов является DICOM Viewer — просмотрщик медицинских изображений формата DICOM. Он умеет рендерить 2D изображения, строить 3D модели на основе 2D слайсов, а также поддерживает операции как для 2D изображений, так и для 3D моделей. Об операциях и возможностях Viewer’а я напишу в следующей статье. В конце статьи будут указаны ссылки на сам DICOM Viewer с полным функционалом, который описан в статье и на данные для проб. Но всё по порядку.

Представление изображений в медицине

Чтобы представлять как построить 3D-модель, например, головного мозга, из 2D DICOM-файлов, нужно понимать как представлены изображения в медицине. Начнём с того, что все современные томографы (МРТ, КТ, ПЭТ) не производят готовых изображений. Вместо этого формируется файл в специальном формате DICOM, который содержит информацию о пациенте, исследовании, а также информацию для отрисовки изображения. Фактически каждый файл представляет срез (slice) произвольной части тела, в какой-либо плоскости, чаще всего в горизонтальной. Так вот каждый такой DICOM-файл содержит информацию об интенсивности или плотности тканей в конкретном срезе, на основе которой строится итоговое изображение. На самом деле интенсивность и плотность — это разные понятия. Компьютерная томография сохраняет в файлах рентгеновскую плотность, которая зависит от физической плотности тканей. Кости имеют большую физическую плотность, кровь меньшую и т.д. А магнитно-резонансный томограф сохраняет интенсивность обратного сигнала. Мы же будем применять термин плотности, обобщая таким образом выше описанные понятия.

Информацию о плотности в DICOM-файле можно представить в виде обычного изображения, у которого есть разрешение, размер пикселя, формат и другие данные. Только вместо информации о цвете в пикселе храниться информация о плотности тканей.

Диагностическая станция производит не один файл, а сразу несколько для одного исследования. Эти фалы имеют логическую структуру. Файлы объединяются в серии и представляют собой набор последовательных срезов какого-либо органа. Серии объединяются в стадии. Стадия определяет всё исследование. Последовательность серий в стадии определяется протоколом исследования.

2D-рендер

Информация о плотности тканей в DICOM-файле является основой для его отрисовки. Чтобы отрисовать изображение нужно значениям плотности сопоставить цвет. Это делает передаточная функция, которую в нашем viewer’е можно редактировать. Кроме того есть множество готовых пресетов для отрисовки разных по плотности тканей разными цветами. Вот пример передаточной функции и результат отрисовки:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

На графике обозначены две точки белого цвета на концах белой линии, что говорит о том, что будет рисоваться только белый цвет. Линия, соединяющие точки, обозначает непрозрачность (opacity), т.е. менее плотные ткани отрисовываются более прозрачными пикселями. Таким образом белый цвет плюс соответствующее значение непрозрачности даёт градации белого, что и видно на картинке. В данном примере показана относительная передаточная функция, поэтому по оси абсцисс отложены проценты. Синим цветом на графике показано распределение плотностей тканей, где каждому значению плотности соответствует количество пикселей (вокселей), приходящихся на данную плотность.

В нашем рендере происходит отрисовка белого цвета с соответствующей прозрачностью на чёрном фоне, чёрный цвет никогда не отрисовывается. Такая схема удобна при отрисовке 3D-модели — воздух имеет небольшую плотность, следовательно отрисовывается прозрачным, поэтому при наложении слайсов через воздух наложенного изображения будет видно нижнее. К тому же, если бы цвет имел не константную характеристику, а линейную (чем характеризуется переход от чёрного цвета к белому), то при перемножении цвета на прозрачность (которая также имеет линейную характеристику) получилась бы квадратичная характеристика, которая отражала бы цвет иначе, что не является верным.

Относительная передаточная функция строится на основе так называемого окна, которое указывает какой именно диапазон плотностей нужно отрисовывать. Окно определяется параметрами Window Width (W) и Window Center (L), рекомендуемые значения которых задаются томографом и сохраняются в файлы-снимки в соответствующих DICOM-тэгах. Значения W и L могут быть изменены в любой момент. Таким образом, окно ограничивает область определения передаточной функции. В относительной передаточной функции аргументы соответствуют относительным значениям, заданным в процентах. Пример передаточной функции показан на рисунке выше со шкалой в процентах от 0 до 100.

Как в случае абсолютной, так и в случае относительной передаточной функции возможны случаи, когда передаточная функция покрывает не все плотности, содержащиеся в файле-снимке. В этом случае все плотности, которые попадают справа от передаточной функции принимают значения самого правого значения передаточной функции, а плотности слева — самого левого значения передаточной функции соответственно.
Пример абсолютной передаточной функции, в которой плотность задана в абсолютных значениях по шкале Хаунсфилда:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Вот пример более сложной передаточной линейной функции, окрашивающей плотности в несколько цветов:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Как и на предыдущем рисунке прозрачность имеет линейную характеристику. Однако для конкретных плотностей заданы цвета. Помимо цвета каждая из этих точек определяет прозрачность (в соответствии с белой линией на графике). В случае 3D-модели каждая из точек также хранит отражательные компоненты. Между конкретных точек производится интерполяция отдельно для каждой компоненты, включая прозрачность, RGB, отражательные компоненты, получая таким образом значения для остальных плотностей.

Прозрачность в передаточной функции не обязательно должна быть линейной. Она может быть любого порядка. Пример передаточной функции с произвольной прозрачностью:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Помимо прочего, на каждом 2D-изображении отрисовывается информация об изображении. В правом нижнем углу рисуется куб ориентации, по которому можно понять как расположен пациент в данном изображении. H – head (голова), F – foot(ноги), A – anterior (анфас), P – posterior(спина), L – left(левый бок), R – right(правый бок). Эти же буквы дублируются в середине каждой из сторон. В левом нижнем и правом верхнем углах для врачей-ренгенологов отображается информация о параметрах томографа, с которыми было получено данное изображение. Также справа рисуется линейка и масштаб одного деления соответственно.

Воксельный рендер

Посколько воксельный рендер является основой для нескольких наших проектов, он представлен в виде отдельной библиотеки. Она называется VVL(анг. Volume Visualization Library). Она написана на чистом С без использования каких-либо сторонних библиотек. VVL предназначена для рендеринга трёхмерных моделей, построенных из данных DICOM-сканеров (МРТ, КТ, PET). VVL использует все преимущества современных многоядерных процессоров для realtime-отрисовки, поэтому может работать на обычной машине, а также имеет реализацию на CUDA, что даёт гораздо более высокую производительность, чем на CPU. Вот пара изображений, полученного рендером на основе данных компьютерной томографии.

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

В VVL реализован весь процесс отрисовки, начиная с построения модели и заканчивая генерированием 2D изображения. Есть такие фишки как ресэмплинг, антиалиасинг, полупрозрачность.

Воксельная модель изнутри

Воксель — это элемент объёмного изображения, содержащего значение элемента в трёхмерном пространстве. В качестве значения вокселя в общем случае может выступать что угодно, включая цвет. В нашем случае в качестве значения вокселя выступает плотность. Что касается формы вокселя, то в общем случае воксели могут быть кубическими, или представлять собой параллелепипед. У нас воксели представлены в виде кубов для упрощения и удобства работы. Координат воксели не хранят, они вычисляются из относительного расположения вокселя.

По сути, воксель является полным аналогом пикселя в 3D. Pixel (англ. picture element) — элемент изображения,Voxel (англ. volume element) – элемент объёма. Практически все характеристики пикселя переносятся на воксель, поэтому можно смело проводить аналогии, учитывая размерность. Таким образом, воксели используются для представления трёхмерных объектов:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

На скриншоте можно разглядеть маленькие кубические воксели. Для хранения плотности в вокселе используется 2х байтовое число. Поэтому можно вычислить размер модели: 2 байта на плотность * количество вокселей. Некоторые воксельные рендеры, помимо сказанного, хранят в вокселе информацию для рендеринга, что требует дополнительной памяти. Практически нами было установлено, что это нецелесообразно и нужные данные выгоднее вычислять «на лету», чем хранить лишние байты.

Представление модели в памяти

Входными данными для воксельного рендера является DICOM-серия, т.е. несколько изображений, представляющих какую-либо область тела. Если изображения одной серии наложить друг на друга в той последовательности и в той плоскости, в которых они были сделаны, можно получить 3D-модель. Представить это можно как-то так:

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Поскольку протоколом DICOM чётко не декларируется, в каком тэге хранится величина расстояния между изображениями в серии, приходится вычислять расстояние между изображениями по другим данным. Так, каждое изображение имеет координаты в пространстве и ориентацию. Этих данных достаточно, чтобы определить расстояние между изображениями. Таким образом имея разрешение изображения и расстояние между ними в серии, можно определить размер вокселя. Разрешение изображения по X и Y, как правило, одинаковое, т.е. пиксель имеет квадратную форму. А вот расстояние между изображениями может отличаться от этого значения. Поэтому воксель может иметь форму произвольного параллелепипеда.

Для простоты реализации и удобства работы мы делаем ресемплинг для величины плотности, используя бикубическую фильтрацию (фильтр Митчелла), и получаем кубическую форму вокселя. В случае, если размер пикселя меньше расстояния между слайсами, то мы добавляем слайсы (supersampling), а если размер пикселя больше, то убираем слайсы (downsampling). Таким образом размер пикселя становится равным расстоянию между слайсами и мы можем построить 3D-модель с кубической формой вокселя. Проще говоря, мы подгоняем расстояние между изображениями к разрешению изображения.

Полученные воксели хранятся в структуре, представляющей собой массив, оптимизированный под доступ в произвольном направлении движения, в случае отрисовки на процессоре. Массив разбит логически на параллелепипеды, хранящиеся в памяти непрерывным куском размером

1,5кб при размере вокселя 2 байта, что позволяет поместить несколько близко расположенных параллелепипедов в кэш процессора первого уровня. Каждый параллелепипед хранит 5х9х17 вокселей. Исходя из размера такого параллелепипеда рассчитываются координаты смещений в общем массиве вокселей и сохраняются в 3 отдельные массива xOffset, yOffset, zOffset. Поэтому обращение к массиву происходит так: m[xOffest[x] + yOffset[y] + zOffset[z]]. Таким образом, начиная читать данные в параллелепипеде, мы заставляем процессор положить весь параллелепипед в кэш процессора первого уровня, что ускоряет время доступа к данным.

В случае рендеринга на GPU используется специальная трёхмерная структура в графической памяти видеокарты, называемая 3D-текстурой, доступ к вокселям в которой оптимизируется средствами видеоадаптера.

Рендеринг

Рейтрейсинг — как способ рендеринга. Перемещаемся по лучу с некоторым шагом и ищем пересечение с вокселем и на каждом шаге проводим трилинейную интерполяцию, где 8 вершин представляют середины соседних вокселей. На CPU используется окто-дерево в качестве оптимальной структуры для быстрого пропуска прозрачных вокселей. На GPU для 3D-текстуры трилинейная интерполяция выполняется автоматически средствами видеокарты. На GPU не используется окто-дерево для пропуска прозрачных пикселей, поскольку в случае 3D-текстуры иногда оказывается, что быстрее учитывать все воксели, чем тратить время на поиск и пропуск прозрачных.

В качестве модели освещения используется затенение по Фонгу, которое позволяет сделать изображение объёмным и даёт хорошую картинку и в то же время не мешает работать врачам-ренгенологам. Рейтрейсинг производится с учётом прозрачности вокселей, что позволяет рендерить полупрозрачные ткани.
Рендер поддерживает режимы перспективной

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

и параллельной проекций

что такое изображение dicom. Смотреть фото что такое изображение dicom. Смотреть картинку что такое изображение dicom. Картинка про что такое изображение dicom. Фото что такое изображение dicom

Перспективная проекция более реалистична. Более того, она необходима для виртуальной эндоскопии, о которой расскажу в следующей статье.

Как и обещал ссылки на DICOM Viewer и данные для теста.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *