Weasis программа для просмотра dicom


TelePACS - Dicom-сервер компании "Телеоптик"

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

подключение к удаленному серверу;

возможность загрузки для просмотра рентгеновских изображений (2D) из локальной папки и CD/DVD;

наличие удобных инструментов просмотра;

экспорт изображений на CD/DVD, в локальную папку, в т.ч. в графические форматы;

возможность Dicom-печати;

возможность печати на принтере;

корректное отображение кириллических символов в dicom-тегах.

Желательными, но не обязательными функциями являются: возможности просмотра 3D, экспорт снимков на удаленные dicom-серверы, национальная локализация интерфейса, мультиплатформенность.

Первоочередным требованием было наличие возможности подключения к dicom-серверу.

Естественно, всем также хочется максимального функционала за меньшие деньги.

В связи с такой постановкой вопроса для обзора были выбраны следующие продукты:

RadiAnt DICOM Viewer - https://www.radiantviewer.com/store/

Multivox Dicom Viewer - https://www.multivox.ru/dviewer.html

Synedra View Personal - http://www.synedra.com/viewer-download/en/

SanteDicom Viewer Pro - http://www.santesoft.com/win/sante-dicom-viewer-pro/order.html

Инобитек просмотрщик Про.1.9.0 - http://inobitec.com/downloads/dicomviewer/

Dicompass Dicom Viewer - http://www.dicompass.cz/buy/

Ginkgo CADx - http://ginkgo-cadx.com/en/

Weasis-portable v.2.6.0 - https://sourceforge.net/projects/dcm4che/files/Weasis/2.6.0/

Osirix Lite - http://www.osirix-viewer.com/osirix/osirix-md/

Horos - https://www.horosproject.org/

 

Условия тестирования.

Для тестирования использовался удаленный тестовый сервер dcm4chee, подключенный по VPN-соединению.

Для просмотра использовались как исследования из одного снимка в серии, так и серии изображений — томографических срезов. Изображения загружались с сервера, локальной (сетевой) папки, с CD/DVD.

Экспорт осуществлялся на другой сервер dcm4chee, в локальную (сетевую) папку, на CD/DVD (или образ).

Оценка удобства работы — моя, субъективная и предвзятая :) , т. к. я изначально имею свои представления об удобствах.

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

1. Подключение к dicom-серверу.

Вьюверы в первую очередь и были отобраны по этому критерию. Поэтому все вышеперечисленные продукты имеют такую функцию.

Почти все вьюверы могут подключать несколько серверов, но не все могут запрашивать список исследований сразу с нескольких. RadiAnt умеет.

 

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

 

Multivox почему-то грузил все медленнее, чем другие. Даже не медленнее, а просто долго, очень долго. Особенно серии. В интерфейсе нет кнопки быстрого вызова окна запроса. Из локального хранилища есть, из папки есть, а из сервера нет

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

Dicompass почему-то при каждом запуске выводит предупреждение, что не может соединиться с сервером и предлагает загрузиться в standalone режиме. При этом после загрузки соединяется с сервером без проблем. Удобная форма для запроса списка исследований. В рабочем наборе снимков не отображаются эскизы, неудобно выбирать для переноса в окно просмотра, непонятно что.

 

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

 

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

В Weasis также можно настроить несколько вызывающих AetTitle и при обращении к каждому серверу выбирать, тот, который с ним работает. Тоже не мешало бы кнопку быстрого доступа к серверам вывести на панель инструментов из меню, а то приходится лезть в меню. Окно фильтра запроса не блещет изяществом. И выводимый список несколько неудобен, когда он длинный.

Osirix Lite и Horos легко настраиваются и подключаются, если знать, где настройки находятся. Для оторвавшегося от виндового рабочего стола юзера это испытание. Кнопки запроса сразу на панели инструментов, все просто. Так и должно быть.

Лидеры — Инобитек, Weasis RadiAnt. Первые два — за то, что можно на каждый сервер настраивать вызывающий AeTitle, третий — за возможность запроса сразу с нескольких серверов.

 

2. Импорт изображений

