Архитектура и состав системы

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

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

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

- улучшение и обработка статических и динамических изображений,

- анализ изображений и выделение информативных областей на них,

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

- сохранение текстовой и графической информации, полученной в ходе проведённого исследования.

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

- блок ввода и предварительной обработки изображений,

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

- блок расчёта значений параметров и характеристик, выбранных из списка в соответствии с протоколом конкретного исследования

- блок сохранения, оперативного поиска и архивации полученных в ходе исследования текстовых и графических данных.

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

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

Логические связи и функциональные узлы программного блока приведены на рисунке 7.

В основе работы программного блока анализа изображений лежит функционирование четырех библиотек:

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

2) для предобработки изображения, включая функции улучшения, фильтрации, контрастирования и т.д.

3) для работы математической морфологии выделения и коррекции объектов, включающая аппарат для коррекции формы объектов,

4) для вычисления характеристик, состоящая из набора параметров, и функции анализа и обслуживания сервисов вычисления характеристик по параметрам.

На рисунке 7 представлена общая схема взаимодействия базового программного обеспечения.

 

Рисунок 7 – Структурная схема взаимодействия базового программного обеспечения

 

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

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

- обеспечивающие организацию графического интерфейса,

- отвечающие за оперативную функциональность и настройку комплекса.

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: