Научная статья на тему 'Автоматизированная система построения 3D-моделей по их проекциям'

Автоматизированная система построения 3D-моделей по их проекциям Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
545
53
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПОЗНАВАНИЕ ОБРАЗОВ / АНАЛИЗ ИЗОБРАЖЕНИЙ / 3D-МОДЕЛИРОВАНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Дегтярева О.А., Герасимов А.М.

Статья ориентирована на специалистов, работающих по следующим научным направлениям: распознавание образов, компьютерное моделирование, обработка, анализ и понимание изображений. В статье рассматриваются способы построения 3D-моделей объектов по их проекциям с использованием методов распознавания образов, анализа изображений и их контуров, а также принципы 3D-моделирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Дегтярева О.А., Герасимов А.М.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Автоматизированная система построения 3D-моделей по их проекциям»

ключ n.txt — Блокнот

Файл Правка Формат Вид Справка

Параметры для С: Е=4,348; кН=5,014, к5Н=4,377, £N=0,867, 15Н=0,993 Вариант №2

А = СТРЕЛКА ПОЛЗЛА К ОДИННАДЦАТИ В = НО ЭТИ НЕ БЕССЛЕДНО

С = ТАК ВОСПИТАНЬЕМ, СЛАВА БОГУ, У НАС НЕМУДРЕНО БЛЕСНУТЬ. ОНЕГИН БЫЛ ПО МНЕНЬЮ МНОГИХ

Параметры для С: Е=4,194; кН=4,854; к5Н=4,232, £N=0,864; 15Н=0,991 Вариант №3

А = НАСТУПИЛО МОЛЧАНИЕ В = ТЫ В ЦЕРКОВЬ СТОРОЖЕМ ПОСТУПИ

С = КОГДА ЖЕ ЧЕРТ ВОЗЬМЕТ ТЕБЯ!» ТАК ДУМАЛ МОЛОДОЙ ПОВЕСА, ЛЕТЯ В ПЫЛИ НА ПОЧТОВЫХ,

Параметры для С: Е=4,342; кН=4,962, к5Н=4,405, 1Н=0,875; 15Н=0,98б Вариант №4

А = КОЛЕНИ ШВЕЙЦАРА ПОДОГНУЛИСЬ

Рисунок 8 - Сгенерированный файл с ключами для преподавателя

Для разработки программного обеспечения была выбрана среда разработки Microsoft Visual Studio 2010 и язык программирования C# 4.0.

В заключение хотелось бы отметить, что применение данного ПО позволяет существенно сократить время, затрачиваемое преподавателем на составление вариантов лабораторных работ по теме

«Двоичное неравномерное алфавитное кодирование с равной длительностью информационных сигналов».

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

ЛИТЕРАТУРА

1. Пальченков Ю.Д. Изменения планирования учебного процесса и организация самостоятельной работы студентов / Ю.Д. Пальченков, Н.Б. Джазовский // Труды Международного симпозиума Надежность и качество. - 2006. - Т. 1. - С. 113-114.

2. Кособоков А.С. К вопросу повышения эффективности практической подготовки студентов технической специальности / А.С. Кособоков, А.А. Волощенко, А.В. Затылкин, М.К. Танатов // Труды Международного симпозиума Надежность и качество. - 2014. - Т. 1. - С. 300-302.

3. Вентцель Е.С. Теория вероятностей: Учеб. для вузов. — 6-е изд. стер. — М.: Высш. шк., 1999.— 576 c.

4. Шеннон, К. Работы по теории информации и кибернетики / К. Шеннон; пер. с англ. - М.: Иностранная литература, 1963. - 547 с. (C.E. Shannon. Recent development in communication theory. Electronics. April. 1950).

5. Теория информации и ее приложения (Сборник переводов) Под ред. А.А. Харкевича / М.: Гос. изд-во физ.-мат. лит., 1959. - 328 с.

6. Гришко А.К. Структурные компоненты геоинформационных систем и их основные области применения / А.К. Гришко, А.С. Зорькин, В.Я. Баннов, В.А. Трусов // Труды международного симпозиума Надежность и качество. 2010. Т. I. С. 287-288.

