1 pontos por GN⁺ 2023-11-13 | 1 comentários | Compartilhar no WhatsApp

D-POINT: caneta digital com rastreamento óptico-inercial

  • D-POINT é um stylus digital open source que realiza entrada 6DoF (6 graus de liberdade) usando rastreamento por câmera e medições inerciais.
  • Oferece baixa latência, detecção de pressão e precisão submilimétrica, pode ser usado em qualquer superfície plana e é compatível com webcams de consumo.
  • Este projeto faz parte de uma tese de graduação em engenharia elétrica, e o código e os arquivos de design foram disponibilizados como open source na expectativa de serem úteis para outras pessoas.

Design

  • Os principais componentes do stylus são fabricados por impressão 3D e incluem um sensor de força, uma bateria de íons de lítio carregada via USB-C e uma placa de desenvolvimento baseada em Arduino para Bluetooth e lógica.
  • Para estimativa visual de pose, 8 marcadores ArUco impressos são fixados na parte traseira do stylus.

Estimativa visual de pose (VPE)

  • O processo de VPE ocorre em 4 etapas principais:
    1. Detecção de marcadores: usa OpenCV para detectar os cantos de cada marcador ArUco no stylus.
    2. Correção de rolling shutter: usa um modelo simples de movimento 2D para estimar e corrigir o efeito do rolling shutter nas posições observadas dos cantos.
    3. Perspective-n-Point (PnP): a partir dessas posições dos cantos, usa o algoritmo PnP para estimar a pose do stylus em relação à câmera.
    4. Transformação de coordenadas: usando a pose calibrada do stylus em relação à câmera e à superfície de desenho, calcula a posição e a orientação da ponta do stylus em relação à superfície de desenho.

Fusão inercial

  • Usa um filtro de Kalman estendido (EKF) para fundir as estimativas de VPE com os dados inerciais do acelerômetro e do giroscópio, e usa o algoritmo Rauch-Tung-Striebel (RTS) para refinar as estimativas em tempo real.
  • Para considerar o atraso temporal dos frames da câmera, usa um algoritmo de atualização de medição em tempo negativo.
  • O EKF é implementado com NumPy e Numba, e o uso de medições inerciais reduz significativamente a latência em comparação com o uso exclusivo da câmera, além de melhorar a precisão e a taxa de atualização para movimentos rápidos.

Opinião do GN⁺

  • O D-POINT apresenta novas possibilidades para stylus digitais por meio de alta sofisticação técnica e design inovador.
  • Por ser disponibilizado como open source, oferece a pessoas interessadas em tecnologia a oportunidade de usar e melhorar livremente a solução.
  • Como é compatível com webcams de consumo e pode ser usado em qualquer superfície plana, essa tecnologia pode desempenhar um papel importante na melhoria da experiência do usuário.

1 comentários

 
GN⁺ 2023-11-13
Comentários do Hacker News
  • Admiração pelo projeto

    "Que projeto realmente incrível. Ele tornou real algo que eu só tinha imaginado. Quando eu jogava 'Elite: Dangerous', usava HOTAS (manete de potência e joystick operados com as mãos) e pedais, mas sempre senti que dava para pilotar a nave de um jeito melhor. O que eu queria era mover um modelo de nave que estivesse na minha mão e fazer a nave no jogo se mover da mesma forma. Este projeto parece tornar isso possível. O empuxo poderia ser controlado de maneira parecida com a outra mão. Esses modelos de entrada novos ou incomuns são realmente fascinantes, e dá para soltar a imaginação com esse tipo de capacidade."

  • Valor acadêmico do projeto

    "Este projeto fazia parte de uma tese de graduação em engenharia elétrica. De graduação! Se isso não tirou a nota máxima, então não existe justiça."

  • Reflexão interessante sobre o futuro das webcams

    "O uso da webcam é interessante. Fico me perguntando se veremos um futuro em que as webcams tradicionais com FOV único de ~78° serão substituídas por webcams olho de peixe duplas (estéreo). Essas webcams permitiriam novas interações de UX (incluindo gestos com rastreamento ocular), novas interações com periféricos (como este stylus, ou volantes para jogos de corrida) e captura 3D de 180° para reuniões por webcam muito mais flexíveis, incluindo presença em VR. A ideia de usar todo o espaço 3D em frente à tela do computador como método de entrada está se aproximando, e a forma como esta webcam é usada parece um passo nessa direção."

  • Percepção sobre a técnica de compensação de rolling shutter

    "A compensação de rolling shutter é bem legal, e fiquei curioso para saber se eles já sabiam desde o começo que isso seria um problema, ou se só perceberam depois de montar o sistema."

  • Abordagem criativa para dispositivos de entrada

    "A tecnologia combinada é especialmente impressionante. Ao explorar 'teclado de notebook... formato da mão, stylus 3D, toque', tive algumas ideias. Adicionando botões, isso poderia virar um mouse 3D, mas a cobertura da câmera pode ser um problema. O corpo do notebook é em grande parte vazio (e até a bateria pode ser mais fina), então seria possível digitar segurando um stylus com marcadores. Uma ponta grande poderia deslizar suavemente sobre um teclado ThinkPad e ofereceria espaço para sensores de força menos densos e marcadores extras na ponta. Um cabo flat de silicone fino pode ser bastante flexível, e eu só precisaria conectar o stylus a um Arduino. Também fiquei curioso sobre como um sensor inercial reconheceria algo como um clicker metálico."

  • Entusiasmo por controladores 6DOF e elogio ao lado de software do projeto

    "Sou muito fã de 6DOF! É um ótimo trabalho de hardware e de pose com visão computacional, mas desenhar uma superfície de software que possa girar é quase ainda mais impressionante. Isso poderia ser usado junto com algum tipo de controle físico de interface do usuário, ou talvez algo como um slider para dedo para obter o mesmo efeito. Parece um ótimo projeto para desenvolver habilidades de resolução de problemas. Mandou muito bem, bravo!"

  • Admiração pelo projeto e exemplo prático de uso de filtro de Kalman

    "Projeto muito legal. Documentação útil. Um bom exemplo real de uso de filtro de Kalman!"

  • Admiração pelo projeto e desejo de construir um

    "Projeto realmente impressionante! Gostei muito, quero muito tentar fazer um."

  • Possíveis aplicações em robótica/VR e perguntas técnicas

    "Muito legal! Também pode ser útil em robótica/VR. E o rastreamento de uma mão usando webcam? Pergunta: dá para rastrear pressão usando giroscópio + acelerômetro? Pelo menos um 'tap'? Outra pergunta: quanto custa? Especialmente o sensor de pressão?"

  • Curiosidade sobre rastreamento externo com câmera e lamentação sobre a tecnologia

    "Rastreamento externo com câmera é uma ideia muito boa na qual eu não tinha pensado. É uma pena que não exista um bom trabalho de replicar de forma barata a tecnologia de lighthouse usada pela Valve/HTC."