Выделение и анализ скелетов объектов на цветных снимках

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

При реализации этого шаблона задачи файл с данными целиком располагается на узле, его обработка происходит там же; последовательный код обработки отдельного изображения не подвергается никакой модификации, реализуется параллелизм по данным. Файлы равномерно распределены по узлам кластера при помощи средств ФС Lustre. При этом планировщик заданий, специально реализованный для данного шаблона с помощью библиотеки T-Sim, используется для направления вычислений на тот узел кластера, на котором расположен обрабатываемый файл.

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

С применением данного шаблона была реализована задача по перепроецированию данных ДЗЗ.

В заключение можно сделать следующие выводы. Предлагаемая программная система представляет собой распределенный архив данных ДЗЗ, реализованный в соответствии с идеологией активных хранилищ. Эффективность работы системы обеспечивается обработкой данных на тех же узлах распределенного хранилища, на которых они хранятся, что позволяет существенно снизить расходы на передачу больших массивов данных по сети. Балансировка нагрузки на узлах осуществляется планировщиком библиотеки T-Sim на основе информации, предоставляемой интерфейсом кластерной ФС Lustre.

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

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

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

Литература

1. Sun Microsystems : официальный сайт кластерной файловой системы Lustre. URL: http://wiki.lustre.org/index.php (дата обращения: 10.04.2009).

2. Московский А.А. T-Sim - библиотека для параллельных вычислений на основе подхода Т-системы // Программные системы: теория и приложения: тр. Междунар. конф. М.: Наука, Физматлит, 2006. Т. 1. С. 183-193.

3. Cascading Home Page : официальная стр. проекта Cascading. URL: http://www.cascading.org (дата обращения: 10.04.2009).

4. Welcome to Pig! : официальная стр. проекта Pig. URL: http://hadoop.apache.org/pig (дата обращения: 10.04.2009).

5. Welcome to Hadoop! : официальная стр. проекта Ha-doop. URL: http://hadoop.apache.org/core (дата обращения: 10.04.2009).

ВЫДЕЛЕНИЕ И АНАЛИЗ СКЕЛЕТОВ ОБЪЕКТОВ НА ЦВЕТНЫХ СНИМКАХ

С.В. Погодин

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

Ключевые слова: выделение объектов, скелетизация, взвешенный граф, распознавание образов.

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

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

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

Подготовка изображения

В большинстве случаев объект на изображении находится рядом с другими объектами, которые мешают анализу изображения. В работах [1, 2] рассмотрены некоторые алгоритмы по удалению фона на растровом изображении, по понижению количества шума, выделению локальных объектов и т.п. Основная идея данных работ заключается в применении волнового алгоритма удаления фона на растровых изображениях. Одним из результатов такого подхода к анализу изображений стало выделение объектов из фона с использованием прозрачности пикселей (а/рйа-кана-ла). К сожалению, данный метод не лишен недостатков. Так как исследуемые объекты, как правило, имеют причудливую форму и некоторые их части визуально сливаются с фоном, после обработки отдельные области объектов отделяются и удаляются. Для решения проблемы целостного выделения объектов были разработаны алгоритмы склейки и отсеивания изображений, не отвечающих критерию близости к эталонам. Этим критерием являлось отношение площади выделенного объекта к площади описанного вокруг него круга. На основе дальнейших тестов было выяснено, что данный критерий не универсален и не всегда дает желаемый результат.

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

Волновой алгоритм

для нахождения скелета

Одним из способов нахождения скелета изображения является волновой алгоритм [3, 4]. В нем используется особый вид волны, названный сферическим. Это комбинация последовательного применения 4- и 8-связной волны. В результате волна распространяется в виде восьмиугольника, уверенно огибающего препятствия. Здесь наблюдается интересный эффект: не более чем через 2*N шагов распространение приобретает устойчивый характер вне зависимости от начальной точки. Поведение волны предсказуемо и на траекториях, отличных от прямой. Огибающие свойства волны имеют свои особенности. Мелкие препятствия (1-2 пикселя) мало влияют на распространение волны, внося незначительные помехи. Более крупные препятствия на изображении вызывают значительные искажения картины распространения волны. Следовательно, необходима предварительная обработка изображения, направленная на устранение нежелательных помех.