Synedra не открыл из сетевой папки ни dcm, ни DICOMDIR, непонятно вообще почему. Что-то бормотал про права :) С локального диска открыл.

Multivox достаточно быстро сканирует папки на предмет dicom-файлов и выводит список для выбора для загрузки. Достаточно удобно. Кнопка открытия диалога выбора папки, правда, какая-то совсем мелкая. А для чтения диска нужно в меню заходить, нет «быстрой» кнопки. И при этом ему нужен именно натуральный диск. Т.е. папка c DICOMDIR не катит, хотя DICOMDIR читается тоже нормально, но через другой пункт меню. В общем все запутано.

У Ginkgo не очень удобный диалог импорта.

 

RadiAnt вообще для локального просмотра просто класс. Ничего лишнего. Кнопку тыць, выбрал — готово, и быстро.

Osirix Lite и Horos — все открывают. Все классно и красиво. Но Osirix Lite постоянно предупреждает, что он не предназначен для вынесения клинических заключений. Заколебал просто-напросто.

Остальные — как бы все без проблем, но каждый получил мою субъективную оценку.

 

3. Инструменты просмотра

RadiAnt не знает, что у мыши может быть три кнопки. Настроить только две можно. Интерфейс минималистский, но этим он мне и нравится. Несколько неудобны лишние клацания мышей для переназначения кнопок по инструментам. Зато нет громоздких меню с буквами :) Лупы НЕТ! Моей любимой лупы нет.

Инобитек, где инверсия? Негатив/позитив? Нашел! Неужели нельзя сделать отдельную кнопочку? Рентгенологи очень часто ей пользуются. А здесь попробуй найти ее в выпадающем списке преднастроек раскрасок пункт «Уровень серого (инверсия)».

Multivox — интерфейс ЯД! «Панель управления» занимает треть экрана, уменьшая при этом изображения. Инструментов много. Меню огромное. Но все так далеко и не удобно, что не хочется и смотреть.

 

Synedra — не Multivox, но недалеко ушел. Мне бы неудобно было работать с ним.

Ginkgo — инструменты только самые простые.

Weasis — мне нравится такая панель инструментов. Все, что часто используется есть, все под рукой.

 

Osirix Lite и Horos — куча инструментов, основные на панели, удобно. Но меню все-таки перегружено кучей различных прибамбасов.

 

4. Экспорт изображений.

RadiAnt не пишет CD/DVD.

Weasis экспортирует куда угодно и как угодно. И в графику, и в dicom, и на удаленный сервер, и в образ CD/DVD, который потом можно прожечь и вьювер будет там тоже.

Инобитек - хороший набор экспортных функций имеет, в т.ч. и пересылку на удаленный сервер. И наглядное «ручное» формирование образа CD/DVD, как по мне, очень неплохая идея.

SanteDicom: куча экспортов, но записи на CD нет :(

В Synedra вообще с экспортом плохо. Все очень запутано и не очевидно.

Osirix Lite и Horos — все просто: кнопка «Send» и диалог выбора сервера для отправки. Или выбери из меню, куда что отправить. Диски тоже не проблема.

Не умеют отправлять на удаленный серверRadiAnt, Multivox и Synedra.

 

5. Dicom-печать

Она или есть, или ее нет. Есть, конечно нюансы. Но такую фичу имеют из представленных продуктов Инобитек и Weasis и «маковские» вьюверы. Преимущество Инобитеку — все-таки более понятный, чем импортный Horos.

6. Распечатка на принтере

Не умеют печатать на принтере RadiAnt, Multivox и Synedra. Остальным добавим по 1 баллу. Все таки печать на бумагу снимков может кому-то и нужна, но просто, чтобы какую-то картинку дать, типа снимок был. Не для диагностики точно.

 

7. Корректность отображения кириллических символов

RadiAnt отображает кириллицу, как стандартную, так и win-1251 правильно. Т.е. разработчик знает, что в нашей действительности в снимки пишется виндовая кодировка и пофиг все стандарты dicom 3.0. Тоже самое умеет и SanteDicom, хотя разработчики совсем не кириллические греки :)

 

Все остальные вьюверы корректно отображают стандартную кириллицу. Единственная непонятка с Horos. Почему-то он выводит корректно кириллическое название области съемки, направление проекции, а ФИО не выводит вообще. Всем по 1 баллу, Horos-у — 0 :)

 

8. 3D-просмотр

Смотрел чисто из интереса, т. к. заказа на это не было.

Какую красивую 3D-модель нарисовал RadiAnt из кучи каких-то невнятных слайсов!

 

Умеют с 3D работать также Osirix с Horos-ом. Остальные так не умеют. Но эта опция исследовалась чисто для справки, есть/нет.

 

9. Локализация интерфейса.

У RadiAnt минимальное количество текста в меню, поэтому разработчику не трудно было его локализовать на кучу языков, в т.ч. и украинский. Но даже с таким минимальным количеством текста разработчик не доработал. «Почук», «Очичтити» - ну пародия же просто.

Есть украинский и у Weasis. В меню выбора языка есть. На самом деле «украинизирован» один пункт меню и пара кнопок. Остальное на английском.

У остальных украинского не нашел. У Ginkgo, SanteDicom и Horos нет и русского, что, конечно, у нашего медперсонала всегда вызывает недовольство. Им по 0, остальным по единичке :)

 

10. Мультиплатформенность.

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

Наиболее полно охватывают основные платформы Инобитек, Ginkgo и Weasis. Они работают под Windows, Linux и MacOS.

Исключительно под MacOS работают Osirix и Horos.

Synedra - Windows и MacOS.

Остальные — только Windows.

Итого: из 10 продуктов работают под Windows — 8, Linux — 3, MacOS — 5. Обидно за Linux. Именно на этой платформе я больше всего склонен работать.

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

Инсталляция всех программ почти не имела никаких проблем во всех системах. Были нюансы с Инобитеком под линуксом. Нужно поставить дополнительно пакеты, о чем в инструкции ничего не пишут, но поддержка оперативно ответила. Некоторые требуют Java. Некоторые еще чего-то, но моменты рабочие и танцев с бубном не требующие.

 

11. Цена

Когда дело доходит до оплаты начинается самое интересное. Люди, говорившие вам, что да, нам вот это нравится, нам только так, нам .. Потом начинают говорить, что нам и так сойдет, да и это лишнее, наверное. Давай-ка по минимуму посмотрим, но чтобы лучше всех было, а?

Ну так вот.

Бесплатными являются Ginkgo CADx, Weasis, Multivox, Synedra View Personal, Osirix Lite и Horos.

Ну как бесплатными? Распространяются они по своим лицензионным правилам, с которыми можно ознакомится. Которые могут предполагать, что продукт не может использоваться для коммерции, не предназначается для клинического использования и т. д. Хотя вот эта «метка» «Не для использования в клинике», или постоянные сообщения об этом говорят лишь о том, что продукт не сертифицирован американским или европейским центром сертификации для использования в клинической практике.

Это логично для бесплатных продуктов. За сертификацию нужно платить, а это деньги, немалые весьма. А Weasis, например, разрабатывается сообществом добровольцев как свободно распространяемый продукт. Кто его будет сертифицировать и выкладывать свои деньги?

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

Поэтому по вопросу всяких сертификатов каждый должен решать сам, как поступать.

Сертифицированный Osirix MD стоит 699 американских денег. За что? За то, что по большому счету делает то же самое, что и бесплатный Horos. Да, есть множество функций, которые там есть, а там нет. И возможно эти функции кому-то очень нужны. Ну тогда делать нечего, нужно платить. А если нужно просто посмотреть снимок, напечатать на пленке может быть или переслать кому-нибудь еще, то зачем платить такие деньги, если все остальное не будет использоваться никогда?

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

Цены, приведенные в итоговой таблице, взяты на сайтах или запрошены у разработчиков (продавцов). Не ответили на этот раз только чехи с Dicompass. Крайняя цена, которую я знаю, позапрошлогодняя была 4500 их крон, что соответствовало почти 200 американским деньгам, поэтому она и указана.

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

 

 

Инобитек просмотрщик Про.1.9.0

Weasis 2.6.0 portable

Horos

RadiAnt DICOM Viewer

Osirix LITE

SanteDicom Viewer Pro

Dicompass 3

Ginkgo CADx

MultiVox 5.5.6093

Synedra View Personal

Общая оценка

*****

*****

****

****

****

***

***

**

**

*

Цена

Lite - 8000 р.

Pro - 50000 р.

бесплатно

бесплатно

99 EUR

Lite — бесплатно

MD — 699 US$

300 US$

200 US$

бесплатно

бесплатно

бесплатно

700 EUR - Pro

Руссификация интерфейса

Украинский язык

+

-

+

+

-

-

+

+

+

-

-

-

+

-

-

-

+

-

+

-

Мультиплатформенность (Windows,Linux, MacOS)

WLM

WLM

M

W

M

W

W

WLM

W

WM

Отображение кириллических тегов

+

+

+

+

+

+

+

+

+

+

Импорт из

                   

удаленного PACS

+

+

+

+

+

+

+

+

+

+

Локальной папки

+

+

+

+

+

+

+

+

+

+

CD/DVD

+

+

+

+

+

+

+

+

+

+

Инструменты экспорта:

                   

в локальную папку

+

+

+

+

+

+

+

+

+

+

на CD/DVD

+

+

+

-

+

-

+

 

-

-

удаленный PACS

+

+

+

-

+

+

+

+

-

-

в dicom

+

+

+

+

+

+

+

+

-

+

в jpeg, png, gif и т.п.

+

+

+

+

+

+

+

+

+

+

Инструменты просмотра:

                   

Яркость/контрастность

+

+

+

+

+

+

+

+

+

+

Увеличение/уменьшение

+

+

+

+

+

+

+

+

+

+

Лупа

+

+

+

-

+

-

-

-

+

+

Повороты на 90

+

+

+

+

+

+

+

+

+

+

Зеркалирование л/п, в/н

+

+

+

+

+

+

-

+

+

+

Перемещение

+

+

+

+

+

+

+

+

+

+

Инвертирование (негатив/позитив)

+

+

+

+

+

+

+

+

+

+

Разбивка окна для нескольких изображений

+

+

+

+

+

+

+

+

+

+

Просмотр серий (прокрутка)

+

+

+

+

+

+

?

+

+

+

3D-реконструкции

-

+

+

+

+

+

-

-

-

-

Инструменты измерений

+

+

+

+

+

+

+

+

+

+

Печать на принтер

+

+

+

-

+

+

+

+

-

-

Dicom-печать

+

+

+

-

+

-

-

-

-

-

 

ПОДВЕДЕМ ИТОГИ

Итак, расставив оценки, используя мою субъективную предвзятость, получаем следующую итоговую табличку.

Еще раз подчеркиваю: это мое личное крайне субъективное и предвзятое мнение. Оно вам может нравиться, а может нет, от этого оно не поменяется.У Вас будет свое мнение и своя оценка. Я вообще хотел, чтобы победил Weasis :) :) :)

Но получилось так как получилось :)

Глядя на результат, сразу думаешь: ну и зачем мне теперь это? Я что, теперь должен всем рекомендовать вьювер воронежских разработчиков? Наверное нет. Каждый из продуктов чем-то неплох, и каждый может иметь свою область применения. Ну и от операционки зависит.

Лично я под винду бы выбрал из этого списка RadiAnt или Инобитек Lite. Они почти в одной ценовой категории. RadiAnt чуть дешевле, есть варианты его бесплатного использования, но и возможностей у него меньше. Или вообще бесплатный Weasis. Почему бы и нет. Некоторые просто предвзято к нему относятся, не знаю почему.

Под Линуксы — Weasis или Инобитек Lite. Если бесплатного функционала Weasis будет вам достаточно, то и не надо заморачиваться с платным продуктом.

Под Мак — Horos или Weasis. С другой стороны, если у вас есть Мак и вы готовы платить, то зачем платить Инобитеку за Про-версию те же деньги, которые можно заплатить за всеми признанный «супер-пуперным» Osirix MD? Ну разве, что Lite-версия все-таки не такая уж и дорогая. Но тогда бесплатный Horos по функционалу превосходит, имея, правда, в минусе отсутствие русского языка.

