презентация - Математико-механический факультет СПбГУ

реклама
Санкт-Петербургский Государственный Университет
Математико-механический Факультет
Распараллеливание для
итерационной триангуляции
с локальным укрупнением
Дипломная работа
Парахин М.В., студент 543 группы
Кафедра параллельных алгоритмов
Научный руководитель – д.ф.-м.н. Демьянович Ю.К.
Рецензент – д.ф.-м.н. Бурова И.Г.
Разложение двумерного
числового потока
• Построение правильной триангуляции
числового потока
• Калибровочные соотношения для
функций Куранта
• Построение адаптивных сплайнвэйвлетных разложений
2
Построение триангуляции
3
Построение триангуляции
4
Альтернативная триангуляция
5
Альтернативная триангуляция
6
Укрупнение триангуляции
7
Сохранение структуры при
укрупнении
Поворот на
и растяжение в
раз
8
Структура барицентрических
звёзд исходной триангуляции
• вершины первого типа – восемь
треугольников:
9
Структура барицентрических
звёзд исходной триангуляции
• вершины второго типа – четыре
треугольника:
10
Барицентрические звёзды
укрупнённой триангуляции
• вершины первого типа – восемь
треугольников:
11
Барицентрические звёзды
укрупнённой триангуляции
• вершины второго типа –
шесть треугольников:
12
Барицентрические звёзды
укрупнённой триангуляции
• вершины второго типа – шесть
треугольников:
13
Барицентрические звёзды
укрупнённой триангуляции
• вершины третьего
типа – восемь
треугольников:
14
Барицентрические звёзды
укрупнённой триангуляции
• вершины третьего
типа – восемь
треугольников:
15
Компьютерная реализация.
Хранение данных
• Область построения триангуляции:
x1, x2, y1, y2 – чётные
• Вершины - хэш-таблица Vertices + класс Point
• Point – x, y, GetHashCode(), inside(x1,x2,y1,y2)
• Треугольники – Triangles + Triangle
• Triangle – points[], GetHashCode()
16
Компьютерная реализация.
Построение триангуляции
• Цикл по точкам D
• Для вершин (2x,2y) – первого типа – p1:
• Для каждого треугольника k=1..8:
– Проверка принадлежности вершин
треугольника области D
– Добавление вершин k в Vertices
и треугольника k в Triangles
17
Компьютерная реализация.
Укрупнение триангуляции
• Внутри области
•
- в стандартном для C# виде –
вычисление обратной польской записи
• Создание таблицы вершин первого типа FirstTypeVertices
18
Компьютерная реализация.
Укрупнение триангуляции
• Для вершин из FirstTypeVertices:
– Проверка, что все получаемые укрупнённые
треугольники k = 1..8 лежат в D0
– Для всех k удаление исходных треугольников
и их общей вершины, не
принадлежащей k
– Добавление k в Triangles
– Удаление соседних вершин
первого типа из
19
19
FirstTypeVertices
Компьютерная реализация.
Результат выполнения
20
Параллельная версия.
Построение триангуляции
• Parallel.For - для вершин (2x,2y) –
обработка на отдельном процессоре:
• Проверка принадлежности k области D,
• Добавление вершин k в localVertices
• Добавление k в localTriangles
• Объединение локальных
результатов – требуется
синхронизация
21
Параллельная версия.
Укрупнение триангуляции
• Предварительные вычисления – список
вершин первого типа для укрупнения
• Для полученного списка Parallel.ForEach
и обработка на отдельном процессоре
• Укрупнение для вершины
первого типа аналогично
• Синхронизация при
удалении элементов
22
22
Параллельная версия.
Численные результаты
• 160 000 треугольников
23
Параллельная версия.
Общее время работы
• 160 000 треугольников
24
Параллельная версия.
Ускорение триангуляции
• 160 000 треугольников
25
Параллельная версия.
Ускорение укрупнения
• 160 000 треугольников
26
Планы дальнейших разработок
• Улучшение параллельной версии
алгоритма
• Повышение «гладкости» укрупнения
• Разработка второго и далее укрупнений
• Применение к сплайн-вэйвлетной
обработке двумерных потоков
• Алгоритм сжатия изображений на
основе адаптивных сплайн-вэйвлетных
преобразований.
27
СПАСИБО ЗА ВНИМАНИЕ!
СПбГУ, Математико-механический факультет, 2013 год
Список литературы
• [1] Арсентьева Е.П., Демьянович Ю.К. Адаптивные
сплайн-вэйвлетные разложения двумерных потоков
числовой информации. СПб. 2011.
• [2] Романовский Л.М. Локальное укрупнение
триангуляции и калибровочные соотношения. СПб.
2011.
• [3] Демьянович Ю.К. Аппроксимация на многообразии
и минимальные сплайны. СПб. 1994.
29
Скачать