Модуль DICOM – надежный помощник в медицинском центре | Шахты

Модуль DICOM – надежный помощник в медицинском центре | Шахты Сертификаты

Почему все не так просто

Наша команда провела исследование, в ходе которого мы накидали возможные высокоуровневые дизайн-решения (т.е. того, как поддержка DICOM форматов может быть реализована в существующей экосистеме CVAT) и столкнулись с двумя трудностями, которые в совокупности являются существенным препятствием для дальнейшей работы.

Первая проблема заключается в том, что DICOM стандарт подразумевает огромную вариативность .dcm файлов. Например, стандарт подразумевает существование 79 DICOM модальностей, которые определяют контент DICOM файла (CT – компьютерная томография, CR – компьютерная рентгенография, LEN – линзометрия, MR – магнитно-резонансная томография и т.д.).

Кроме того, DICOM стандарт определяет огромное количество разных атрибутов или тегов, некоторые универсальные, другие зависящие от модальности. Файлы также могут включать одно изображение или несколько (слайс), или несколько слайсов. Данные в этих изображениях, часто не интерпретируются как пиксели, а могут определять, например, физические значения измерений, произведенных тем или иным оборудованием.

Здесь мы плавно подходим ко второй проблеме. Обычно процесс разработки новых функций в CVAT основывается на том, что необходимо нашим пользователям в первую очередь. Например, значительная часть разработанных функций была добавлена с целью удовлетворения требований внутренней команды разметки, которая занималась подготовкой данных для обучения многих моделей в OpenVINO Model Zoo – зоопарке точных и высоко-оптимизированных моделей глубокого обучения.

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

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

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

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 полученной серии. Выглядит это так:

Dicom-viewer как dicom-клиент

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

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

Далее изображения выбранной серии можно загрузить, используя команды С-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).

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

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

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

Ссылка на Viewer:DICOM Viewer x86DICOM Viewer x64

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

Radiant dicom viewer – лицензия, русская версия, цена – на

RadiAnt DICOM Viewer – просмотрщик изображений формата DICOM-PACS. Данный формат, как правило, используются в медицинских учреждениях для хранения результатов рентгена, УЗИ и других исследований. Помимо самих снимков подобные файлы также позволяют хранить пояснительные документы, измерения, пометки и численные обозначения. Вся эта информация вряд ли будет понятна людям, которые не имеют специализированных знаний в области медицины, так что для них RadiAnt DICOM Viewer не несет абсолютно никакой пользы.

Программа предлагает сразу несколько режимов просмотра изображений и даже позволяет вносить некоторые “косметические” изменения. Так, например, “просмотрщик” может отобразить снимок в негативе, раскрыть его на полный экран и добавить до двадцати изображений для визуального сравнения. Программа автоматически ассоциирует с собой поддерживаемые форматы, позволяя открывать их двойным кликом. Также доступ к изображениям можно получить традиционным способом: нажав на клавишу “Открыть” и указав путь к самому файлу или архиву, в котором он содержится (программа умеет распаковывать ZIP).

Для более комфортного просмотра DICOM-файлов в программе реализованы функции плавного масштабирования, панель с настройками параметров цвета, клавиши поворота изображения и ползунок для настройки длины просматриваемого сегмента. Также из особенно полезных возможностей RadiAnt DICOM Viewer стоит выделить добавление аннотаций и экспорт снимка в более привычные форматы JPEG/BMP. Обратите внимание, что при использовании второй функции экспортируется исключительно графическая информация без обозначений и пометок.

§

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

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

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

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

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

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

Сегментация реализуется с помощью

. Полагается, что анатомия замкнутая в том смысле, что она не контактирует с другими органами и внешним пространством.

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


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

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

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

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

Под вырезанием следует понимать зануление вокселей в 3D-моделе, попавших в область многоугольника.

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

Линейка в 3d

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

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

Модуль dicom – надежный помощник в медицинском центре | шахты

Медицинские центры получили возможность поднять эффективность своей работы благодаря новому программному модулю от «Первого БИТа».

Модуль DICOM, предназначенный для совместного использования с решениями БИТ.Стоматология и БИТ.Управление медицинским центром, обеспечивает удобное и надежное взаимодействие с медицинским оборудованием, работающим по протоколу DICOM. Управление оборудованием и получение результатов исследований выполняется теперь непосредственно из автоматизированных систем. Полученная информация автоматически импортируется в медицинскую карту пациента. Это помогает специалистам экономить время на перенос данных и избавляет от ошибок и неточностей, связанных с человеческим фактором.

Про сертификаты:  GARD 6500 Classico комплект шлагбаума Came – купить по лучшей цене в городе

В списке поддерживаемого оборудования – рентген-аппараты, сканеры МРТ, аппаратура для ультразвуковых исследований и другая медицинская техника, совместимая с протоколом DICOM.

Функционал модуля DICOM позволяет автоматизировать операции:

  • Формирование задач для медицинского оборудования, поддерживающего протокол DICOM;
  • Получение результатов анализов и исследований в текстовом или графическом виде;
  • Импорт результатов в медицинскую карту клиента;
  • Хранение, систематизация и поиск результатов исследований, а также передача этих сведений на другие рабочие места.

Для использования модуля в БИТ.Стоматология, а также в основной версии БИТ.Управление медицинским центром, необходимо приобрести лицензию на модуль.

Пользователи БИТ.Управление медицинским центром КОРП получают модуль DICOM в составе программного продукта. Отдельная лицензия на модуль в этом случае не требуется.

Узнавайте подробную информацию о модуле DICOM у своего менеджера «Первого БИТа».

«Первый БИТ» – мы работаем, чтобы вы оставались Первыми!

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

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

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

Зелёным — аксиальная плоскость (слева вверху);

Красным — фронтальная плоскость (справа вверху);

Синим — сагиттальная плоскость (слева внизу);


Жёлтым — произвольная плоскость (справа внизу).

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

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

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

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

Немного истории

Однажды, после новогодних праздников один из таких пользователей обратился к нам с запросом: может ли CVAT работать с данными, представленными в формате медицинских изображений? Один из наиболее популярных форматов для хранения медицинских данных — это .dcm файлы, внутренний формат которых специфицирован стандартом Digital Imaging and COmmunication in Medicine (DICOM).

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

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

С тех пор мы начали задумываться о том, что стоит научить CVAT работать с этим форматом и предоставить удобный интерфейс для разметки такого рода данных. Ведь, с одной стороны, доля медицины в ИИ, достаточно высока, а значит есть и спрос на подобного рода функциональность (особенно после начавшейся пандемии COVID 19).

С другой стороны, на существующем рынке нами не было найдено многофункциональных (в сравнении c CVAT) и доступных решений, в особенности с открытым исходным кодом, для разметки DICOM датасетов. Есть достаточно хорошие решения, которые в основном предоставляют функциональность для обработки, хранения, управления и просмотра DICOM данных (pydicom, cornerstonejs, orthanc-server), простые аннотационные инструменты (md.ai), и комплексные решения с хорошим функционалом для разметки данных, но они являются коммерческими, с ограниченным функционалом в бесплатных версиях (medseg.ai).

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

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

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


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

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

Про сертификаты:  Сертификат на компьютеры | Декларация на компьютеры

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

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

Однако вместе с венами и сосудами на снимках видны ткани других органов, например, черепа. Режим

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


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

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

Система просмотра экг (waveform)

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

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

Совмещение нескольких томографических серий в 3d (fusion pet-ct)

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

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

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

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

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

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

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

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

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

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

Тем не менее, это возможно

Статья не оправдала бы свое название, если бы закончилась на предыдущем абзаце. Несмотря на указанные проблемы, мы подготовили небольшое, «быстрое» решение проблемы разметки DICOM файлов в CVAT. Решение, конечно, не является самым удобным, но по крайней мере для самых простых случаев использования оно может оказаться применимым.

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

Интерфейс командной строки для конвертации располагается в репозитории CVAT по ссылке. Скрипт доступен начиная с релиза 1.4. Набор команд ниже был протестирован на ОС Ubuntu 20.04, но действия по большей части простые и легко выполнимы в ОС Windows или других с помощью графического пользовательского интерфейса.

Для корректной работы команд, описанных ниже подразумевается, что в системе установлен ряд инструментов. Чтобы установить их в Ubuntu, вы можете воспользоваться следующей командой:

sudo apt install curl zip unzip python3 python3-pip python3-venv git

Первый шаг – склонировать репозиторий, если вы этого еще не сделали:

Оцените статью
Мой сертификат
Добавить комментарий