Вот такие вот мои выводы. Чувствуете, что у меня Weasis все-таки победил :) :) :)

 

(С) Alexandr Kuznetsov, 30.09.2017

telepacs.com.ua

Программа для просмотра МРТ, КТ и рентгеновских снимков

После прохождения МРТ или КТ исследования у пациента часто возникает желание собственноручно посмотреть какие изменения выявил у него врач. Файлы исследования обычно имеют формат DICOM (*.dcm). Для того, чтобы открыть файлы с данным разрешением требуется специальный просмоторщик из группы программ для радиологии. Группа программ для просмотра КТ, МРТ и рентгенограмм называется на английском DICOM viewer, а по-русски программа для просмотра DICOM файлов. Для того, чтобы найти одну программу из данной группы достаточно ввести в поисковик «программа для просмотра DICOM файлов». Лучше всего в конце запроса указать вашу операционную систему (Windows XP, Windows Vista, Windows 7,8,10 или Mac OS Leon, Leopard, Yosemite, Capitan). Для Mac OS наиболее удачные программы — это OsiriX и Horos. Большой плюс этих программ является то, что их можно использовать и на бесплатной основе, что для единичного пользования программы пациентом немаловажно. Данные программы также используют ведущие радиологи в мире.

Программа для просмотра КТ снимков.

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

МРТ головного мозга у пациента 13 лет по поводу головных болей. Представлены три проекции. Слева — фронтальная проекции. Посередине — аксиальная проекция. Справа — сагиттальная проекция

Программа для просмотра рентгеновских снимков с диска.

Многие производители программ предлагают пробный 30 дневный период. Для того, чтобы посмотреть пациенту единожды свой снимок этого достаточно, а для работы радиологу нет. Для загрузки одного из таких приложений перейдите по следующей ссылке:http://www.radiantviewer.com/download.php

Предложенная программа называется Radiantviewer. Оптимально работает на следующих Windows XP (service pack 3), Windows Vista, Windows 7, Windows 8 и 8,1, Windows 10. Данная программа очень проста в использовании так, как максимально интуитивна. Большим плюсом этой программы, что она переведена на русский язык от разработчика. Небольшой бонус простоты использования заключается в том, что пользователю не нужно загружать файлы с дисков на компьютер, а программа сделает это за вас, открыв автоматически ваши исследования с диска. Данная программа не потребует от вас дополнительных приложений таких, как JAVA или NET, что значительно облегчает процесс просмотра DICOM — файлов.

Данная программа поддерживает DICOM файлы следующих исследований:

1) цифровая рентгенография и маммография.2) МРТ — магнитно-резонансная томография.3) КТ — компьютерная томография.4) УЗИ — ультразвуковое исследование.5) ЦА — цифровая ангиография.6) ПЭТ/КТ — позитронно-эмисионная томография.

Просмотр снимков мрт.

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

В программе пользователь может выполнить следующие действия:

1) Изменение яркости и контрастности.2) Увеличение или уменьшение объекта.3) При оценке КТ возможность выбора окна визуализации (легочное, мягко-тканное, костное).4) Поворот, разворот, зеркальное отражение сканов.5) Произвести замеры длины, толщины, ширины, объема.6) Измерение плотности тканей в единицах Хаунсфильда при КТ исследовании.

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

Программа для просмотра мрт снимков скачать

Бесплатные программы для Mac OS являются Osirix и Horos. Данные программы возможно скачать по следующим ссылкам:

OsiriX — http://www.osirix-viewer.com/Downloads.htmlHoros — http://www.horosproject.org/download/

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

First Name — ваше имя. Role — ваша профессия. Organization — ваше место работы. Email — ваш электронный адрес. Буквально через несколько секунд вам на почту должно прийти ссылка на скачивания просмоторщика в dmg — формате. Далее устанавливаете программу, как обычно, устанавливаете программу в Mac OS.

Программа для просмотра мрт снимков.

