Згортання півсферних гармонік


10

Сферична гармоніка (SH) - це спосіб представити низькочастотні сферичні функції з лише кількома коефіцієнтами. Вони мають деякі приємні математичні властивості, наприклад, згортка з функцією ядра h (x) (яка має кругову симетрію) може бути обчислена як

(h * f) ^ m_l = \ sqrt {\ frac {4 \ pi} {2l + 1}} h ^ 0_l f ^ m_l

У разі згортання з косинусною часткою для рангу 3 SH це призводить до простого масштабування смуг з коефіцієнтами

[\ pi, \ frac {2 \ pi} {3}, \ frac {\ pi} {4}]

У багатьох випадках, наприклад, падаюче світло для заданої точки на непрозорій поверхні, повна сферична інформація не потрібна, оскільки половина сфери все одно дорівнює нулю / невизначено / невикористовується. Таким чином, народилися півсферичні гармоніки (HSH).

Як згортання з довільним ядром (з круговою симетрією) працює для HSH? Чи можна збільшити згортання від SH або є якийсь документ, який детально розглядає це?


Ви пишете "Довільне ядро ​​з круговою симетрією": Чи це не означає, що вам насправді потрібна лише згортання з частиною (півсферична зональна гармонія)? Якщо ваша вісь симетрії відрізняється, ви все одно можете використовувати її, додаючи обертання до і після Зональної згортки. Як виконувати обертання, описано в статті. Інтеграція із зональною частиною (m = 0) повинна бути порівняно простою. Однак, як і у сфері сферичних гармонік, це не буде аналітично вирішимим для довільних функцій. Прості речі, такі як косинусні часточки, повинні працювати добре (ще не намагалися).
Wumpf

@Wumpf Ви маєте рацію, це майже все, що зводиться. Для SH я би просто масштабував "кожну смугу f відповідним терміном m = 0 від [функції ядра] h" (цитуючи Дурні хитрощі SH-Sloan). Питання в тому, чи можу я зробити те ж саме для HSH?
Девід Курі

Відповіді:


3

Ця відповідь намагається дати короткий огляд деяких важливих аспектів. Оскільки визначення HSH досить складне, і я не міг знайти огляд деяких попередньо оцінених функцій, я не наводив приклади просто тому, що зараз це займе у мене занадто багато часу.

Опис проблеми та груба сила

Щоб визначити згортання будь-якої з будь-яким набором базисної функції і, таким чином, обчисливши коефіцієнти, нам, як правило, потрібно обчислити інтеграл по області (= сфера для SH, півсфера для HSH). Все, що нам потрібно зробити, щоб представити півсферичну функцію f , яка визначається через кути theta ("вгору / вниз") і phi ("вліво / вправо"), через коефіцієнт c для базових функцій HSH H :

\ int_0 ^ {2 \ pi} \ int_0 ^ {\ frac {2} {\ pi}} f (\ theta, \ phi) \ cdot H_l ^ m (\ theta, \ phi) \ cdot sin (\ theta) \ , \, \ mathrm {d} \ theta \ mathrm {d} \ phi

Гріх (тета) існує , тому що ми інтегруємо по поверхні (напів-) сфері. Концептуально розмір ділянки, що виникає внаслідок зміни фі, є більшим чи меншим на нинішній теті. Більше про це тут

Якщо ми не надто переймаємося точністю або витратою часу на обчислення, ми можемо вирішити це просто шляхом вибірки: генерувати однаково розподілені (!) Напрямки на півкулі, обчислити добуток f і H та середні результати (якщо ви справді однаково розподілені бали, вам не потрібен гріх (тета) ).

Почніть з аналітичного рішення

Звичайно, ми б хотіли, щоб для нашої функції було аналітичне рішення, але саме тут все може стати дуже складним. В якості першого кроку нам може знадобитися перетворити функцію, задану в декартових напрямках, в сферичні координати. Ця частина все ще проста, просто замініть всі свої x, y і z на наступні:

(x, y, z) \ rightarrow (\ sin \ theta \ cos \ phi, \ sin \ theta \ sin \ phi, \ cos \ theta)

Зауважимо, що це дає нам систему, де вісь z є "вгору" півкулі (theta = 0), яка повинна бути представлена ​​HSH. Після цього можливо вже можна вставити все в систему комп’ютерної алгебри та вирішити рівняння. Не намагайтеся вирішити для всіх m & l, а скоріше спробуйте один коефіцієнт за один раз, оскільки навряд чи є компактний вираз, який описує їх усі відразу. Визначення HSH є відносно складним, що робить дуже стомлюючим оцінювати ці функції. У даній роботі в декартових координатах згадуються функції основи HSH нульового та першого порядку.

Примітки до обертань та зональних гармонік

Функції, які мають симетричну обертання навколо цієї осі z, є дуже хорошими кандидатами для успішного аналітичного виведення, оскільки вони впливають лише на зональні коефіцієнти, які всі коефіцієнти з індексом m дорівнюють нулю. Це особливо корисно для більш загальної сферичної гармоніки, де існує проста формула, яка дозволяє повертати будь-яке представлення зональних сферичних гармонік у довільному напрямку, в результаті чого сферичне представлення гармонік не втрачає даних (див. Тут). Це означає, що ви можете отримати коефіцієнти ZSH, якщо припустити, що ваша радіальна симетрична "функція вказує на z" і повернути її потім в будь-який потрібний напрямок. Це прекрасно працює, наприклад, з різними варіаціями косинусної частки, а також дає фактори, про які ви згадали у питанні.

Тепер погана новина: Для HSH будь-яке обертання функції навколо іншої осі, ніж z, втрачає, оскільки ваша функція буде "торкатися" нижньої невизначеної півкулі після обертання. Тому також немає зручної формули обертання "Hemi Zonal to HSH". Натомість існує кілька способів зробити це з різними недоліками. Детальніше дивіться у статті та презентації .


До речі: все це простіше з Н-основою , яка є і півсферичною (але спочатку визначається лише для обмеженої кількості смуг частот).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.