с учетом трехмерного направления [x, y, z], поверхностного нормали в этом случае, как можно сделать аналогичным образом?
В первом случае вы квантуете полярную ориентацию градиентов theta
. Теперь вам нужно квантовать сферические ориентации theta
и phi
в двумерной гистограмме.
ли мы просто проецируем на одну плоскости и использовать этот угол
биннинг сферы определяет, как вы суммировать информацию, чтобы построить компактную еще описательную гистограмму.
Проецирование нормальный не является хорошей идеей, если theta
важнее phi
, просто использовать больше бункеров для theta
EDIT
Тимоти Shields точки в своем комментарии, и его ответ, что регулярное биннинг theta
и phi
не будет производить регулярное биннинг по сфере, поскольку бункеры будут сгруппированы по полюсам.
Его ответ дает решение.В качестве альтернативы, нерегулярный биннинг описан здесь может быть взломаны следующим образом:
Phi
регулярно квантуются в [0,pi]
. Для theta
вместо квантования диапазона [0,pi]
вместо этого квантуется диапазон [-1,1]
;
Для каждого квантованного значения u
в [-1,1]
, theta
вычисляется как
theta = arcsin(sqrt(1 - u * u)) * sign(u)
sign(u)
возвращается -1
, если u
является отрицательным, в противном случае 1
.
Вычисленный theta
вместе с phi
производит регулярное квантование по сфере.
Чтобы получить представление об приведенном выше уравнении, посмотрите на это article. Однако он описывает ситуацию в контексте случайной выборки.
EDIT
В вышеприведенном хака Тимоти Шилдс указывает, что только площадь бункеров считается. Валентность вершин (точка пересечения соседних бинов) не будет регулярной из-за сингулярности полюсов.
Хлопок для предыдущего взлома будет состоять в том, чтобы переустановить ящики в обычном quadrilateral mesh и сохранить обычную площадь.
Эвристика для оптимизации этой проблемы с глобальными ограничениями наличия той же валентности и области может быть вдохновлена от Integer-Grid Maps Quad Meshing.
С двумя хаками этот ответ тоже hacky и немного вне контекста, в отличие от ответа Тимоти Шилдса.
Спасибо Тимоти, это звучит как хороший подход. Я также недавно прочитал статью, где они квантовали нормали поверхности, измеряя углы между нормальными и предварительно вычисленными векторами, которые расположены вокруг правой круглой формы конуса. Я добавил ссылку на эту статью в вопросе (раздел 3.3.2 в последнем абзаце), похоже ли это на то, что вы говорите? Спасибо – Aly
Очень похожая идея в этой статье. –
Я буду принимать ваш ответ, поскольку он правильный, но очень хотел бы, чтобы вы могли объяснить, как векторы, описанные в этой статье, предварительно вычислены. – Aly