Алгоритм утоньшения для нахождения скелета

Рассмотрим подходы к нахождению скелета графического объекта, основанные на последовательном утоньшении границ объекта [5, 6]. Предлагаются два алгоритма утоньшения.

Первый алгоритм основан на применении к изображению восьми масок, полученных из двух (см. табл.) путем поворота каждой на 90, 180 и 270 градусов. Каждая маска отвечает за удаление горизонтальных, вертикальных и диагональных линий, наклоненных под углом 45 градусов.

Маски утоньшения

0 0 0

2 1 2

1 1 1

2 0 0

1 1 0

2 1 2

Алгоритм заключается в следующем. Каждый пиксель изображения и его ближайшие соседи подвергаются тесту на соответствие наложенной маски. Маска накладывается таким образом, что текущий пиксель становится в ее середину, а ближайшие соседи покрываются остальной частью маски. Если сам пиксель и его соседи удовлетворяют условию, что под ячейкой маски с номером 0 находится фон объекта, а под ячейками с номером 1 - сам объект, то пиксель, лежащий под центральной ячейкой маски, удаляется на изображении.

Второй алгоритм основан на применении к изображению взвешенных матриц. Причем вес

точки объекта определяется ее яркостью, а яркость каждой точки на скелете объекта убывает пропорционально расстоянию от центра тяжести. Данный алгоритм не подходит в нашем случае, так как скелеты объектов могут распасться на части, что затруднит их дальнейший анализ. На рисунках 1-3 показаны результаты работы указанных алгоритмов. Здесь а) - исходное изображение, Ь) - результаты работы алгоритма применения восьми ядер, с) - результаты работы алгоритма со взвешенной матрицей.

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

Получение и сравнение графов скелетов

Для анализа скелета объекта необходимо представить его в виде взвешенного графа (см. рис. 4). Для удобства визуализации получившийся граф наложен на исходное изображение (черные точки - вершины графа, серые - его дуги). Веса дуг определяются количеством пикселей, лежащих на пути передвижения по изображению скелета между узловыми точками. На рисунке отображены результаты выделения и анализа скелетов самолетов, в том числе а) - выделенный самолет без фона, Ь) - полученный граф скелета, с) -упрощенный граф скелета, ё) - самый длинный путь в графе скелета (темно-серая линия).

Алгоритм построения графа скелета состоит из следующих этапов.

1. Изображение со скелетом объекта представляется в виде матрицы, размеры которой соответствуют размерам изображения. Скелет объекта в матрице маркирован цифрами 1, а фон -цифрами 0.

2. Находится ячейка матрицы с одним соседом, маркированным цифрой 1. Если таких ячеек нет, остановка алгоритма.

3. Координаты текущей ячейки заносятся в массив описания дуги.

4. В текущую ячейку ставится цифра 2.

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

6. В массив вершин графа добавляются координаты текущей ячейки.

7. Если у текущей ячейки нет соседей, маркированных цифрой 1, переход к пункту 10.

8. В ячейки соседей, маркированных цифрами 1, ставятся цифры 3.

9. Координаты текущей ячейки заносятся в стек столько раз, сколько было маркировано соседей.

10. Массив точек дуги добавляется к описанию текущей вершины графа.

11. Если стек не пуст, извлекаются координаты ячейки. Переход к пункту 3. Иначе описание скелета добавляется в массив и осуществляется переход к пункту 2.

Алгоритм имеет недостаток. Возможна ситуация, когда появится дуга, в которую входят всего две точки - узловая и конечная. Такой пример отражен на рисунке 5, где показаны четыре пути из узловой (черной) точки, маркированные буквами А, В, С и Б.

