CardRecog é um aplicativo que reconhece as cartas de baralho de um baralho padrão. Existem cinco modos que podem ser escolhidos nas configurações; múltipla, única, atualização, pré-flop e raw. Você toca na tela para iniciar o reconhecimento, segura a câmera, coloca algumas cartas na frente e espera. Você permanece no modo de reconhecimento até tocar na tela novamente para retornar ao modo inativo. Uma vez que o reconhecimento ocorra, os cartões reconhecidos são exibidos e às vezes falados.
No modo raw, os cartões reconhecidos são exibidos sem filtragem e em tempo real. Em outros modos, assim que o reconhecimento ocorrer, nenhum outro cartão será reconhecido, a menos que você reinicie o processo de reconhecimento. Existem duas maneiras de fazer isso; o mais fácil é remover todos os cartões da visualização por cerca de 1/2 segundo e depois colocar os cartões a serem reconhecidos na frente da câmera. A segunda maneira é tocar na tela para parar o reconhecimento e ficar ocioso e tocar na tela novamente para iniciar o reconhecimento. O arquivo http://www.kgrothapps.com/files/cardrecog-example.pdf tem algumas mãos de exemplo. Se você não possui um conjunto de cartas de jogar de bicicleta, imprima a página e tente o reconhecimento das mãos.
Quando você inicia o reconhecimento, a câmera focaliza (se possível), portanto, se o reconhecimento falhar, toque na tela para parar e toque novamente para reiniciar o reconhecimento para ter certeza de que você tem uma imagem em foco.Você também pode inclinar ligeiramente os cartões para ver se isso melhorar os resultados. Se o reconhecimento falhar para todas as placas, tente configurar o ISO (se estiver nas configurações) para o valor mais alto possível, em vez do automático padrão.
Para dispositivos com foco automático (por exemplo, linha Nexus), o reconhecimento funciona bem, mesmo para um grande número de cartões. No entanto, você sempre precisa de uma imagem em foco e iluminação razoavelmente brilhante. Para dispositivos finais mais baixos, o reconhecimento funcionará bem no modo de cartão único, mas menos cartões serão reconhecidos com sucesso no modo de vários cartões. Mas mesmo para dispositivos de baixo custo (incluindo aqueles sem foco automático), o reconhecimento funciona bem no modo de cartão único.
No modo de vários cartões, se a parte inferior de um cartão estiver visível, esse cartão ainda será reconhecido apenas uma vez. No modo de cartão único, procuramos o mesmo número de cartão e adequamos na parte superior e inferior do cartão. Portanto, ambos devem estar visíveis antes que o cartão seja reconhecido no modo de cartão único, mas apenas um é necessário para reconhecimento no modo de vários cartões. No modo de cartão único, se houver falha no reconhecimento de vários cartões, você precisará exatamente de um cartão. No modo de atualização, podemos adicionar / remover um único cartão de cada vez para uma mão de cartas. No modo raw, os resultados não filtrados são mostrados e você não precisa reiniciar o reconhecimento repetidamente. O modo atual é mostrado no texto da barra de ação.
No longo prazo, vou integrar este aplicativo com jogos de cartas diferentes. Uma integração simples é o modo pré-flop onde mostramos as odds percentuais para as duas primeiras cartas no hold em poker. Eu também executo a contagem de cartões de blackjack padrão (pode forçar a exibição da contagem nas configurações) para demonstrar outro aplicativo de cartão.
A maioria dos sistemas de reconhecimento de cartões (isto é, os sistemas de detecção de contagem de Blackjack) procuram o contorno do cartão. No meu método eu não exijo o contorno das cartas, em vez disso, eu só vejo o número do cartão e o naipe associado. Assim, enquanto o terno e o número forem visíveis, o reconhecimento ocorrerá com sucesso; o resto do cartão pode ser ocluído. Pule para 1 minuto, 23 segundos do vídeo abaixo e você verá o reconhecimento bem-sucedido de cards na forma típica de "fã" usada em jogos de cartas. Nenhum outro sistema que conheço pode executar reconhecimento de cartão múltiplo com precisão e rapidez.
O aplicativo é em tempo real no sentido de que ele está reconhecendo um número de vezes por segundo, como mostrado no modo raw. Nos outros modos, os resultados são agrupados para alcançar um consenso, e é por isso que leva um ou dois segundos para um resultado de reconhecimento. Eu acredito que este é o melhor sistema de reconhecimento de cartões para algo como o Google Glass, onde você está olhando para os cartões nas mãos de alguém. Congratulo-me com quaisquer comentários, mas lembre-se este não é um produto final, é uma demonstração de tecnologia.