Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Возможности и особенности системы Pisoft




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

Первые версии пакета (вплоть до версии 4.1) являлись исключительно инструментом просмотра и визуального исследования изображений при помощи просмотра численной апертуры, гистограммы яркости, профилей яркости и 3D-визуализации яркости. Кроме того, были реализованы процедуры гистограммной обработки изображений. В версии 5.1 впервые появились возможности пространственной обработки изображений – оконная фильтрация и нормализация фона. Для этой версии был определен специальный внутренний язык программирования Pisoft и создана система отладки и исполнения (интерпретации) программ обработки изображений на этом языке. В дальнейшем, однако, встроенные средства программирования пакета Pisoft развивались в направлении неязыкового визуального программирования. Версия 6.0 ознаменовала собой перевод системы под операционную систему Windows. В ней также впервые был использован многооконный интерфейс пользователя. В версии 7.0 была реализована фреймовая концепция визуального программирования модульных схем обработки изображений, которая приняла свой окончательный вид в версии 9.0. При этом был обеспечен режим online-обработки данных, такой, что любое изменение данных в любом узле схемы приводит к автоматическому изменению всех последующих результатов обработки. Разработанные схемы и соответствующие экранные формы могут быть сохранены для дальнейшего многократного использования.

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

· Поддержку импорта изображений из боле чем 50 популярных файловых форматов.

· Загрузку, обработку, просмотр и сохранение бинарных, полутоновых (8- и 16-битных) и цветных (включая truecolor) изображений, а также любых двумерных и одномерных числовых массивов, как целочисленных, так и вещественных.

· Скорость обработки, совместимую с работой в реальном времени.

· Возможность адаптивного формирования и передачи от блока к блоку параметров процедур обработки.

· Возможность пополнения системы путем регистрации новых фреймов (в том числе, и разработанных пользователем) в уже инсталлированной и работающей версии.

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

Функциональный состав системы включает большинство популярных процедур обработки и анализа одномерных и двумерных числовых массивов:

· анализ профилей яркости, апертур, проекций и гистограмм, различные средства геометрических измерений;

· линейные, нелинейные и произвольные геометрические преобразования;

· алгебраические операции над одним или несколькими изображениями;

· линейные, нелинейные и произвольные яркостные и цветовые преобразования;

· линейная и нелинейная фильтрация изображений в пространственной области;

· фильтрация изображений в частотной области, wavelet transform;

· корреляционная привязка фрагментов;

· сегментация изображений, выделение и анализ областей и контуров;

· математическая морфология Серра;

· преобразование Хафа, обнаружение прямолинейных структур;

· поиск характерных структур;

· текстурный анализ;

· выделение объектов, вычисление геометрических признаков:

· вычисление статистик.

Таким образом, в настоящее время пакет Pisoft Image Framework представляет собой интегрированную среду обработки и анализа изображений, которая предполагает визуальное программирование структурных модульных схем обработки изображений из имеющихся стандартных блоков. Эта среда реализована в виде приложения для операционной системы Windows.

Рассмотрим теперь наиболее интересные отличительные черты системы Pisoft – фреймовую программную архитектуру и фреймовый интерфейс пользователя.

В 1995 году для создания систем обработки и анализа изображений в ГосНИИАС была предложена оригинальная «фреймовая» программная архитектура ([247], [260], [269]). Она отличается следующими основными особенностями:

- Базовым элементом программной архитектуры являются программные фреймы - объекты, объединяющие данные, процедуры и линки (связи с другими фреймами). Любая схема обработки в этой архитектуре представляется в виде сети фреймов. Ее структура определяется набором фреймов и установленными между ними связями.

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

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

Программные системы, разработанные с использованием фреймовой технологии, обеспечивают:

· оригинальный фреймовый интерфейс пользователя;

· возможность интерактивно формировать из имеющихся готовых блоков любые схемы обработки без использования какого-либо специального командного языка (путем фреймового визуального программирования);

· возможность осуществлять автоматическую обработку данных в заданной схеме по мере их обновления (режим «frames-on-line»).

Фреймовый интерфейс пользователя поддерживает:

· адаптивную настройку меню системы в зависимости от ее текущего состояния, текущего активного окна и характера выполняемых действий;

· адаптивную настройку режима ввода и вывода интерактивной векторной графической информации (маркеры, линии, кривые, прямоугольники и т.п.) во всех необходимых окнах одновременно;

· удобную проблемно-ориентированную навигацию в многооконном интерфейсе;

· адаптивную настройку системы помощи в зависимости от текущего состояния системы, текущего активного окна и характера выполняемых действий;

Отметим также, что в ходе работы над системой Pisoft Image Framework было разработано и отлажено следующее специальное программное обеспечение:

· Базовая библиотека поддержки фреймового программирования.

· Среда визуального программирования сетей фреймов.

· Базовый набор фреймов, реализующий платформу обработки визуальной информации.

· Библиотеки алгоритмов обработки и анализа изображений.

 

 

Примеры, приведенные на рис.1.1.4-1.1.6, демонстрируют основные элементы пользовательского интерфейса этой программной системы.

 

Рис.1.1.4. Элементы интерфейса: палитра фреймов, панель схем, фреймы, окна изображений.

Рис.1.1.5. Элементы интерфейса: меню фреймов, статусная строка, окна данных.

 

Рис.1.1.6. Элементы интерфейса: контекстное меню, подсказка фрейма, графические слои.

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

Рис.1.1.7. Визуальный интерфейс фрейма

 

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

· Управляющая кнопка “!” выводит системную информацию о фрейме:

– входные и выходные связи с указанием поддерживаемых типов данных;

– входные и выходные числовые параметры с указанием их значений.

· Управляющая кнопка “?” выводит индивидуальную справку по фрейму.

· Управляющая кнопка “R” предназначена для замены фрейма на другой фрейм (выбираемый из выпадающего меню) с совместимыми типами входных и выходных связей.

· Управляющая кнопка “X” предназначена для удаления фрейма из схемы.

 

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

 

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

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

Для работы с фреймовыми схемами предназначены пункты меню “Файл” и “Стандартные схемы” главного меню системы. Подпункты меню “Файл”:

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

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

· Сохранить. По данной команде выдается диалог сохранения файла. Активная схема сохраняется в заданный файл.

· Закрыть. Данная команда уничтожает активную схему.

· Схема по умолчанию. По данной команде активная схема становится схемой по умолчанию. Она будет загружаться при входе в систему и по команде Новая схема.

· Добавить в стандартные. По данной команде выдается диалог описания схемы. Затем активная схема добавляется в набор стандартных схем, список которых появляется в виде меню пункта Стандартные схемы.

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

· Категория схемы. Создаваемая схема может входить в новую или ранее созданную категорию. Категория появляется в виде подменю пункта Стандартные схемы.

· Описание схемы. Данная строка появляется как пункт меню в подменю категорий стандартных схем.

· Короткое имя схемы. В настоящий момент данная строка используется только как имя файла, куда сохраняется схема.

· Выполнить. Данная команда делает следующее. Во всех фреймах ввода данных, не имеющих входных связей (пример – “Import”), активизируется система подсказок, и система предлагает ввести данные в схему. Далее схема выполняется с новыми данными.

· Настроить. По данной команде все фреймы схемы переходят в неинициализированное состояние. Система подсказок помогает настроить каждый фрейм и выполнить обработку.

Подменю “Стандартные схемы” главного меню системы содержит список всех стандартных фреймовых схем, зарегистрированных в системе. Список разбит на категории (подменю), внутри каждой из которых располагаются все стандартные схемы данной категории. При выборе схемы из данного меню, она загружается в панель фреймовых схем.

Контекстное меню фреймовой схемы появляется при нажатии клавиши мыши на активной связи (обозначаемой красным светом). Меню содержит команду удаления связи, а также список фреймов для быстрой вставки в схему. Данный список формируется динамически в соответствие с типом данных активной связи.

 

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

 

Маскирование. Некоторые фреймы имеют также входную связь “Mask”, которая по умолчанию не видна, и ее использование не обязательно. Ее можно визуализировать через пункт меню фрейма “Mask”. Связь предназначена для задания бинарной маски, которая указывает только те пикселы, в которых происходит обработка.

 

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

 

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

 

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

· визуализация слоев векторных объектов на изображении (пассивные графические слои);

· прием команд пользователя и сообщений мыши для интерактивной работы (активные графические слои).

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

· возможность вывода растровой графики как объекта (изображение поверх изображения)

Свойства графических объектов, составляющих графические слои:

· интерактивный ввод, удаление;

· перемещение узлов и всего объекта;

· переопределяемый цвет, гладкость, форма.

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

Меню активного графического слоя является контекстным и вызывается нажатием правой клавиши мыши в окне данных. Меню состоит из команд вида Имя: Команда, где Имя – имя фрейма-владельца графического слоя или одно из системных имен (‘Источник’,‘Приемник’, ‘Область’ и т.д.). Меню состоит из подмножества следующих команд (в зависимости от текущей ситуации):

· Новая линия. Команда заканчивает построение текущего объекта типа линия.

