D-POINT: un lápiz digital con seguimiento óptico-inercial
- D-POINT es un stylus digital de código abierto que logra entrada 6DoF (seis grados de libertad) usando seguimiento por cámara y medición inercial.
- Ofrece baja latencia, sensibilidad a la presión y precisión submilimétrica; puede usarse sobre cualquier superficie plana y es compatible con webcams de consumo.
- Este proyecto forma parte de una tesis de licenciatura en ingeniería eléctrica, y su autor espera que al publicar el código y los archivos de diseño como código abierto resulte útil para otras personas.
Diseño
- Los componentes principales del stylus se fabrican con impresión 3D e incluyen un sensor de fuerza, una batería de ion-litio recargable por USB-C y una placa de desarrollo basada en Arduino para Bluetooth y la lógica.
- Para la estimación visual de pose, en la parte trasera del stylus se colocan 8 marcadores ArUco impresos.
Estimación visual de pose (VPE)
- El proceso de VPE consta de 4 etapas principales:
- Detección de marcadores: se detectan las esquinas de cada marcador ArUco en el stylus usando OpenCV.
- Corrección de rolling shutter: se estima y corrige el efecto del rolling shutter sobre las posiciones observadas de las esquinas usando un modelo simple de movimiento 2D.
- Perspective-n-Point (PnP): a partir de estas posiciones de las esquinas, se estima la pose del stylus respecto a la cámara usando el algoritmo PnP.
- Transformación de coordenadas: usando la pose calibrada del stylus con respecto a la cámara y a la superficie de dibujo, se calcula la posición y orientación de la punta del stylus respecto a la superficie de dibujo.
Fusión inercial
- Se usa un filtro de Kalman extendido (EKF) para fusionar las estimaciones de VPE con los datos inerciales del acelerómetro y giroscopio, y se refinan las estimaciones en tiempo real con el algoritmo Rauch-Tung-Striebel (RTS).
- Para considerar la latencia temporal de los frames de la cámara, se usa un algoritmo de actualización de medición con tiempo negativo.
- El EKF está implementado con NumPy y Numba, y al usar mediciones inerciales reduce de forma importante la latencia frente al uso exclusivo de la cámara, además de mejorar la precisión y la tasa de reporte en movimientos rápidos.
Opinión de GN⁺
- D-POINT presenta nuevas posibilidades para el stylus digital mediante un alto nivel técnico y un diseño innovador.
- Al ofrecerse como código abierto, brinda a las personas interesadas en la tecnología la oportunidad de usarlo y mejorarlo libremente.
- Esta tecnología es compatible con webcams de consumo y puede usarse sobre cualquier superficie plana, por lo que podría cumplir un papel importante en mejorar la experiencia de usuario.
1 comentarios
Comentarios de Hacker News
Admiración por el proyecto
Valor académico del proyecto
Una reflexión interesante sobre el futuro de las webcams
Reconocimiento de la técnica de compensación de rolling shutter
Un enfoque creativo sobre los dispositivos de entrada
Entusiasmo por los controladores 6DOF y elogio al aspecto de software del proyecto
Admiración por el proyecto y un ejemplo práctico del uso del filtro de Kalman
Admiración por el proyecto y deseo de construirlo personalmente
Posibles aplicaciones en robótica/VR y preguntas técnicas
Curiosidad por el seguimiento externo con cámara y cierta decepción tecnológica