2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 14:28 


14/01/15
10
Здравствуйте, математики! Помогите инженеру.

Как мне закодировать ориентацию объекта в 3D-пространстве с помощью некого вектора в $R^N$, например вектора единичной длины на поверхности 4D-сферы, чтобы близкие значения ориентации кодировались близкими (например, по L2), значениями вектора? Хотя бы в маленькой локальной окрестности.

Квартернионы пробовал, не помогает - квартернион перещёлкивает знак при малом изменении угла.

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 14:44 
Заслуженный участник


05/08/14
1564
Инженеру должны быть знакомы углы Эйлера. Еще существуют для этих целей матрицы вращения, матрицы Паули.

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 17:16 


14/01/15
10
Углы Эйлера щёлкают в определённых точках, у матриц представление неоднозначное, верно?

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 17:29 
Заслуженный участник
Аватара пользователя


23/07/08
10648
Crna Gora
А если противоположные точки на четырехмерной сфере будут соответствовать одному вращению, это допустимо?

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 17:39 
Заслуженный участник
Аватара пользователя


06/10/08
6422
Hexagonal в сообщении #1279455 писал(а):
Квартернионы пробовал, не помогает - квартернион перещёлкивает знак при малом изменении угла.
Кватернионы подойдут, если учесть, что $q$ и $-q$ соответствуют одному и тому же вращению, т.е. в качестве меры близости брать $\min \{\|q_1 - q_2\|, \|q_1 + q_2\| \}$

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 17:54 


14/01/15
10
Спасибо за ответы!

Да, вот если противоположные точки одному вращению, я даже догадался.

Но тогда не получится их, скажем, усреднить в небольшой окрестности или дисперсию посчитать. И пронормировать тоже не выйдет, ну загоню я их на одну полусферу, всё равно проблемы будут на границе.

То есть поверхность сферы никакой размерности мне не поможет?

Вот с 2д ориентацией просто как, взял комплексное число, оно на единичном кольце лежит, да, усреднять это не совсем корректная операция, но в небольшой окрестности всё-таки можно (потом перенормировать), хотя бы приближённо то что нужно.

А здесь выходит, никак? Топология не позволяет? Но ведь топология локально гладкая же у них, или я чего-то не понимаю. Имею в виду ориентацию 3D-объекта в пространстве. Неужели мы не можем её как то гладко пронумеровать R^N векторами?

-- 28.12.2017, 19:08 --

А если противоположные точки на сфере соответствуют одному вращению, может, это уже решает мои прикладные задачи (для совсем маленькой окрестности, погрешность посчитать): беру первую точку, потом вторую, если она в небольшой окрестности (хоть +p, хоть -p), меняю её знак так, чтобы она ближе была, потом беру третью точку, подгоняю к среднему первых двух и так далее. Кажется, уже решается?

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 18:48 
Заслуженный участник
Аватара пользователя


23/07/08
10648
Crna Gora
Hexagonal в сообщении #1279527 писал(а):
Но тогда не получится их, скажем, усреднить в небольшой окрестности или дисперсию посчитать. И пронормировать тоже не выйдет, ну загоню я их на одну полусферу, всё равно проблемы будут на границе.
По-моему, ничего такого Вам опасаться не нужно. Границ никаких нет. И полусфер, в общем, тоже нет (по крайней мере, пока мы говорим о небольшой окрестности).
Я имел в виду представление:
$A=\begin{bmatrix}\lambda^2-\mu^2-\nu^2+\rho^2 & 2(\lambda\mu - \nu\rho) & 2(\nu\lambda+\mu\rho) \\2(\lambda\mu + \nu\rho) & \mu^2-\nu^2-\lambda^2+\rho^2 & 2(\mu\nu-\lambda\rho) \\2(\nu\lambda-\mu\rho) & 2(\mu\nu+\lambda\rho) & \nu^2-\lambda^2-\mu^2+\rho^2 \end{bmatrix}$

$\lambda^2+\mu^2+\nu^2+\rho^2=1$

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение28.12.2017, 20:38 
Заслуженный участник


27/04/09
28128
Ну, кватернионы, вроде, самое лучшее, что есть на свете (и при желании их можно под конец переводить в матрицу поворота, хотя применять их к вектору можно весьма экономично с помощью чего-то, напоминающего формулу Родрига (или формулы, не знаю — кажется, его именем названо несколько аналогичных формул для разных формализмов — и вот тут тоже одна)).

Hexagonal в сообщении #1279527 писал(а):
Но тогда не получится их, скажем, усреднить в небольшой окрестности или дисперсию посчитать. И пронормировать тоже не выйдет, ну загоню я их на одну полусферу, всё равно проблемы будут на границе.
А какой смысл у дисперсии или усреднения? Нельзя усреднять и брать дисперсию у чего попало просто покоординатно, должен быть геометрический смысл. Вот его найдёте — и проблема обязательно решится. И вот кстати кватернионное представление позволяет легко линейно интерполировать поворот.

Вообще есть подозрение на проблему XY: для чего вы хотите использовать это усреднение ориентации/поворота? Может быть, есть другой способ.

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение29.12.2017, 17:11 


14/01/15
10
svv
Спасибо, а что это за матрица 3x3? Матрица поворота? Кстати, они вроде бы однозначные.

arseniiv
Смысл у усреднения -- уточнить ориентацию от разных датчиков, смысл дисперсии, например, оценить погрешность угла.

Но вообще в идеале если бы работать как с координатами, например один датчик выдал координаты (x, y, z) и матрицу ковариации, то есть плотность вероятности наших координат представляем в виде ориентированного гауссовского эллипсоида. Потом мы взяли эти данные от нескольких датчиков и объединили, сделав координаты точнее, например, один неточно вдоль видит, другой поперёк, а вместе они уже здорово.

А вот теперь как такое сделать не для позиции, а для ориентации?

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение29.12.2017, 17:53 
Заслуженный участник


27/04/09
28128
Hexagonal в сообщении #1279871 писал(а):
Смысл у усреднения -- уточнить ориентацию от разных датчиков
Но ведь датчики выдают не ориентацию, она собирается позже. Может, стоит усреднять раньше то, из чего она вычисляется?

Кстати, допустим, ориентация определяется измерением положения концов двух или трёх этаких ортогональных друг другу палочек, и эти координаты измеряются с ошибками. Тогда кажется натуральнее работать с матрицами (усреднять их там…) — просто надо будет не забыть вместо результата взять ортогональную компоненту его полярного разложения.

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение29.12.2017, 18:32 
Заслуженный участник
Аватара пользователя


23/07/08
10648
Crna Gora
Hexagonal в сообщении #1279871 писал(а):
Спасибо, а что это за матрица 3x3? Матрица поворота? Кстати, они вроде бы однозначные.
Да, это матрица поворота. Видно, что если у всех четырёх координат сменить знак, матрица не изменится, так как все слагаемые в её элементах — второй степени по координатам. Но, если отождествить противоположные точки $S^3$ (ну топология такая), всё взаимно однозначно и нигде никаких, как Вы говорите, «перещёлкиваний» :-) .

 Профиль  
                  
 
 Re: Представление вращения в 3D с непрерывной топологией
Сообщение12.01.2018, 17:58 


14/01/15
10
Вот ещё, если кто будет решать аналогичную задачу, статья прямо в точку:

Integrating Generic Sensor Fusion Algorithms with Sound State Representations through Encapsulation of Manifolds
https://arxiv.org/abs/1107.1119

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group