Бесплатный DICOM Viewer Windows. Как открыть диск с МРТ или КТ снимками

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

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

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

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

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

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

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

2D-рендер

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

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

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

Передаточные функции разделяются по типу на абсолютные и относительные. Абсолютная передаточная функция строится для всех возможных плотностей. Для КТ это шкала Хаунсфилда (от -1000 до ~3000). Плотность равная -1000 соответствует воздуху, плотность, равная 400, соответствует костям, нулевая плотность соответствует воде. Для плотностей по шкале Хаунсфилда верно следующее утверждение: каждая плотность соответствует определённому типу ткани. Однако для МРТ это утверждение не верно, поскольку МР-томограф для каждой серии генерирует собственный набор плотностей. То есть для двух серий одна и та же плотность может соответствовать разным тканям тела. В абсолютной передаточной функции аргументы соответствуют абсолютным значениям плотности.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В качестве модели освещения используется

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

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

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

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

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

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

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

    2D-рендер

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

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

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

    Передаточные функции разделяются по типу на абсолютные и относительные. Абсолютная передаточная функция строится для всех возможных плотностей. Для КТ это шкала Хаунсфилда (от -1000 до ~3000). Плотность равная -1000 соответствует воздуху, плотность, равная 400, соответствует костям, нулевая плотность соответствует воде. Для плотностей по шкале Хаунсфилда верно следующее утверждение: каждая плотность соответствует определённому типу ткани. Однако для МРТ это утверждение не верно, поскольку МР-томограф для каждой серии генерирует собственный набор плотностей. То есть для двух серий одна и та же плотность может соответствовать разным тканям тела. В абсолютной передаточной функции аргументы соответствуют абсолютным значениям плотности.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    В качестве модели освещения используется

    Изменения в версии 1.8.6 Final

    Below you will find a list of new features:
    Multi-touch support for Windows 8 touch-enabled devices:
    Use one finger to browse images of the series (or perform other function selected from the toolbar).
    Use two fingers to pan and zoom (pinch) images.
    Use three fingers to change window settings (brightness/contrast).
    Time-Intensity Curve generation (CTRL + SHIFT + E).
    Export files in DICOM format.
    Zoom & pan synchronization.
    Window settings (WW/WL) synchronization.
    New controls for Cine mode, overlayed at the bottom of the screen when mouse hovers over image.
    Cine auto start for US and XA series.
    Edit ROIs:
    Copy selected ROI (CTRL + C)
    Copy all ROIs in displayed image (CTRL + SHIFT + C)
    Paste ROI(s) in the same or in different image (CTRL + V)
    Duplicate ROI in corresponding series (CTRL + SHIFT + D)
    Duplicate ROI in all images of the series (SHIFT + ALT + D)
    Delete ROIs in all visible images (SHIFT + DEL)
    Open quickly multiple series (F4).
    Change color scale in fusion images (click color bar).
    Change fused image opacity (left mouse button down and drag over color bar).
    Maximize/restore panel (button/double click on image/CTRL + M), you can switch between opened series in maximized panel using TAB.
    Anonimize all visible patient data (SHIFT + F12).
    Tools can be assigned to the middle mouse button (with WL/WW adjustment default).
    Open DICOM folder in RadiAnt using right-click context menu on a folder in windows explorer.
    Command line parameter -b shows expanded folder tree, lets user choose a subfolder to be scanned for DICOM files.
    New command-line parameter "-cl" closes all running instances of RadiAnt DICOM Viewer.

    Improvements and bug fixes:
    Significant reduction of CD/DVD loading times (up to 3x faster).
    Improved multiframe DICOM file reading from CD/DVD.
    Detection of CD/DVD/Flash removal.
    Toggle series preview bar visibility (CTRL+SHIFT+F4).
    Toggle toolbar and status bar visibility (CTRL+SHIFT+F3).
    Toggle ROI visibility (ALT+F12).
    Change ROI label font size (CTRL+SHIFT+PLUS/MINUS).
    Hold SHIFT during ellipse drawing to make it a circle, hold it while drawing a segment to make it horizontal or vertical.
    Hold CTRL during ellipse drawing to show actual DICOM pixels area (only when image is magnified).
    Ellipse ROI label shows actual DICOM pixels number used for calculations.
    Close all panels (SHIFT + F4).
    Click panel close button with CTRL pressed to clear the panel instead of closing it.
    Options.xml file (ProgramData/RadiAntViewer folder in Windows7) - change default options (currently only by manual editing).
    Zoom-to-region mode for zooming tool (available in options.xml).
    Off-center zooming (retains desired image region visibility during zooming - available in options.xml).
    Scroll wrapping can be disabled in options.xml file.
    Added WW/WL presets for modalities other than CT.
    Status bar shows remaining files during folder scan.
    Displayed info about lossy compression of DICOM images (left top corner, below series number).
    CTRL + C copies value to clipboard in DICOM tags window.
    Improved support for images with VOI LUT defined.
    Fixed a rare crash caused by images with "RAW" modality.
    Fixed display of certain US images (e.g. Philips US systems, GE Vivid 7).
    Fixed default cine rate setting (FPS).
    Fixed problem with opening zip files that have non-standard characters in a filename.
    Compatibility with Windows Server 2008 system was improved by removing the dependency on wmvcore.dll library.
    Other minor features and bug fixes.

    Часто возникает вопрос: если результаты МРТ или КТ выдали на диске, как посмотреть снимки? Ведь в последнее медицинские центры все чаще прибегают к выдаче снимков на CD или DVD, и это лучше, чем иметь снимки на пленке. Почему — можно . Так как же посмотреть снимки МРТ и КТ с диска, с помощью какой программы?

    О формате файлов КТ И МРТ

    Файлы КТ или МРТ исследования на диске записаны в специальном формате DICOM, и он не открывается обычными программами просмотра картинок. DICOM — это формат медицинских изображений, где в каждый файл помимо собственно картинки «вшита» другая информация — имя пациента, его возраст, номер снимка, обозначения режимов сканирования и т.п.

    Программы для открытия файлов КТ и МРТ

    Чтобы открыть снимки с CD диска, Вам понадобится специальная программа — DICOM-вьюер. Таких программ много, платных и бесплатных. Самая удобная из бесплатных программ — Radiant DICOM Viewer . Скачать ее можно . Эта программа умеет открывать совершенно любые медицинские снимки в формате DICOM, например МРТ, КТ, ПЭТ-КТ, рентген, маммографию, ангиографию и т.д.

    Чтобы открыть снимки программой Radiant , нужно скопировать все содержимое диска в папку на компьютере, затем зайти в программу, нажать в левом верхнем углу кнопку Scan folder for DICOM files и выбрать эту папку. Подробнее про работу программы можно почитать .

    Лучшая из программ для MAC-OS — это Osirix . Скачать бесплатную версию для настольного компьютера можно . Версия Osirix для iPhone и iPad продается в Apple Store или .

    Часто МРТ или КТ записывается на диск уже с программой-вьюером. В таком случае не нужно отключать автозапуск на своем компьютере, и программа просмотра запустится автоматически. К недостатку таких программ относится то, что ими, как правило, не очень удобно пользоваться. Поэтому советуем Вам все же установить Radiant .

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

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

    Шаги

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

      Если программа загрузится автоматически, следуйте инструкциям на экране. Если вам повезет, при загрузке диска программа запустится сама. Тогда вам останется только нажимать на соответствующие кнопки. Обычно в этом нет ничего сложного: "да", "нет", "применить", "отменить".

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

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

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

      Интерпретация исследования

      1. Узнайте, какими способами можно просматривать снимки. Когда МРТ загрузится, если вам повезет, вы сразу поймете, что перед вами. Однако очень часто на снимке будет лишь совершенно непонятная смесь из черного, белого и серого. Понимание того, как делается МРТ, поможет вам прочитать снимок. Есть три плоскости, в которых просматривают органы при МРТ:

        • Саггитальная . Обычно такие снимки проще всего интерпретировать. Саггитальный просмотр - это просмотр органов или тканей сбоку или в профиль. Изображение представляет собой вертикальный разрез в двусторонней симметрии.
        • Корональная . Это фронтальная плоскость. Вы рассматриваете органы человека, который словно стоит лицом к камере.
        • Поперечная . Как правило, с этой плоскостью работать непрофессионалам сложнее всего. Эта плоскость словно нарезает тело на мелкие горизонтальные полоски.
      2. Обратите внимание на контраст. МРТ - это черно-белая запись, поэтому иногда сложно понять, где находится какой орган. Поскольку здесь нет цвета, ориентироваться надо будет по контрасту. К счастью, разные ткани по-разному отображаются на снимке, поэтому вы сможете рассмотреть контраст на их стыке.

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

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

        • Линия также укажет, с какой стороны был сделан снимок. К примеру, если бы МРТ был снимком обычного предмета (к примеру, дерева), линия указала бы вам на то, откуда была направлена камера: сверху с самолета, из окна второго этажа или с земли.
      3. Перетяните линию, чтобы рассмотреть разные области на снимке. Это позволит вам перемещаться внутри изображения. Снимок будет автоматически менять проекцию.

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

      Анализ органов

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

        • Примером второго случая служит грыжа межпозвоночных дисков. Позвоночник состоит из разных позвонков, которые располагаются друг на другом. Между ними есть диск, наполненный жидкостью. Когда диск надламывается, жидкость вытекает, в результате чего образуется грыжа. Из-за давления на нервные окончания в позвоночнике появляется боль. Все это можно увидеть на МРТ позвоночника: там будет длинная цепь здоровых позвонков и один очень заметный позвонок.
      2. Изучите структуру позвонков, если вы рассматриваете МРТ позвоночника. МРТ позвоночника прочитать едва ли не проще всего остального (особенно в саггитальной проекции). Поищите нарушения в расположении позвонков или межпозвоночных дисков. Если хотя бы один будет не не своем месте (как в примере выше), это может стать источником сильной боли.

        • За позвоночником в саггитальной проекции вы увидите что-то белое, похожее на веревку. Это спинной мозг, который связан со всеми нервными окончаниями в организме. Поищите участки, где позвонки или диски прижимают спинной мозг. Поскольку нервные окончания очень чувствительные, даже небольшое давление приводит к боли.
      3. Используйте горизонтальную проекцию при просмотре МРТ мозга. МРТ тканей мозга используется для диагностики опухолей мозга, нагноений и других заболеваний мозга. Проще всего рассмотреть их в горизонтальной проекции, спускаясь сверху вниз. Ищите несимметричные участки. Светлое или темное пятно, которого нет с другой стороны, может стать причиной для беспокойства.

        Если вы просматриваете МРТ колена, ищите отличия в снимках двух коленных чашечек. Сравните снимок здорового колена в корональной проекции со снимком травмированного колена, и вы найдете проблему. МРТ колена часто делают для диагностики следующих заболеваний и травм:

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