Автор: Пользователь скрыл имя, 12 Января 2014 в 13:47, дипломная работа
Часто из вида упускается вклад DICOM и PACS на фактического пациента. DICOM обеспечивает весь рабочий процесс с момента, когда пациент входит в радиологическое отделение, собирая важные данные и изображения с цифровых модальностей и доставляя их за считанные минуты рентгенологам в самой точной для диагностики форме. Сравнение предыдущих исследований с новыми не требуют огромных усилий с DICOM, что приводит к более точной диагностики и лучшему лечению. Нет пленок, которые можно потерять, перепутать, просрочить, а отсюда и меньше повторных исследований. Все это позволяет ускорить и значительно улучшить современное здравоохранение. Важность DICOM, как неотъемлемой части IT–инфраструктуры, будет расти. Количество существующих и доступных DICOM и PACS приложений просто ошеломляет. Выбор PACS с каждым годом становится все сложнее, а понимание DICOM все важнее.
Рисунок 2.3.5 Принцип работы SCM SCU
Для тестирования служб использовались два бесплатных пакета с открытым исходным кодом. Для тестирования MWL SCU использовался пакет DCMTK фирмы Offis. SCM SCU тестировался с помощью пакета DVTk, который был создан компаниями Phillips и ICT Automatisering.
DCMTK представляет собой набор библиотек и приложений, которые реализуют большую часть стандарта DICOM. Он включает в себя программное обеспечение для изучения, создания и конвертирования DICOM изображений, хранение, отправку и получение изображений по сети, а также списки назначений. DCMTK написан на смеси ANSI C и C++. Пакет поставляется с полным исходным кодом и является полностью бесплатным.
Пакет является весьма популярным и используется на многих демонстрациях DICOM, для обеспечения центрального, независимого от производителя архива изображений и списков назначений. Он используется в больницах и компаниях по всему миру для самых различных целей, начиная с того, чтобы быть инструментом для тестирования и заканчивая какими-либо исследовательскими проектами.
DCMTK может быть скомпилирован, как на Windows так и на широком спектре операционных системах UNIX, включая Linux, Solaris, HP-UX, IRIX, FreeBSD, OpenBSD и MacOS X.
Состав пакета:
Для тестирования MWL SCU использовалась одна из утилит саб-пакета dcmdata (dump2dcm), а также сам сервер саб-пакета dcmwlm (wlmscpfs).
Утилита dump2dcm преобразует текстовый файл дампа в файл DICOM. Файл дампа имеет тот же формат, что и выходной файл dcmdump. Таким образом, можно получить дамп из dcmdump, изменить некоторые атрибуты и создать новый файл DICOM.
В дампе каждый элемент (тэг, VR, значение) должен быть в отдельную строку, разделенную знаками табуляции. Знак «#» начинает комментарий, который заканчивается в конце строки. Пустые строки не допускаются.
Dump2dcm работает в режиме командной строки. На вход данной утилите подаются два параметра, а также некоторые настройки. На рисунке 3.1.1 показана работа утилиты в подробном режиме. Данная утилита использовалась с целью создания DICOM файлов из дампов, чтобы сервер мог работать с ними.
Рисунок 3.1.1 Пример работы утилиты dump2dcm
Запуск:
Dump2dcm [настройки] дамп-файл dicom-файл
Входные параметры:
Дамп-файл – входной текстовый файл дампа
DICOM-файл – выходной файл, который создастся из дамп-файла
Настройки:
Общие настройки:
-h – вывод на экран справку по утилите
-q – «тихий» режим, т.е. без вывода ошибок и предупреждений
-v – подробный режим, т.е. с выводом полной информации о работе
-d – отладочный режим, т.е. с выводом всей отладочной информации
Настройки ввода:
+f – чтение мета-информации, если она имеется
-f – игнорирование мета-информации
Настройки вывода:
+F – вывод формата файла
-F – запись блока данных без мета-информации о файле
+Fu – обновление конкретной мета-информации о файле
+t= – запись в выходной файл с тем же TS, как и во входном
+te – запись VR с явным обратным порядком байт
+tb – запись VR с явным прямым порядком байт
+ti – запись VR с неявным обратным порядком байт
-E – остановить запись, если дамп-файл поврежден
+E – запись даже если дамп поврежден
+u – включить поддержку новых VR
-u – отключить поддержку новых VR
+g= – пересчитать длины групп, если таковые имеются
+g – запись с длинами групп
-g – запись без длин групп
+e – запись с явным указанием длины
-e – запись без явного указания длины
Настройки обработки:
-Ug – генерировать новые UID’ы для исследований, серий, экземпляров
-Uo – не перезаписывать существующие UID’ы
+Uo – перезаписывать существующие UID’ы
Приложение wlmscpfs реализует SCP службы Worklist Management. Приложение прослушивает указанный TCP/IP порт для входящих ассоциаций от SCU. В случае если ассоциация была установлена, и дальнейший запрос был получен, wlmscpfs будет запрашивать отдельные файлы в определенной директории (которая может быть задана через определенные настройки программы) для поиска рабочих списков, которые соответствуют запросу, а далее приложение будет посылать эти списки обратно вызывающему SCU. На рисунке 3.1.2 показан запуск сервера на 105 порту.
Рисунок 3.1.2 Запуск сервера на 105 порту
Запуск:
Wlmscpfs [настройки] порт
Входные параметры:
Порт – номер TCP/IP порта, который необходимо прослушивать
Настройки:
Общие настройки:
-h – вывод на экран справку по утилите
-q – «тихий» режим, т.е. без вывода ошибок и предупреждений
-v – подробный режим, т.е. с выводом полной информации о работе
-d – отладочный режим, т.е. с выводом всей отладочной информации
Настройки ввода:
-dfp – путь к директории с рабочими листами
-efr – включить отказ от неполного файла с рабочим листом
-dfr – отключить отказ от неполного файла с рабочим листом
Сетевые настройки:
+x= – отдавать предпочтение VR с явным локальным порядком байт
+xe – отдавать предпочтение VR с явным обратным порядком байт
+xb – отдавать предпочтение VR с явным прямым порядком байт
+xi – только принимать VR с неявным обратным порядком байт
-ac – принимать соединение от любого хоста
+ac – соблюдение правил контроля доступа
+u – включить поддержку новых VR
-u – отключить поддержку новых VR
-ta – таймаут для ACSE сообщений
-td – таймаут для DIMSE сообщений
DVTk является пакетом с открытым исходным кодом для тестирования, проверки и диагностики коммуникационных протоколов, а также различных сценариев в медицинской среде. Кроме DICOM, он также поддерживает HL7 и профили интеграции IHE. Приложения DVTk весьма популярны у разработчиков ПО и тестировшиков. Приложения написаны на C#, библиотеки же на ANSI C и C++. Исходный код полностью открыт и любой человек с навыками программирования может сделать свой вклад в проект.
Состав пакета: