SE(3)
- También llamado: special Euclidean group, SE3, rigid-body transformation group
- Categoría: Foundations & spatial maths › Frames & transforms
- Etiquetas: lie-groups, rigid-body-motion, spatial-math, kinematics, pose-estimation
El grupo de los movimientos de cuerpo rígido en el espacio 3D, cada rotación combinada con cada traslación, que suele escribirse como matrices de transformación homogénea de 4×4. Describe poses y cambios de pose.
Definición
SE(3), el grupo euclídeo especial en tres dimensiones, contiene todas las transformaciones de cuerpo rígido: una rotación R de SO(3), el grupo de las matrices ortonormales de 3×3 con determinante +1, junto con un vector de traslación p. Escrita como una matriz homogénea de 4×4 con R arriba a la izquierda, p en la columna de la derecha y [0 0 0 1] como fila inferior, la composición de dos movimientos es una multiplicación de matrices, y la inversa tiene rotación Rᵀ y traslación −Rᵀp. Un elemento de SE(3) puede describir una pose, la posición y la orientación de un sistema de coordenadas respecto a otro, o un movimiento que lleva puntos de un sistema de coordenadas a otro. Tiene seis grados de libertad, tres de rotación y tres de traslación; «especial» significa que se excluyen las reflexiones.
SE(3) es un grupo de Lie, un espacio curvo y suave que además es un grupo, y no es un espacio vectorial: sumar dos poses o promediar matrices elemento a elemento no da una pose válida. Su espacio tangente en la identidad, el álgebra de Lie se(3), está formado por giros (twists) de seis dimensiones que combinan velocidad angular y lineal. La aplicación exponencial convierte un giro en una transformación, y el logaritmo hace el camino inverso. Estas aplicaciones están en la base de la fórmula del producto de exponenciales para la cinemática, de la optimización sobre la variedad que usan SLAM y los solvers de grafos de poses, donde las actualizaciones se aplican como pequeños giros, y de la interpolación y la incertidumbre correctas para poses. Su equivalente plano SE(2) tiene tres grados de libertad, x, y y el rumbo, y se usa para robots móviles y para objetos restringidos a un plano, como un objeto pinzado entre las mordazas paralelas de una pinza.
Las poses en SE(3) pueden almacenarse como matrices homogéneas, como una rotación (matriz de rotación, cuaternión unitario o eje-ángulo) más un vector de traslación, como cuaterniones duales o en coordenadas de giro. En el aprendizaje, las redes que generan poses deben tratar la parte de rotación con cuidado, ya que los cuaterniones cubren cada rotación dos veces y algunas parametrizaciones son discontinuas. Las redes SE(3)-equivariantes incorporan la simetría del grupo en su estructura, de modo que sus salidas se transforman de forma coherente cuando la escena de entrada se rota o se traslada.
Por qué importa
Cada sistema de coordenadas, cada parámetro extrínseco de un sensor, cada objetivo del efector final y cada pose de objeto en un robot es un elemento de SE(3). Tratarlo como un grupo y no como doce números independientes evita errores comunes como matrices de rotación que derivan, un orden de composición incorrecto y promedios no válidos, y hace que la optimización y las estimaciones de incertidumbre sean correctas.
Aplicaciones clave
- Cinemática directa y objetivos de pose del efector final
- SLAM, odometría visual y optimización de grafos de poses
- Estimación de la pose de objetos para el agarre
- Interpolación de trayectorias entre poses
- Calibración de los parámetros extrínsecos de sensores
- Aprendizaje equivariante para manipulación
En la práctica
En una tarea de recogida, la cinemática directa da la pose de la pinza en el sistema de coordenadas de la base, la calibración mano-ojo da la pose de la cámara en el sistema de coordenadas de la pinza y un estimador de pose da la pose del objeto en el sistema de coordenadas de la cámara. La pose del objeto en el sistema de coordenadas de la base es el producto de las tres transformaciones, en ese orden, y una convención de nombres coherente para los sistemas de coordenadas evita que se confunda el orden. Al fusionar varias estimaciones de pose, el equipo promedia las rotaciones en SO(3), por ejemplo con el promediado de cuaterniones o con una media iterativa en el espacio tangente, en lugar de promediar los elementos de las matrices. Bibliotecas como Sophus, manif y tf2 en ROS se encargan de estas operaciones.
Ideas erróneas comunes
- Las poses pueden promediarse o interpolarse elemento a elemento — el resultado en general no es una rotación válida; el promedio y la interpolación deben respetar la estructura de grupo
- SE(3) es solo SO(3) y un vector de traslación uno al lado del otro — los elementos son los mismos, pero al componer movimientos la rotación actúa sobre la traslación, así que la regla de composición es distinta
- Los ángulos de Euler más una posición son una representación general segura — cubren SE(3) pero tienen singularidades; los cuaterniones o las matrices de rotación las evitan
Quién debería saberlo
- Ingenieros de software robótico que trabajan con sistemas de coordenadas
- Ingenieros de SLAM y de estimación de estado
- Ingenieros de cinemática y manipulación
- Investigadores en aprendizaje automático que predicen poses
Tecnologías relacionadas
- SO(3)
- Álgebra de Lie se(3) (Lie Algebra se(3))
- Matriz de transformación homogénea (Homogeneous Transformation Matrix)
- Cuaterniones (Quaternions)
- Sophus
- tf2
Términos relacionados
Proyectos relacionados
- AprilTag: The standard visual fiducial marker system for robot localization and pose estimation
- MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
- manif: Header-only C++ Lie theory library for robotics state estimation
- PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
- PyPose: PyTorch library for differentiable robotics with deep learning and Lie group optimization
- DART: C++ physics engine for articulated rigid body dynamics and robotics simulation