Шевченко Наталья Григорьевна

Донецкий национальный технический университет
Факультет: "Вычислительная техника и информатика" (ВТИ)
Специальность: "Программное обеспечение автоматизированных систем" (ПО)

Автореферат к магистерской работе на тему:

"Исследование способов программной реализации функций визуализации параметров технологического процесса агломерационного цеха"

Введение
    1 Представление и обработка двумерных данных
      1.1 Представление двумерных данных в форме цифровых изображений
    2 Классификация моделей и методов визуализации
      2.1 Полигональные сетки
      2.2 Воксельные модели
      2.3 Точечное представление
      2.4 Иерархические представления
    3 Сравнение представлений и методов их визуализации
Заключение
Список литературы


Введение

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

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

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

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

Цели и задачи исследования

Можно сформулировать следующие цели и задачи работы:

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

1 Представление и обработка двумерных данных

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

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

Первая из таких задач - чтение исходных данных пользователя, которые, как правило, хранятся в виде файлов различного типа. Способ хранения данных во многом определяется способом их получения, например данные могут являться результатом работы пользовательской программы, или информацией, полученной от некого прибора. Файлы, хранящие данные, могут быть текстовыми (матрицы или списки чисел), двоичными (байтовые массивы, реализующие тот или иной тип данных), представленными в специализированном научном или техническом формате (CEOS, HDF и т.п.), стандартными графическими файлами (BMP, TIFF и т.д.).

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

Третья задача - это обработка и анализ данных. При этом обычно необходимо применять следующие инструменты:

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

И последний важный аспект - возможность представление данных и результатов их анализа в виде, готовом для добавления в отчет или статью. В частности, для пользователя будет удобно, если все графики, шкалы и гистограммы, полученные в ходе анализа и визуализации, можно будет переносить в другие программы (например, Microsoft Word или CorelDraw) в векторной форме. Такая форма представления очень удобна как при печати статьи, так и при выводе результатов на большой плакат.

1.1 Представление двумерных данных в форме цифровых изображений

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

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

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

2 Классификация моделей и методов визуализации

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

  1. Поверхностные / объемные;
  2. Связанные / дискретные;
  3. Явные / параметрические.

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

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

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

Методы визуализации можно условно разделить на проекционные методы и методы трассировки лучей.

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

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

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

2.1 Полигональные сетки

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

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

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

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

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

Гораздо сложнее обстоит ситуация с представлением больших объемов данных и поддержкой различных уровней детализации. Структура полигональных сеток линейна и они не обеспечивают поддержки многомасштабности, поэтому работа с большими сетками затруднена и требет различных, зачастую вычислительно сложных методов упрощения. Практически все технологии упрощения сеток используют некоторые вариации или комбинации следующих механизмов: сэмплирования (sampling), прореживания (decimation), адаптивного разбиения (adaptive subdivision) и слияния вершин (vertex merging).

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

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

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

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

Рисунок 1 - Слияние ребер

2.2 Воксельные модели

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

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

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

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

Обобщим свойства воксельных представлений в приложении к поставленной задаче.

Преимущества: простая, регулярная структура; аппаратная поддержка.

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

2.3 Точечное представление

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

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

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

Рисунок 2 - Дырки при визуализации точечной модели

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

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

2.4 Иерархические представления

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

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

3 Сравнение представлений и методов их визуализации

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


Заключение

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



Литература

  1. Шикин Е.В., Боресков А.В. Компьютерная графика. Полигональные модели. -М.: ДИАЛОГ-МИФИ, 2001.-464с.

  2. Никулин Е.А. Компьютерная геометрия и алгоритмы машинной графики. -СПб.: БХВ-Петербург, 2003. -560с.

  3. Порев В.Н. Компьютерная графика. -СПб.: БХВ-Петербург, 2002. -432с.

  4. Тихомиров Ю. Программирование трехмерной графики. -СПб.: БХВ-Петербург, 2001. -256с.

  5. Томпсон Н. Секреты программирования трехмерной графики для Windows 95: Пер. с англ. -СПб.: Питер, 1997. -352с.

  6. Майкл, Ласло Вычислительная геометрия и компьютерная графика на С++: Пер. с англ. -М.: "БИНОМ", 1997. -304с.

  7. Роджерс Д. Алгоритмические основы машинной графики. -М.:Мир, 1989. -512с.

  8. Эйнджел Эдвард Интерактивная компьютерная графика. Вводный курс на базе OpenGL, 2 изд.: Пер. с англ. - М.: Издательский дом "Вильямс", 2001. - 592 с.

  9. Kilgard M. OpenGL Programming for the X Windows System. - Addeson-Wesley, Reading, MA, 1996.

  10. Фоли Дж., ван Дэм А. Основы интерактивной машинной графики: В 2-х книгах. - М.: Мир, 1985.


<< В начало


© 2004 Шевченко Н.
email: shetata@yandex.ru