Как видно на рисунке, путь Б сразу заканчивается. Эта ситуация может осложнить процесс

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

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

Н А А А

с с

в

в в в

Рис. 5. Слабая сторона алгоритма

сеивать мешающие распознаванию объекты (деревья, мелкие водоемы и др.).

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

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

подхода заключает в том, что при анализе учитываются расстояния между узловыми точками выделенного скелета. Это означает, что графы одинаковых объектов, масштабированных и повернутых в любом направлении, будут подобны.

Литература

1. Выделение и распознавание локальных объектов на аэрокосмических снимках / А.Н. Виноградов [и др.] // Авиакосмическое приборостроение. 2007. № 9. С. 39-45.

2. Kalugin F. Pogodin S. Object contour extraction at aerospace photos. Proceedings of the 9th International Conference (Pattern Recognition and Information Processing). Minsk, Belarus: 2007. Vol. 1. pp. 177-182.

3. Клубков И. Применение волнового алгоритма для нахождения скелета растрового изображения, 2004. URL: http://igdrassil.narod.ru/pc/work/Vectorisation.html (дата обращения: 04.09.2008).

4. Шикин Е.В., Боресков А.В. Компьютерная графика. М.: Мир, 1995.

5. Fisher R., Perkins S., Walker A. and Wolfart E. Skeletonization / Medial Axis Transform, 2003. URL: http://homepages.inf.ed. ac.uk/rbf/HIPR2/skeleton.htm (дата обращения: 15.05.2008).

6. Ballard D. and Brown C. Computer Vision: Prentice-Hall, 1982.

8 p.

7. Загоруйко Н.Г. Прикладные методы анализа данных и знаний. Новосибирск: Изд-во Ин-та матем., 1999. 270 с.

ГРАФИЧЕСКИЙ АНАЛИЗ ИНФОРМАЦИИ В СИСТЕМАХ КОСМИЧЕСКОГО НАЗНАЧЕНИЯ

Ю.Г. Емельянова

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

Ключевые слова: когнитивная графика, визуализация, интеллектуальный интерфейс.

Для управления космическими аппаратами (КА) используется наземный автоматизированный комплекс управления (НАКУ) [1]. Одним из основных средств НАКУ являются наземные станции командно-измерительной системы (НС КИС). По радиоканалам НС КИС осуществляется информационный обмен между НАКУ и КА. Эта станция предназначена для непрерывного выполнения задач управления, измерения орбитальных параметров, контроля и поддержания технических и баллистических характеристик КА, находящихся в ориентированных и неориентированных режимах функционирования [2].

Положительные перспективы развития НАКУ связаны с введением в эксплуатацию новых средств, удовлетворяющих повышенным требованиям надежности, функциональности и мобильности. Развитие систем НС КИС связывается с использованием технологий искусственного интеллекта для управления, диагностирования состояний оборудования и прогнозирования ситуаций.

Визуализация текущей информации о состоянии наблюдаемых объектов и окружающей среды, о ходе выполнения команд центра управления по-

летом (ЦУП) и о собственном состояния является одной из важнейших задач управления НС КИС. С этой целью специально для НС КИС разрабатываются интерфейсы, способные отражать числовую информацию, поступающую от различных источников, а также формировать ее в виде графиков и таблиц. Главная задача визуализации -предоставлять ЛПР информативное графическое отображение текущей ситуации, аккумулирующее контролируемые данные в единый образ.

Рассмотрим действующие способы отображения состояния НС КИС на примере интерфейса командно-измерительной станции головного предприятия космической связи. Интерфейс НС КИС предназначен для отображения текущей информации, включая телеметрическую информацию; информацию о состоянии окружающей среды (метеоинтформация): температура, влажность, направление ветра и др.; состояние аппаратуры НС КИС; командную информацию.

Следует отметить многофункциональность интерфейса, на котором располагается информация не только о внутреннем состоянии НС КИС, но и об окружающей среде, о контролируемом