На мой взгляд лучшая программа для Mac OS является Horos. Да эти программы (Osirix и Horos) обе бесплатные, но Horos не требует перейти на платный режим Osirix MD. При просмотре не будет выявляться красным по черному «Not for medical usage», что в переводе не для медицинского использования. Вы просто пользуетесь замечательной бесплатной программой Horos, которая вас беспокоит лишь, когда нужно загрузить обновление. В данной программе возможно открывать DICOM файлы следующих изображений: цифровая рентгенография и маммография, МРТ — магнитно-резонансная томографии, КТ — компьютерная томографии, УЗИ — ультразвуковое исследование, ЦА — цифровая ангиография, ПЭТ/КТ — позитронно-эмисионная томография.

При исследовании в трех проекция легче выявить патологию. Многие радиологи используют сразу шесть окон для оценки патологии. Особенно это характерно для МРТ исследований, когда требуется оценка патологии в разных режимах T1, T2, FLAIR, STIR, DWI, T1 + contrast.

Программы просмотра рентгеновских снимков

Раньше рентгенограммы печатались на пленку, а сейчас все снимки являются цифровыми. Для того, чтобы просмотреть данные снимки требуются те же программы, которые используются при просмотре МРТ, КТ и ПЭТ/КТ снимки. Это является очень удобным в связи с тем, что у пользователя есть возможность сравнить изменения на КТ, МРТ и рентгенограмме в одном окне, к тому же это очень информативно.

Хотелось бы привести пример использования программы.

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

Программа для просмотра мрт снимков.

На данных четырех изображениях представлен один и тот же пациент. Первое изображение МРТ T2 fatsat в сагиттальной проекции. Второе изображение МРТ STIR в корональной проекции. Третье изображение МРТ Т1 изображение. Четвертое изображение — рентгенограмма. На разных последовательностях очаг характеризуется по-разному, что дает возможность охарактеризовать процесс более детально.

Программа для просмотра КТ снимков.

Программы для просмотра КТ снимков имеют следующие действия:

1) Изменение яркости и контрастности.2) Увеличение или уменьшение объекта (ZOOM).3) Выбор окна визуализации (легочное, мягко-тканное, костное).4) Поворот, разворот, зеркальное отражение сканов.5) Замер длины, толщины, ширины, объема.6) Вычисление плотности тканей в единицах Хаунсфильда.Также не маловажным критерием для программы является 3D трансформация изображения, что особенно важно при патологии сосудистой системы и при травмах.

Компьютерная томограмма 3d — реконструкция. На современных программах есть возможность выделить отдельно систему органов. В данном случае отдельно выделена сердечно-сосудистая система. У данного пациента поражена брюшная часть аорты (указана стрелкой). Болезнь Такаясу.

У данного пациента назо-орбито-этмоидальный перелом. 3d помогает в подборе хирургической тактики.

secondopinions.ru

DICOM Viewer изнутри. Воксельный рендер / Хабрахабр

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

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

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

Одним из наших продуктов является 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[xOffest[x] + yOffset[y] + zOffset[z]]. Таким образом, начиная читать данные в параллелепипеде, мы заставляем процессор положить весь параллелепипед в кэш процессора первого уровня, что ускоряет время доступа к данным.

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

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

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

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

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

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

habrahabr.ru

:: Weasis Free DICOM Viewer

Architecture (videos) (1)

Overlay on TouchEvent (1)

MapView Screen Capture (1)

Install apk on Emulator (1)

Video test on Galaxy s (1)

Custom Component example (1)

Baloon Drawing example (1)

Custom view attributes (1)

startActivityForResult (1)

ListView with RatingBar (1)

Handler with CountDownTimer (1)

Frame by Frame Animation (1)

View Animation example (1)

Animation with Thread (1)

SurfaceView Ani example (1)

ListView, Custom Adapter (1)

URLConnection Video upload (1)

URLConnection Video download (0)

URLConnection, Multipart up.. (1)

URLConnection, Multipart up.. (1)

URLConnection, Multipart up.. (1)

URLConnection, Image download (1)

URLConnection, Seoul OpenAPI (1)

Download Image n show (0)

HttpClient, GET, text (1)

HttpClient, GET, image (1)

XmlPullParser example (1)

XmlPullParser with JSP (1)

XmlPullParser, EUC-KR (1)

XmlPullParset example (1)

HttpClient, Google Weather (1)

HttpClient & XmlPullParser (1)

HttpClient, XmlPullParser (1)

HttpClient, Weather Icon (1)

HttpClient, Seoul OpenAPI (1)

Camera capture n display (1)

Bitmap pixel manipulation (0)

Dynamic masking image (1)

Service with HttpClient (1)

Notification with Broadcast.. (1)

Intents, Intent Filter (0)

REST API, dropbox.com (0)

Intent between 2 Activity (1)

Intent with Parcelable (1)

Service Binding, Thread (1)

BroadcastReceiver, SMS (1)

WebView, Javascript Interface (1)

WebView, WebChromeClient (1)

Animation, Page Sliding (1)

Animation, ViewFlipper (1)

ListView, Dynamic item (1)

ListView, Custom item (1)

ListView, Object reuse (1)

ListView, CheckBox item (1)

ListView, National flags (1)

Multi-Touch, drawRect (1)

Multi-Touch, drawLine (1)

SurfaceView with Thread (1)

Handler.sendMessage() (1)

Socket, Server Thread (1)

Life-Cycle, SharedPreferences (1)

Landscape, Portrait p2 (1)

Simple Button Listener (1)

Android Video Tutorial (1)

벤처자문사 방문 (1)

Aviation Radio Receiver (1)

Command Line Arguments (1)

<limits.h> and <float.h> (0)

mbstowcs(), wcstombs() (1)

Pro C, VS2008 Express (1)

Pro C, Host Variable, out (1)

Pro C, Host Variable, VARCH.. (1)

Pro C, Indicator Variable (1)

Pro C, Cursor example (1)

Pro C, COMMIT ROLLBACK (1)

Pro C, Remote Connection (0)

CHAR output to STDOUT (1)

String in out to STDOUT (1)

sscanf(), format string (1)

Eclipse with Ant deploy (1)

Native-Query hibernate (0)

EJB-QL NativeQuery test (1)

JPA on JAVA SE, INSERT (1)

JPA on Java SE, Embedded (1)

JPA on Java SE, OneToMany (1)

JPA on Java SE,Bi-Directional (1)

JPA on JavaSE, UPDATE (1)

JPA on JavaSE, UPDATE 2 (1)

JPA on JavaSE, UPDATE 3 (1)

JPA on JavaSE, NamedQuery (1)

JPA on JavaSE, NativeQuery (1)

JPA on JavaSE, @SqlResultSe.. (0)

JPA on JavaSE, NativeQuery 2 (1)

JPA on JavaSE, Query & Func.. (1)

JPA on JavaSE, StoredProced.. (0)

Servlet & JSP평가문제 (0)

Flash Builder Game Dev (1)

Flash Game programming (0)

Understanding cue points (1)

Webcam live streaming (1)

Development Environment (0)

JPA (Java Persistence API) (3)

Korean Traditional Musics (1)

서편제 중 진도아리랑 (1)

Java & Android, Japan (0)

원격관리(SQLPlus, iSQLPlus) (1)

HttpServer Port 변경 (1)

INSERT, UPDATE, DELETE (1)

SUM, COUNT, MAX, AVERAGE (1)

STARTUP, Command line (1)

PLSQL 자료형 제어문 (1)

PLSQL Proc, Func 연습 (1)

Creating Stored Procedure (2)

CallableStatement, Function (1)

CallableStatement, REFCURSOR (1)

OracleCallableStatement (1)

Index by TABLE IN, OUT (1)

CallableStatment 연습 (1)

SQL Developer materials (1)

조석현상과 그 원리 (1)

SNS, Social Network Service (0)

이미지 트레이닝 (0)

UDK(Unreal Development Kit) (0)

Introduction to Unreal 3 (0)

Windows Shell Commands (0)

3가지 공유설정법 (1)

micropilot.tistory.com


Смотрите также