`html
В этом документе представлен обзор Apache Sedona и Mitsuba 3, двух разных проектов, ориентированных на пространственные вычисления и рендеринг соответственно. Apache Sedona — это мощный механизм пространственных вычислений для крупномасштабного анализа данных, а Mitsuba 3 — это исследовательско-ориентированная система рендеринга, обеспечивающая высокую производительность и дифференцируемость. Оба проекта предлагают обширную документацию и поддержку сообщества.
Присоединяйтесь к сообществу
Следите за новостями Седоны в Твиттере: Sedona@Twitter.
Присоединяйтесь к сообществу Sedona Discord:
Присоединяйтесь к ежемесячным часам работы сообщества Sedona: Календарь Google, по вторникам с 8:00 до 9:00 по тихоокеанскому времени, каждые 4 недели.
Sedona JIRA: ошибки, запросы на извлечение и другие подобные проблемы
Списки рассылки Sedona: [email protected]: разработка проектов, общие вопросы или учебные пособия.
Что такое Апач Седона?
Apache Sedona™ — это механизм пространственных вычислений, который позволяет разработчикам легко обрабатывать пространственные данные в любом масштабе в современных кластерных вычислительных системах, таких как Apache Spark и Apache Flink.
Разработчики Sedona могут выражать свои задачи по обработке пространственных данных с помощью Spatial SQL, Spatial Python или Spatial R. Внутри Sedona обеспечивает загрузку, индексирование, секционирование пространственных данных, а также функции обработки/оптимизации запросов, которые позволяют пользователям эффективно анализировать пространственные данные в любом масштабе.
Функции
Некоторые из ключевых особенностей Apache Sedona включают в себя:
Это некоторые из ключевых функций Apache Sedona, но в зависимости от конкретной версии и конфигурации он может предлагать дополнительные возможности.
Нажмите и сразу же начните играть в интерактивный блокнот Sedona Python Jupyter!
Когда использовать Седону?
Варианты использования:
Apache Sedona — это широко используемая среда для работы с пространственными данными, имеющая множество различных вариантов использования и приложений. Некоторые из основных вариантов использования Apache Sedona включают в себя:
Пример кода:
В этом примере загружаются записи о поездках на такси по Нью-Йорку и информация о зонах такси, хранящаяся в виде файлов .CSV на AWS S3, в пространственные кадры данных Sedona. Затем он выполняет пространственный SQL-запрос к наборам данных о поездках на такси, чтобы отфильтровать все записи, кроме тех, которые находятся в районе Манхэттена в Нью-Йорке. В примере также показана операция пространственного соединения, которая сопоставляет записи о поездках на такси с зонами в зависимости от того, находится ли поездка на такси в пределах географических границ зоны. Наконец, последний фрагмент кода объединяет выходные данные Sedona с GeoPandas и отображает пространственное распределение обоих наборов данных.
Загрузка данных о поездках на такси и зонах такси по Нью-Йорку из файлов CSV, хранящихся на AWS S3.
Пространственный SQL-запрос для возврата только поездок на такси на Манхэттене
Пространственное соединение между фреймом данных такси и фреймом данных зоны для поиска такси в каждой зоне
Показать карту загруженных пространственных фреймов данных с помощью GeoPandas
Докер-образ
Мы предоставляем образ Docker для Apache Sedona с Python JupyterLab и одноузловым кластером. Изображения доступны на DockerHub.
Здание Седоны
Чтобы установить пакет Python:
Чтобы скомпилировать исходный код, посетите сайт Sedona.
Модули в исходном коде
Документация
Пожалуйста, посетите веб-сайт Apache Sedona для получения подробной информации.
Питаться от
пример:
Мицуба Рендерер 3
Документация | Обучающие видео | Линукс | MacOS | Окна | ПиПИ |
---|---|---|---|---|---|
️
Предупреждение
️
В настоящее время в мире ведется большой объем недокументированной и нестабильной работы.
master
ветка. Мы настоятельно рекомендуем вам воспользоваться нашим
последний выпуск
до дальнейшего уведомления.
Если вы уже хотите опробовать предстоящие изменения, ознакомьтесь с
это руководство по портированию.
Он должен охватывать большинство новых функций и предстоящих кардинальных изменений.
Введение
Mitsuba 3 — это исследовательская система рендеринга прямого и обратного света.
транспортное моделирование, разработанное в EPFL в Швейцарии.
Он состоит из базовой библиотеки и набора плагинов, реализующих функциональность.
начиная от материалов и источников света и заканчивая полными алгоритмами рендеринга.
Mitsuba 3 является перенацеливаемой : это означает, что базовые реализации и
Структуры данных могут трансформироваться для выполнения различных задач. Для
Например, один и тот же код может моделировать скалярный (классический по одному лучу) транспорт RGB
или дифференциальный спектральный транспорт на графическом процессоре. Все это основано на
Dr.Jit — специализированный JIT -компилятор, разработанный специально для этого проекта.
Основные характеристики
Кроссплатформенность : Mitsuba 3 была протестирована на Linux ( x86_64
), macOS.
( aarch64
, x8664
) и Windows ( x8664
).
Высокая производительность : базовый компилятор Dr.Jit объединяет код рендеринга.
в ядра, которые достигают высочайшей производительности, используя
серверная часть LLVM, ориентированная на ЦП, и серверная часть CUDA/OptiX
ориентированы на графические процессоры NVIDIA с аппаратным ускорением трассировки лучей.
Python прежде всего : Mitsuba 3 глубоко интегрирован с Python. Материалы,
текстуры и даже полные алгоритмы рендеринга могут быть разработаны на Python,
который система JIT-компилирует (и, при необходимости, дифференцирует) на лету.
Это позволяет проводить эксперименты, необходимые для исследований в области компьютерной графики и
другие дисциплины.
Дифференциация : Mitsuba 3 — это дифференцируемый рендерер, то есть он
может вычислять производные всей симуляции относительно входных данных
такие параметры, как поза камеры, геометрия, BSDF, текстуры и объемы. Это
реализует последние алгоритмы дифференцируемого рендеринга, разработанные в EPFL.
Спектральный и поляризационный : Mitsuba 3 можно использовать как монохроматический.
рендерер, рендерер на основе RGB или спектральный рендерер. Каждый вариант может
при необходимости, при необходимости, учтите эффекты поляризации.
Обучающие видеоролики, документация
Мы записали несколько видеороликов на YouTube, которые дают краткое представление.
Мицуба 3 и Доктор Джит. Помимо этого вы можете найти полные блокноты Juypter.
охватывающий различные приложения, практические руководства и справочную документацию.
на прочтенной документации.
Установка
Мы предоставляем предварительно скомпилированные двоичные колеса через PyPI. Установить Mitsuba таким способом так же просто, как запустить
pip установить Мицубу
в командной строке. Пакет Python по умолчанию включает тринадцать вариантов:
scalar_rgb
scalar_spectral
scalarspectralpolarized
llvmadrgb
llvmadmono
llvmadmono_polarized
llvmadspectral
llvmadspectral_polarized
cudaadrgb
cudaadmono
cudaadmono_polarized
cudaadspectral
cudaadspectral_polarized
Первые два выполняют классическое моделирование по одному лучу с использованием RGB
или спектральное представление цвета, тогда как последние два могут использоваться для обратного
рендеринг на CPU или GPU. Чтобы получить доступ к дополнительным вариантам, вам необходимо
скомпилируйте собственную версию Dr.Jit с помощью CMake. Пожалуйста, ознакомьтесь с
документация
для получения подробной информации об этом.
Требования
Python >= 3.8
(необязательно) Для вычислений на графическом процессоре: Nvidia driver >= 495.89
(необязательно) Для векторизованных/параллельных вычислений на ЦП: LLVM >= 11.1
Использование
Вот простой пример «Hello World», который показывает, насколько просто визуализировать
сцена с использованием Mitsuba 3 из Python:
# Импортируйте библиотеку, используя псевдоним "mi"import mitsuba as mi# Установите вариант renderermi.setvariant('scalarrgb')# Загрузите сценуscene = mi.loaddict(mi.cornellbox())# Отрисуйте сценуimg = mi. render(scene)# Запишите визуализированное изображение в файл EXRmi.Bitmap(img).write('cbox.exr')
Учебные пособия и блокноты с примерами, охватывающие различные приложения, можно найти.
в документации.
О
Этот проект создал Венцель Якоб.
Значительные функции и/или улучшения кода были внесены
Себастьян Шпейерер,
Николя Руссель,
Мерлин Нимье-Дэвид,
Делио Вичини,
Тициан Зельтнер,
Батист Николе,
Мигель Креспо,
Винсент Лерой и
Цзыи Чжан.
При использовании Mitsuba 3 в академических проектах указывайте:
@software{Mitsuba3,title = {рендерер Mitsuba 3},author = {Венцель Якоб и Себастьян Шпейерер и Николя Руссель и Мерлин Нимьер-Давид и Делио Вичини и Тициан Зельтнер и Батист Николе и Мигель Креспо и Винсент Лерой и Зийи Чжан},note = {https://mitsuba-renderer.org},версия = {3.1.1}, год = 2022}
`