5 pontos por GN⁺ 29 일 전 | 1 comentários | Compartilhar no WhatsApp
  • Um projeto de protótipo que faz o MacBook funcionar como uma touchscreen usando apenas 1 dólar em peças e técnicas de visão computacional
  • Ao instalar um pequeno espelho na frente da webcam integrada, ele reconhece a tela em ângulo e detecta o toque pela interseção entre o dedo e seu reflexo
  • Por meio de filtragem de cor de pele e análise de contornos, calcula os pontos de toque e hover, e os mapeia para as coordenadas da tela com correção por homografia
  • A entrada detectada é convertida em eventos de mouse, permitindo interação por toque imediatamente também em apps existentes
  • Funciona até com câmera 480p e é um exemplo de implementação de touchscreen de baixo custo que pode ampliar a área de reconhecimento com câmeras de maior resolução ou espelhos curvos

Visão geral do Project Sistine

  • Usa apenas 1 dólar em hardware e técnicas simples de visão computacional para transformar um MacBook em touchscreen
    • Um protótipo proof-of-concept criado por 4 pessoas em cerca de 16 horas
    • O nome foi inspirado na recriação da pintura 'A Criação de Adão' da Capela Sistina

Princípio básico

  • Aproveita o fenômeno em que o dedo e seu reflexo aparecem juntos por causa da reflexão de luz ao observar a tela em ângulo
    • Detecta o momento em que o dedo encosta no reflexo para determinar se houve toque
  • A ideia veio do projeto ShinyTouch, criado anteriormente por Kevin
    • O método que usava webcam externa foi substituído pela webcam integrada do MacBook e um pequeno espelho
    • Um pequeno espelho é instalado diante da câmera integrada para obter um campo de visão inclinado de toda a tela
    • O movimento dos dedos é reconhecido no vídeo da câmera e convertido em eventos de toque

Configuração de hardware

  • Os materiais necessários são componentes simples, como um pequeno espelho, prato de papel, dobradiça de porta e cola quente
    • O espelho é fixado no ângulo adequado para que a câmera consiga ver toda a tela
    • Pode ser montado em poucos minutos usando apenas faca e cola quente

Algoritmo de detecção do dedo

  • No vídeo de entrada, encontra o dedo e seu reflexo para calcular os pontos de toque/hover
    • Filtragem de cor de pele e binarização → detecção de contornos → seleção de dois contornos principais

      • Os dois contornos devem se sobrepor horizontalmente, e o contorno menor deve estar na parte superior
      • O ponto médio da linha que conecta a parte superior e inferior dos dois contornos é definido como ponto de toque/hover
      • A distância vertical entre os dois contornos distingue toque de hover
      • No vídeo resultante, o dedo e a linha de reflexão aparecem em verde, a caixa delimitadora em vermelho e o ponto de toque em magenta

Mapeamento e calibração

  • Calcula a homografia (homography) para converter as coordenadas da webcam em coordenadas da tela
    • O usuário realiza a calibração (calibration) tocando em pontos específicos da tela
    • Com base nos pares de coordenadas coletados, a matriz de projeção é estimada com o algoritmo RANSAC
    • Após a calibração, a matriz de projeção é visualizada com linhas vermelhas sobre a tela, e os pontos de toque estimados aparecem como pontos azuis

Aplicações

  • O protótipo converte hover e toque em eventos de mouse, permitindo que apps existentes passem a responder a toque imediatamente
    • Ao desenvolver um app próprio, também é possível usar diretamente dados detalhados de toque, como a altura do hover

Conclusão e possibilidades de melhoria

  • O Project Sistine é uma implementação experimental que transforma um notebook em touchscreen com hardware de 1 dólar
    • Funciona até com a câmera integrada de 480p, e com câmeras de maior resolução ou espelhos curvos pode reconhecer toda a tela
    • Há potencial para evoluir para um sistema de touchscreen prático e de baixo custo

Código-fonte

  • O protótipo Sistine foi publicado como open source sob licença MIT

1 comentários

 
GN⁺ 29 일 전
Comentários no Hacker News
  • Steve Jobs disse em 2010 que telas sensíveis ao toque verticais servem para demos legais, mas na prática cansam rapidamente os braços e são terríveis do ponto de vista ergonômico
    Isso foi citado em um artigo do Business Insider

    • Em 2007, ele também disse que “stylus é algo que ninguém quer”, enfatizando que os dedos são o melhor dispositivo apontador. Ironicamente, 8 anos depois surgiu o Apple Pencil
    • Na verdade, a pesquisa de UX sobre gorilla arm é bem mais antiga. O Microsoft Surface fez certo sucesso em um nicho e gerou vários clones, e hoje em dia o toque funciona bem melhor quando a tela fica deitada ou em um ângulo baixo
      Aqueles antigos celulares Android baratos com stylus ou clones do Palm Pilot eram realmente péssimos, mas para artistas a stylus com detecção de pressão continua sendo uma ferramenta útil
      (Aliás, o termo “gorilla arm” vem do Jargon File dos anos 1980)
    • Isso é apenas uma objeção ao uso do toque como interface principal. Na prática, muitas vezes tocar diretamente na tela é bem mais rápido do que usar o mouse para apertar um único botão. Como opção, o toque é excelente
    • Eu estou desenvolvendo no trabalho um app de CAD baseado em toque + stylus, e dá para trabalhar de forma bem natural mesmo sem atalhos de teclado
      Uso o dispositivo deitado ou girado, e também uso Kindle Scribe e Galaxy Note 10+.
      Queria testar o Apple Sidecar, mas estou hesitando porque teria que comprar mais uma stylus. Espero que algum dia a Apple lance um sucessor do Newton
    • Fico curioso para ver qual será a reação das pessoas se a Apple lançar um MacBook com touchscreen este ano
  • Eu não iria querer um MacBook Pro com touchscreen nem de graça. Já está tudo otimizado para atalhos de teclado, então não há motivo para ficar apertando a tela
    Para trabalho, teclado e trackpad são muito mais eficientes do que toque

    • A questão principal não é “precisamos de um MacBook com touchscreen”, e sim que o feito técnico de simular toque com reflexo no vidro parece interessante
    • Reviewers criticam a falta de toque no MacBook, mas na prática a maioria usa o aparelho em dock, então o toque não serve para nada.
      O monitor principal não tem toque, e a tela do notebook fica como secundária, então não há motivo para esticar a mão até ela. Por isso também acho que a Touch Bar fracassou
    • O toque em um notebook que não dobra passa uma sensação estranha, como desenhar com o dedo em cima de um balão
    • Eu penso o mesmo, mas quando você pega o hábito do toque, acaba encostando sem querer na tela do MacBook por alguns dias. Existe uma expectativa inconsciente
    • Quando passo muito tempo usando iPad e depois volto para o MacBook, tento tocar a tela sem perceber. Imagino que eu não seja o único
  • Este projeto me lembrou os antigos experimentos com Wii-mote do Johnny Lee
    johnnylee.net/projects/wii/

  • Um notebook corporativo que usei no passado tinha touchscreen, e surpreendentemente isso era útil uma ou duas vezes por semana
    No trem, tocar a tela diretamente era mais prático para não esbarrar o cotovelo na pessoa ao lado, e também era mais natural rolar com o dedo
    Não era o principal método de entrada, mas como opção de entrada complementar era bom

  • A expressão “filtragem por cor de pele” me deixou em dúvida. Qual tom de pele está sendo usado como referência, e especialmente em peles mais escuras eu queria ver dados de quão bem isso funciona

  • Em notebooks, touchscreen não é agradável. Pessoalmente, prefiro que não tenha

    • Mas para rolagem o toque é uma UX bem natural. Se você conectar um Magic Keyboard a um iPad, a combinação de usar o trackpad para controle preciso e os dedos para mover elementos maiores funciona muito bem
    • De qualquer forma, se não quiser usar, é só não usar
  • É um caso de uso de visão computacional realmente muito legal. Também agradeço por terem aberto o código

  • É um protótipo simples, mas interessante. Fico curioso se o reconhecimento muda conforme as condições de iluminação — será que funciona bem ao ar livre ou com contraluz?

  • Em vez de “filtragem por cor de pele”, talvez background subtraction tivesse sido mais estável. Cor de pele varia demais dependendo da iluminação

  • Fico imaginando a tela quebrando ao fechar o MacBook com a câmera entre as partes.
    Gosto de Mac, mas o hardware parece delicado demais e meio preocupante. Como é notebook da empresa, eu tomo ainda mais cuidado