CardRecog is an app that recognizes playing cards from a standard deck. There are five modes that can be chosen in the settings; multiple, single, update, pre-flop and raw. You touch the screen to start recognition, hold the camera still, put some cards in front, and wait. You stay in recognition mode until you touch the screen again to return to idle mode. Once recognition occurs the recognized cards are displayed and sometimes spoken.
In raw mode recognized cards are shown without filtering and in real-time. In other modes once recognition occurs no further cards will be recognized unless you restart the recognition process. There are two ways to do this; the easiest is remove all cards from view for around 1/2 second, and then place the cards to be recognized in front of the camera. The second way is to touch the screen to stop recognition and go to idle, and touch the screen again to start recognition. The file http://www.kgrothapps.com/files/cardrecog-example.pdf has some example hands. If you do not own a set of Bicycle playing cards print the page and try recognition of the hands.
When you start recognition the camera focuses (if possible), so if recognition fails you should touch the screen to stop, and then touch again to restart recognition to be sure you have an in focus image.You can also tilt the cards slightly to see if that improves results. If recognition fails for all cards then try setting the ISO (if it is in the settings) to the highest possible value, instead of the default automatic.
For devices with auto focus (i.e. Nexus line) recognition works well even for a large number of cards. However, you always need an in focus image, and reasonably bright lighting. For lower end devices recognition will work well in single card mode, but fewer cards are recognized successfully in multiple card mode. But even for low end devices (including those with no auto focus) recognition works well in single card mode.
In multiple card mode if the bottom of a card is visible that card is still only recognized once. In single card mode we look for the same card number and suit in both the top and bottom of the card. So both must be visible before the card is recognized in single card mode, but only one is required for recognition in multiple card mode. In single card mode if multiple cards are present recognition fails, you need exactly one card. In update mode we can add/remove a single card at a time to a hand of cards. In raw mode the unfiltered results are shown and you do not need to repeatedly restart recognition. The current mode is shown in the action bar text.
In the long run I will integrate this app with different card games. A simple integration is pre-flop mode where we show the percentage odds for the first two cards in hold em poker. I also perform standard blackjack card counting (can force display of count in the settings) to demonstrate another card application.
Most card recognition systems (i.e. the Blackjack counting detection systems) look for the card outline. In my method I do not require the outline of the cards, instead I only look at the card number and the associated suit. So as long as the suit and number are visible recognition will occur successfully; the rest of the card can be occluded. Skip to 1 minute, 23 seconds of the video below and you will see successful recognition of cards in the typical "fan" shape used in card games. No other system that I know of can perform multi-card recognition as accurately and quickly.
The app is real time in the sense that it is recognizing a number of times a second, as shown in raw mode. In the other modes the results are grouped to achieve a consensus, which is why it takes one or two seconds for a recognition result. I believe this is the best card recognition system for something like Google glass where you are looking at the cards in someone's hands. I welcome any comments, but remember this is not a final product, it is a technology demo.
CardRecog ist eine App, die Spielkarten aus einem Standard-Deck erkennt. Es gibt fünf Betriebsarten, die in den Einstellungen gewählt werden können; mehrere, einzelne, zu aktualisieren, vor dem Flop und roh. Sie berühren Sie den Bildschirm, um die Anerkennung zu starten, halten Sie die Kamera still, und legte einige Karten vor und warten. Sie wohnen in Erkennungsmodus, bis Sie den Bildschirm erneut berühren, um den Ruhemodus. Sobald Erkennung erfolgt die anerkannten Karten werden angezeigt und manchmal gesprochen.
Im Basismodus erkannte Karten werden ohne Filterung und in Echtzeit angezeigt. In anderen Modi einmal Erkennung erfolgt keine weiteren Karten werden erkannt, wenn Sie den Erkennungsprozess erneut zu starten. Es gibt zwei Möglichkeiten, dies zu tun; die einfachste ist entfernen Sie alle Karten aus dem Blickfeld etwa 1/2 Sekunde, und dann legen Sie die Karten vor der Kamera erkannt werden. Der zweite Weg ist, um den Bildschirm, um die Anerkennung zu beenden und in den Ruhe, und berühren Sie den Bildschirm erneut, um Anerkennung zu starten berühren. Die Datei http://www.kgrothapps.com/files/cardrecog-example.pdf hat einige Beispiel Händen. Wenn Sie eine Reihe von Fahrrad nicht selbst Spielkarten drucken Sie die Seite und versuchen Anerkennung der Hände.
Wenn Sie Erkennung starten die Kamera fokussiert ist (wenn möglich), so dass, wenn die Anerkennung versagt, sollten Sie den Bildschirm, um zu stoppen berühren und berühren Sie dann erneut auf die Anerkennung neu starten, um sicherzustellen, dass Sie haben eine im Fokus image.You können auch die Karten neigen leicht zu sehen, wenn das verbessert die Ergebnisse. Wird die Anerkennung versagt für alle Karten dann versuchen Sie, den ISO (wenn es in den Einstellungen ist), um den höchstmöglichen Wert, anstelle des Standard-Automatik.
Bei Geräten mit Autofokus (dh Nexus Linie) Erkennung funktioniert auch für eine große Anzahl von Karten. Allerdings müssen Sie immer ein Fokus Bild in, und einigermaßen helle Beleuchtung. Für niedrigere Endgeräte Anerkennung wird auch in Einzelkartenmodus arbeiten, aber weniger Karten werden erfolgreich in mehreren Kartenmodus erkannt. Aber auch für Low-End-Geräte (auch ohne Autofokus) Erkennung funktioniert gut in einzelnen Karte-Modus.
In mehreren Karten-Modus, wenn der Boden einer Karte sichtbar ist, dass Karte ist immer noch nur einmal erfasst. Im Einzelkartenmodus sehen wir für die gleiche Kartennummer und Anzug in oben und unten auf der Karte. Also beide müssen sichtbar sein, bevor die Karte in Einzelkartenmodus erkannt, aber die Anerkennung in mehreren Kartenmodus wird nur eine benötigt. Im Einzelkartenmodus, falls mehrere Karten vorhanden sind Erkennung fehlschlägt, können Sie genau eine Karte benötigen. Im Update-Modus kann man Hinzufügen / Entfernen einer einzigen Karte zu einem Zeitpunkt auf eine Hand der Karten. Im Basismodus, die ungefilterten Ergebnisse angezeigt, und Sie müssen nicht immer wieder Anerkennung neu zu starten. Der aktuelle Modus wird in der Aktionsleiste Text angezeigt.
Auf lange Sicht werde ich diese App mit verschiedenen Kartenspielen zu integrieren. Eine einfache Integration ist vor dem Flop Modus, in dem wir zeigen die prozentualen Gewinnchancen für die ersten zwei Karten in Hold'em Poker. Ich habe auch durchführen Standardblackjack Kartenzählen (können die Anzeige der Zählung in den Einstellungen zu erzwingen), um einen anderen Kartenanwendung demonstrieren.
Die meisten Kartenerkennungssysteme (dh der Blackjack zählen Detektionssysteme) suchen Sie die Karte Umriss. In meine Methode, die ich benötigen nicht den Überblick über die Karten, sondern ich schaue nur auf der Kartennummer und die zugehörige Farbe. So lange, wie der Anzug und Anzahl sind sichtbare Anerkennung erfolgreich auftreten; der Rest der Karte kann verschlossen werden. Direkt zum 1 Minute, 23 Sekunden des Videos aus und Sie erhalten erfolgreiche Erkennung der Karten in der typischen "Fan" Form bei Kartenspielen verwendet sehen. Kein anderes System, das ich kenne, kann Multi-Card-Anerkennung als genau und schnell durchzuführen.
Die App ist in Echtzeit in dem Sinne, dass sie erkennen eine Reihe von Mal pro Sekunde, wie im Basismodus angezeigt. In den anderen Betriebsarten die Ergebnisse sind zusammengefasst, um einen Konsens, weshalb es ein bis zwei Sekunden dauert, bis ein Erkennungsergebnis zu erzielen. Ich glaube, das ist die beste Kartenerkennungssystem für so etwas wie Google Glas, wo Sie auf die Karten schauen in jemandes Händen. Ich begrüße alle Kommentare, aber nicht vergessen, das ist kein Endprodukt, es ist eine Technologie-Demo.