7. Фурсов В.А. Лекции по теории информации: Учеб. пособие / Самар. гос. аэрокосм. ун-т. - Самара, 2005. - 137 с.

УДК 004.042, 004.93, 004.94 Дегтярева О.А., Герасимов А.М.

ФГАОУ ВО «Самарский национальный исследовательский университет имени академика С.П.Королева (Самарский университет)» Самара, Россия

АВТОМАТИЗИРОВАННАЯ СИСТЕМА ПОСТРОЕНИЯ З^МОДЕЛЕЙ ПО ИХ ПРОЕКЦИЯМ

Статья ориентирована на специалистов, работающих по следующим научным направлениям: распознавание образов, компьютерное моделирование, обработка, анализ и понимание изображений. В статье рассматриваются способы построения 3П-моделей объектов по их проекциям с использованием методов распознавания образов, анализа изображений и их контуров, а также принципы 3В-моделирования.

Ключевые слова:

распознавание образов, анализ изображений, 3D-моделирование

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

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

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

Методы распознавания образов представляют собой наиболее математизированный раздел теории искусственного интеллекта, в котором решаются задачи, связанные с классификацией объектов произвольной природы. Распознавание образов одна из тех задач, которые постоянно решаются «естественным» интеллектом. Поэтому усилия ученых уже на протяжении полувека направлены на разработку методов и алгоритмов «автоматического» решения этой задачи. Распознавание образов в той или иной конкретной ситуации связано с учетом неопределенностей различной природы [2].

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

Понятие образа. Образ, класс - классификационная группировка в системе классификации, объединяющая (выделяющая) определенную группу объектов по некоторому признаку.

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

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

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

Понятие 3D-модели. Задача распознавания образов рассматривается в контексте задачи построения 3D-модели. 3D-модель - это математическое представление любого трехмерного объекта (реального или вымышленного) в трехмерной программной среде. В отличие от 2D-изображений, 3D-модели, при помощи специальных программных средств, можно увидеть с любой стороны и с любого расстояния. Кроме того, их относительно легко изменять. Процесс создания 3D-моделям называется 3D-моделированием [4].

Для создания анимации и компьютерных игр используется два основных типа 3D-моделей. Основные различия между ними состоят в способах создания и дальнейших манипуляций. Существуют также различия в типе используемого для их описания математического аппарата. Выделяют два типа 3D-моделей: NURBS поверхности (неравномерные рациональные би-сплайн поверхности) - это модели с гладкими поверхностями, построенными на основании кривых Безье (трехмерные аналоги кривых Безье используемых в большинстве графических редакторов); полигональная модель или «меш-мо-дель» чаще всего используется для создания 3D-объектов в кинематографе, мультипликации и игровой индустрии.

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

Компонентами полигональных моделей являются вершины, ребра и поверхности.

Вершины - это точки, в которых соприкасается три или больше полигонов. Манипуляции с вершинами (их перемещение вдоль осей x, y и z) является наиболее распространенным методом формиро-

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

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

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

Задача распознавания образов (проекций) на начальном этапе сводится к распознаванию классов образов из описанных выше групп геометрических фигур. Для распознавания таких образов достаточно использовать однослойную искусственную нейронную сеть. Количество используемых нейронов для функционирования сети - 3. Такого количества нейронов достаточно для распознавания до 8-ми различных классов образов. В нашей задаче будут использованы лишь 5 различных образов: прямоугольник (квадрат), круг, треугольник, трапеция, параллелограмм (ромб). Аналогичный анализ можно провести и для второй группы геометрических фигур. Во втором случае можно отметить, что количество различных образов стремится к бесконечности, что существенно усложняет структуру нейронной сети и возможность корректного распознавания.

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

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

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

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

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

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

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

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

Список граней: описание граней происходит с помощью указателей в список вершин.

«Крылатое» представление: в нём каждая точка ребра указывает на две вершины, две грани и четыре (почасовой стрелке и против часовой) ребра, которые её касаются. Крылатое представление позволяет обойти поверхность за постоянное время, но у него большие требования по памяти хранения [5,6,7].

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

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

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

Однако, сетки вершинного представления удобны из-за малого использования памяти и эффективной трансформации. На рисунке 1 представлен пример полигональной вершинной сетки для параллелепипеда. Каждая вершина индексирует соседние вершины. Следует отметить, что последние две вершины, 8 и 9 сверху и снизу параллелепипеда, имеют четыре связанных вершины, а не пять. Главная система должна справляться с произвольным числом вершин связанных с любой данной вершиной. Данное представление наиболее просто и быстро выгружается в различные форматы представления 3D-моде-лей, в частности, в формат VRML.

Рисунок 1 - Вершинное представление полигональной сетки

Тестирование работы разработанной автоматизированной системы. В процессе тестирования разработанной системы были рассмотрены две группы объектов и два пути построения 3D-модели. Сначала в систему необходимо загрузить проекции объекта, используя интерфейс пользователя. В первом примере, представленном на рисунке 2, загружены проекции простого цилиндра. Система обрабатывает полученные проекции и генерирует 3D-модель объекта. Для получения 3D-моделей простых фигур достаточно проанализировать две проекции из трёх. Обычно это проекция сверху и проекция спереди (сбоку). На рисунке 3 представлен результат обработки системой более сложных проекций.

Рисунок 2 - Тестирование работы системы (простой цилиндр)

Рисунок 3 - Тестирование работы системы (сложная фигура)

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

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

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

ЛИТЕРАТУРА

1. Теория распознавания образов - URL: https://ru.wikipedia.org/wiki/Teop^ распознавания образов

2. Лепский, А.Е. Математические методы распознавания образов: Курс лекций / А.Е. Лепский, А.Г. Броневич - Таганрог: Изд-во ТТИ ЮФУ, 2009. - 155 с.

3. Математические методы распознавания образов -URL: http://www.intuit.ru/studies/courses/22 65/2 4 3/info

4. Anatomy of a 3D Model - URL: http://3d.about.com/od/3d-101-The-Basics/aMnatomy-Of-A-3d-Model.htm

5. Полигональная сетка - URL: https://ru.wikipedia.org/wiki/Полигональная сетка

6. Григорьев А.В. Оконтуривание склона электронно-дифракционного рефлекса / А.В. Григорьев, И.Д. Граб, Н.А. Паксяев, В.А. Трусов, В.Я. Баннов // Труды международного симпозиума Надежность и качество. 2008. Т. 1. С. 332-334.

7. Трусов В.А. Программно-определяемые приемопередатчики и их применение / В.А. Трусов, Н.В. Горячев,

В.Я. Баннов // Молодой ученый. 2014. № 21 (80). С. 234-236.

УДК 681.518.3

Финогеев А.А., Финогеев А.Г., Нефедова И.С.

ФГБОУ ВПО «Пензенский государственный университет», Пенза, Россия

РАСПРЕДЕЛЕННАЯ ОБРАБОТКА ДАННЫХ В БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЯХ НА ОСНОВЕ МУЛЬТИАГЕНТНОГО ПОДХОДА И ТУМАННЫХ ВЫЧИСЛЕНИЙ

В статье рассматриваются вопросы разработки концепции интеллектуальной обработки и хранения сенсорных данных на пространственно-распределенных узлах беспроводной сетевой среды в рамках концепции Интернет вещей. Предлагается реализовать принципы мультиагентной обработки неструктурированной или слабоструктурированной сенсорной информации для SCADA систем энергоснабжения и энергопотребления. Для первичной обработки сенсорных данных на уровне терминальных устройств предлагается модель туманных вычислений. Туманные вычисления реализуются с помощью программных агентов, которые загружаются в узлы беспроводных сенсорных сетей и контроллеры измерительных приборов и приборов автоматики. Решение задачи лежит в рамках тенденции к созданию среды информационных взаимодействий M2M согласно концепции Интернет вещей. Основные операции интеллектуального анализа и прогнозирования выполняются на уровне распределенной обработки в серверном вычислительном кластере. Для решения сложных задач используется модель GRID вычислений на множестве графических процессоров серверных узлов с поддержкой технологии CUDA. Для хранения данных и результатов обработки разрабатывается распределенное облачное хранилище, которое включает иерархическую БД нереляционного типа, организованную на пространственно-рассредоточенных узлах сенсорных сетей и БД реляционного типа на узлах серверного кластера. Результаты исследований, представленные в статье, получены при финансовой поддержке РФФИ в рамках научных проектов 15-57-54033, 15-07-01720, 16-07-00031 Ключевые слова:

мультиагентный подход, распределенные вычисления, мониторинг, беспроводная сенсорная сеть, zigbee, туманные вычисления, grid вычисления, scada система

Появление огромного числа датчиков и измерительных приборов в сложных технических системах привело к экспоненциальному росту объема данных, которые необходимо обрабатывать и анализировать в реальном времени. По данным компании Cisco такая система, как реактивный двигатель может создать 10 терабайт данных о своей деятельности и состоянии в течение получаса. Датчики, установленные в современном автомобиле, генерируют до двух петабайт данных в год. Передача этих данных для обработки в серверные вычислительные кластеры GRID или системы облачных сервисов в реальном времени и последующая передача результатов пользователям накладывает слишком высокие требования к пропускной способности сети, которые практически невозможно обеспечить, что приводит к существенным задержкам. Функционирование распределенных автоматизированных систем контроля процессов энергоснабжения и энергопотребления также невозможно без сбора и обработки огромного объема телеметрических (сенсорных) данных с множества датчиков и измерительных приборов, размещаемых на объектах инженерных энергетических сетей. Сенсорные данные используются для мониторинга, диспетчерского контроля и управления пространственно-распределенными объектами и технологическими процессами энергопотребления [1,2]. Интеллектуализация предполагает разработку и внедрение технологий мониторинга, интеллектуального анализа и прогнозирования состояния и функционирования объектов, процессов и явлений. Широкое внедрение беспроводных технологий для дистанционного контроля объектов и процессов энергоснабжения является де-факто основой создания единой информационно-вычислительной среды для распределенного интеллектуального мониторинга пространственно-распределенных объектов и процессов на больших территориях [3]. Поэтому следует отметить актуальность задач синтеза и исследования моделей и способов организации распределенных вычислений, которые можно реализовывать непосредственно на оконечных пунктах сбора данных, которая подтверждается необходимостью решения комплекса проблем, связанных с управлением техногенными системами и технологическими процессами в сфере энергетического мониторинга.

Организация распределенной обработки данных в беспроводной сенсорной среде

Эволюционное развитие информационных, телекоммуникационных и Интернет технологий идет в направлении перехода к технологиям всепроникающих сетей (Ubiquitous Networks) и сетей Интернет вещей (Internet of Things) с возможность информации по принципу 4A (Anytime, Anythere, Anything, Anybody). Концепция Internet of Things сегодня приобретает реальные очертания, благодаря развитию технологической базы всепроникающих беспроводных сенсорных сетей и моделей организации распределенных вычислений. Существует три базовых модели распределенных вычислений: параллельные вычисления (GRID computing), облачные вычисления (cloud computing) и туманные вычисления (fog computing). Последнюю модель часто отождествляется с облачными вычислениями [4]. GRID вычисления базируются на архитектуре традиционных компьютерных сетей или мультипроцессорных систем и представляют собой организацию параллельного вычислительного процесса, когда части задания распределяются по свободным в данный момент времени ресурсам и позволяют решать задачи, сложные для отдельно взятого узла.

Облачные вычисления фактически определяют модель предоставления повсеместного сетевого доступа к общему пулу конфигурируемых ресурсов. Пользователь использует технологию «тонкого» клиента в качестве средства доступа к облачным приложениям, облачному хранилищу, облачным платформам и т.п., инфраструктура которых принадлежит провайдеру облачных услуг. Следует отметить, что модель облачных вычислений возникла, как развитие модели GRID вычислений, и в настоящее время облачная обработка данных определяется как технология распределенных вычислений, в рамках которой информация хранится в облачном хранилище, но кэшируется на клиентской стороне для аналитической обработки [5]. Туманные вычисления — это развитие технологии GRID вычислений, когда процесс обработки и хранения данных сдвигается на нижний уровень организации вычислительного процесса вычислений непосредственно на терминальные устройства с ограниченными вычислительными и энергетическими ресурсами.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.