Введение 4
1. Применение ParaView для визуализации данных 6
1.1 Визуализация данных 6
1.2 ParaView как средство для визуализации данных 7
1.3 Основы визуализации данных в ParaView 8
1.4 Модель данных VTK 9
1.5 Знакомство с интерфейсом ParaView 15
1.6 Использование Python скриптов в ParaView 19
2. Реализация собственного решения на основе ParaView 20
2.1 Предметная область 20
2.2 Структура решения 21
2.2.1 Определение подхода к визуализации 21
2.2.2 Средства ParaView для создания пользовательских надстроек .... 22
2.2.3 Получение данных с удаленного сервера 22
2.2.4 Обеспечение автономной работы 24
2.3 Визуализация статичных данных 24
2.3.1 Реализация визуализации скважины 24
2.3.2 Реализация визуализации области моделирования 25
2.3.3 Реализация визуализации точек ударов 26
2.3.4 Реализация визуализации точек наблюдения 27
2.3.5 Реализация визуализации залежей 28
2.3.6 Реализация визуализации параметрических полей 29
2.3.7 Реализация визуализации поверхностей 29
2.3.8 Реализация визуализации стратиграфии/литологии 31
2.4 Визуализация динамичных данных 33
2.4.1 Реализация визуализации событий 33
2.4.2 Реализация визуализации собственных векторов 35
2.4.3 Реализация визуализации волны 36
3. Улучшения 38
3.1 Ускорение визуализации групп объектов на сцене ParaView 38
3.2 Ускорение добавления объектов на сцену ParaView 38
3.3 Ускорение генерации объектов 38
3.4 Решение проблем с визуализацией объемных данных 39
Тестирование 40
Заключение 41
Список использованных источников 42
Приложение
Визуализация больших данных всегда была трудоемким процессом, но в то же время интересным процессом. Отобразить, например, распространение воздушных потоков по поверхности космического корабля представлялось крайне трудным. Но с развитием технологий, позволяющих в реальном времени отображать физические процессы все стало проще. Сейчас в каждом ПК присутствует хотя бы один графический процессор. А современные операционные системы включают в себя драйвера с поддержкой OpenGL, который де-факто стал стандартной библиотекой для 3D графики.
Визуализация теперь одна из форм общения. Всем издревле известно, как изображения хорошо передают информацию, идеи и чувства. Совсем недавно в нашу жизнь вошла 2D графика и широкий набор инструментов для работы с ней, в то время как 3D графика использовалась крайне редко в силу своей сложности. Теперь нет необходимости изучать несколько низкоуровневых библиотек для отображения данных, достаточно овладеть одним из программных средств. Выбор таких средств крайне широк и одним из них является открытый кроссплатформенный пакет для визуализации в исследовательских целях ParaView.
Актуальность и перспективы использования больших данных несомненны. А визуализация, как самое легко усваиваемое представление данных, вне конкуренции. Кроме того, в связи с тем, что импортозамещение, в данный момент, приоритетное направление, разработка собственного комплекса визуализации позволит сэкономить многим российским компаниям.
В России на данный момент нет аналогов разрабатываемому комплексу, что делает его более конкурентоспособным.
Цель данной работы - разработать комплекс визуализации больших данных, как статичных, так и динамичных.
Задачи данной работы:
1. Изучить возможности ParaView
2. Выделить основные элементы предметной области - георазведка
3. Применить ParaView для визуализации больших данных
4. Обеспечить автономность работы
5. Адаптировать комплекс под визуализацию статичных и динамичных данных, получаемых по сети
6. Увеличить скорость обработки и отображения данных
В результате выполнения дипломной работы был разработан комплекс визуализации больших данных с использованием ParaView, Python, C++. Комплекс позволяет оперативно получать и обрабатывать данные для последующей интерактивной визуализации. Для геологов данное решение упрощает работу с большими данными, а также дает возможность детального изучения геофизических процессов в реальном времени.
В процессе выполнения дипломной работы были решены следующие задачи:
• Выделены основные типы геологических объектов для визуализации
• ParaView применен для отображения данных
• Обеспечена автономность работы
• Визуализированы статичные и динамичные данные
• Ускорена обработка и отображение данных
ParaView является очень гибким в использовании инструментом визуализации данных. Богатый встроенный инструментарий открывает широкие возможности для анализа данных. Имеющиеся возможности развертывания серверов распределенного рендеринга и обработчиков данных в дальнейшем позволит сделать работу с большими данными доступным с мобильных устройств, планшетов.
Дальнейшее развитие:
• Добавление новых видов визуализации
• Редактирование полученных данных с последующей генерацией
• Работа с виртуальной реальностью
• Использование распределенного рендеринга для визуализации
• Работа на мобильных устройствах