Black Jack
Kurzbeschreibung
Im Mittelpunkt dieses fortgeschrittenen Projekts steht die Erkennung und Klassifizierung von Spielkarten mithilfe des Vision Starter Kits.
Das Ziel ist es, eine Blackjack-Anwendung zu entwickeln, die Spielkarten erkennt, den aktuellen Wert der Hand berechnet und eine Rückmeldung gibt, wenn der Wert 21 überschritten wird.
Projektinformationen
| Projektart | Erforderliches Wissensniveau | Voraussichtliche Dauer | Zusätzliche Hardware- und Softwareanforderungen |
|---|---|---|---|
| Fortgeschrittenes Projekt | Fortgeschritten bis Experte | 4 bis 8 Stunden | Spielkarten |

Ziel
Das Ziel dieses Projekts ist es, eine „Vision Starter Kit“-Anwendung zu entwickeln, die Spielkarten erkennen und die ermittelten Werte in einer einfachen Blackjack-Spiellogik verwenden kann.
Nach Abschluss dieses Projekts sollten Sie wissen, wie man:
- Spielkarten erkennen und klassifizieren
- den erkannten Klassen Kartenwerte zuweisen
- den aktuellen Wert eines Kartenblatts berechnen
- eine Rückmeldung ausgeben, wenn der Wert 21 überschritten wird
- Erweiterung einer bildbasierten Klassifizierungsaufgabe um Anwendungslogik
Projektkonzept
In diesem Projekt wird das Vision Starter Kit zur Klassifizierung von Spielkarten verwendet.
Das Klassifizierungsergebnis kann dann zur Berechnung des aktuellen Blattwerts in einem Blackjack-Spiel herangezogen werden. Auf Grundlage der Spiellogik kann das System anzeigen, ob der aktuelle Wert noch gültig ist oder ob der Wert 21 überschritten wurde.
Zu den möglichen Ausgabeoptionen gehören:
- Ein einfaches visuelles Ergebnis in SICK Nova
- ein Dashboard oder eine externe Anwendung
- eine Signalleuchte
- ein binäres Rückmeldesignal
- eine auf Wahrscheinlichkeiten basierende Empfehlung für die nächste Ziehung
Bevor Sie beginnen
Richten Sie das Vision Starter Kit wie in der Anleitung Erste Schritte beschrieben ein.
Fortgeschrittenenprojekt
Dieses Projekt erfordert eine Kombination aus Bildklassifizierung und zusätzlicher Spielelogik.
Grundlegende Erfahrungen mit SICK Nova und der Programmierung von Steuerungslogik sind von Vorteil.
Aufgabe
Erstellen Sie eine Anwendung, die Spielkarten erkennt und den aktuellen Wert der Blackjack-Hand berechnet.
Ihre Lösung sollte Folgendes umfassen:
- Aufbau zur Bildaufnahme von Spielkarten
- Einrichtung der KI-Klassifizierung für die Kartenerkennung
- Definition der relevanten Kartenklassen
- Trainingsbilder für jede Kartenklasse
- Logik zur Berechnung des aktuellen Handwerts
- Meldung bei Überschreitung des Wertes 21
Anforderungen
Grundlegende Anforderungen
- Verwenden Sie das KI-Klassifizierungstool in SICK Nova.
- Erkennen und klassifizieren Sie Spielkarten zuverlässig.
- Weisen Sie jeder erkannten Karte einen numerischen Wert zu.
- Berechnen Sie den aktuellen Wert des Blattes.
- Erkennen Sie, wenn der Wert 21 überschritten wird.
- Geben Sie je nach Ergebnis visuelles oder logisches Feedback.
Optionale Erweiterungen
- Fügen Sie ein Dashboard zur Visualisierung hinzu.
- Verwenden Sie eine Signalleuchte für binäres Feedback.
- Berechnen Sie die Wahrscheinlichkeit, dass der Wert 21 bei der nächsten Ziehung überschritten wird.
- Fügen Sie einen Mehrspieler-Modus hinzu.
- Verfolgen Sie die Karten automatisch über mehrere Runden hinweg.
- Verbinden Sie das Klassifizierungsergebnis mit einer externen Anwendung.
Vorgeschlagene Vorgehensweise
Orientieren Sie sich an folgendem allgemeinen Ansatz:
- Richten Sie das Vision Starter Kit ein.
- Bereiten Sie ein Kartenspiel vor.
- Erstellen Sie einen leeren Auftrag in SICK Nova.
- Bildaufnahme konfigurieren.
- Fügen Sie das Tool KI-Klassifizierung hinzu.
- Kartenklassen definieren.
- Erfassen Sie Trainingsbilder für jede Kartenklasse.
- Trainieren Sie das Klassifikationsmodell.
- Prüfen Sie, ob die Karten zuverlässig erkannt werden.
- Exportieren Sie das Klassifizierungsergebnis oder nutzen Sie es.
- Erstellen Sie eine Logik zur Berechnung des aktuellen Handwerts.
- Füge Rückmeldungen für gültige und ungültige Spielzustände hinzu.
Mögliche Kurse
Je nach Umfang Ihrer Implementierung können Sie mit einem vereinfachten Kartensatz beginnen.
Verwenden Sie für eine erste Version eine reduzierte Auswahl an Klassen, zum Beispiel:
- Ass
- 2
- 3
- 4
- 5
- 10
- Jack
- Königin
- König
Für eine erweiterte Version können Sie die Klassifizierung auf alle Kartenwerte ausweiten.
Fang einfach an
Fangen Sie zunächst mit einem kleineren Kartensatz an.
Sobald die Klassifizierung zuverlässig funktioniert, können Sie weitere Kartenwerte hinzufügen.
Spielmechanik
Nach dem Erkennen der Karten sollte die Blackjack-Logik den aktuellen Wert der Hand berechnen.
Zu beachtende Grundregeln:
- Zahlenkarten zählen mit ihrem Zahlenwert
- Bube, Dame und König zählen als 10
- Ein Ass kann je nach aktuellem Wert der Hand als 1 oder 11 gezählt werden.
- Wenn der Gesamtwert 21 übersteigt, ist das Blatt ungültig.
Mögliche Rückmeldungen:
- Der Wert liegt unter 21
- Der Wert beträgt genau 21
- Der Wert ist größer als 21
- Empfehlung, fortzufahren oder anzuhalten
- Wahrscheinlichkeit, dass bei der nächsten Ziehung 21 überschritten wird
Tipps
Tipp 1: Verwende zunächst einen reduzierten Kartensatz
Fang nicht mit einem vollständigen Kartenspiel an.
Wählen Sie einige Karten aus und prüfen Sie, ob die Klassifizierung zuverlässig ist.
Tipp 2: Halte die Position der Karte einheitlich
Versuchen Sie, die Position der Karte, den Abstand und die Beleuchtung während des Trainings und der Tests so gleichmäßig wie möglich zu halten.
Tipp 3: Fügen Sie bei Bedarf weitere Bilder hinzu
Sollte die Kartenerkennung unzuverlässig sein, fügen Sie weitere Trainingsbilder mit unterschiedlichen Positionen und Drehungen hinzu.
Tipp 4: Trenne Erkennung und Spielelogik
Stellen Sie zunächst sicher, dass die Kartenerkennung zuverlässig funktioniert.
Fügen Sie anschließend die Berechnungslogik für Black Jack hinzu.
Tipp 5: Nutzen Sie das Projekt zur geführten Klassifizierung
Wenn Sie sich nicht sicher sind, wie Sie das KI-Klassifizierungstool verwenden sollen, sehen Sie sich das Beispielprojekt mit Anleitung noch einmal an.
Beispiel-Projektdatei
Eine vorgefertigte Beispielprojektdatei finden Sie hier:
Beispiel für eine Konfigurationsdatei
Eine vorgefertigte SICK-Nova-Konfigurationsdatei finden Sie hier:
configuration_nova_inspector_blackjack.ncfg
Erwartetes Ergebnis
Nach Abschluss dieses Projekts sollte das Vision Starter Kit in der Lage sein, ausgewählte Spielkarten zu erkennen und die ermittelten Werte in einer Blackjack-Spielelogik zu verwenden.
Ein erfolgreiches Ergebnis bedeutet, dass:
- Spielkarten werden zuverlässig erkannt
- Die erkannten Karten werden ihren korrekten Werten zugeordnet
- Der aktuelle Blattwert wird berechnet
- Das System zeigt an, ob der Wert 21 überschritten wurde.
- Das Konzept lässt sich durch Visualisierung oder externes Feedback erweitern.
Zusammenfassung
In diesem Projekt für Fortgeschrittene hast du Bildklassifizierung mit Spielelogik kombiniert.
Du hast geübt, wie man:
- Spielkarten mit dem Vision Starter Kit sortieren
- Nützliche Kartenklassen definieren
- ein KI-Klassifikationsmodell trainieren und testen
- Ergebnisse der Kartenklassifizierung numerischen Werten zuordnen
- Implementiere die Logik für ein einfaches Blackjack-Spiel
- Überlegen Sie sich Möglichkeiten zur Visualisierung und Rückmeldung
Dieses Projekt veranschaulicht, wie das Vision Starter Kit über einfache Klassifizierungsaufgaben hinaus eingesetzt und mit anwendungsspezifischer Logik verknüpft werden kann.
Nächste Schritte
Fahren Sie mit einem weiteren Vision-Projekt fort oder öffnen Sie die vollständigen Projektdateien auf GitHub.com.