· Новый полигон. Команда заканчивает построение текущего объекта типа полигон.

· Движение. Команда включает режим перемещения объекта целиком.

· Удалить узел. Команда удаляет узел объекта, на который указывает мышь.

· Удалить объект. Команда удаляет объект, на который указывает мышь, целиком.

· Свойства. Команда выдает диалоговое окно, в котором можно посмотреть координаты всех точек объекта, и изменить его визуальные свойства (гладкость, цвет).

· Вращение. Команда реализована только для объекта типа прямоугольник. Она включает режим вращения прямоугольника. Вращение осуществляется с помощью мыши с помощью захвата и перемещения одного из углов прямоугольника.

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

· Точка. Режим построения объектов типа ‘точка‘.

· Линия. Режим построения объектов типа ‘линия‘.

· Полигон. Режим построения объектов типа ‘полигон‘.

· Прямоугольник. Режим построения объектов типа ‘прямоугольник‘.

· Вектор. Режим построения объектов типа ‘вектор‘ (частный случай объекта типа ‘линия‘).

 

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

 

Меню фрейма. На рис.1.1.8 показан пример меню фрейма, появляющегося при нажатии на иконку фрейма.

Рис.1.1.8. Типовое меню фрейма

 

Меню фрейма, как правило, содержит следующие группы команд:

· Функции обработки. Данные команды служат для выполнения работы, специфичной для каждого фрейма. Более подробную информацию по ним можно найти в справке к каждому конкретному фрейму.

· Управление показом данных. Команды данной группы служат для управления окнами входных и выходных данных фрейма. Окна можно показать, скрыть, или открыть заново другим вьюером. В системе может быть зарегистрировано несколько компонентов просмотра данных. Например, для просмотра изображений имеется простой вьюер, состоящий из одного окна (Simple viewer) и многофункциональный вьюер, включающий несколько инструментов анализа изображений (Advanced viewer).

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

· Управление уведомлениями. Фреймы имеют входные и выходные связи уведомления. По умолчанию эти связи скрыты. Их можно визуализировать с помощью данной группы команд.

· Управление маскированием. Команда управления бинарной маской делает видимой или скрывает соответствующую связь.

· Команда запуска позволяет асинхронно запустить фрейм с текущими настройками.

Средства отображения в режиме «Источник-Приемник». Данные средства служат для включения режима просмотра геометрических трансформаций. Поскольку некоторые фреймы выполняют сложные геометрические преобразования пикселей изображений, было разработано средство для визуального отображения таких преобразований. Команда «Источник» регистрирует указанное окно в качестве источника данных для преобразования, команда «Приемник» задает конечное окно данных в цепи преобразований. Если в текущей схеме существует непрерывная цепь связей (линков) между выбранными окнами, то в них активизируются соответствующие специальные графические слои ‘Источник’ и ‘Приемник’. После этого ручной ввод графических объектов в окне ‘Источник’ приводит к геометрическому преобразованию координат объектов согласно фреймовой схеме (прямое преобразование), причем результат преобразования отображается в окне ‘Приемник’. И наоборот, ввод графических объектов в окне ‘Приемник’ приводит к геометрическому преобразованию координат объектов согласно фреймовой схеме (обратное преобразование), а результат обратного преобразования отображается в окне ‘Источник’. Если прямого или обратного преобразования не существует, то выдается соответствующее системное сообщение.

 

Типы данных. В таблице показаны типы данных, используемые в системе. Некоторые из них поддерживаются системой Windows в виде стандартного формата BMP. Остальные поддерживаются только системой PiSoft, но хранятся также в формате BMP совместно с дополнительной информацией. Тип данных empty означает, что фрейм может работать, даже если соответствующая связь не содержит данных.

 

Пиктограмма Данные Системное название Поддержка Windows Количество каналов
- 8-битное полутоновое изображение 8 bit Да
24-битное цветное изображение 24 bit Да
32-битное цветное изображение 32 bit Да
B 8-битное многоканальное целочисленное беззнаковое изображение, бинарная маска Byte Нет Любое
W 16-битное многоканальное целочисленное беззнаковое изображение Word Нет Любое
S 16-битное многоканальное целочисленное знаковое изображение smallint Нет Любое
I 32-битное многоканальное целочисленное знаковое изображение Int Нет Любое
F 32-битное многоканальное изображение с плавающей точкой Float Нет Любое
D 32-битное многоканальное изображение с плавающей точкой double Нет Любое
Одномерный сигнал 1D Нет
Числовой параметр scalar Нет
  Нет данных empty Нет Нет

 


Поделиться:

Дата добавления: 2015-04-15; просмотров: 188; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты