IF Open - InterFace AG

Die InterFace AG hat im Rahmen eines Projekts in der Geschäftsstelle Nürnberg den dort vorhandenen Kicker technisch erweitert und aufgerüstet.

Im Rahmen unseres Stands auf der Javaland-Konferenz von 8.-10. März wurde das Projekt dann auch der Öffentlichkeit präsentiert.

Ziel war es, das Spielgeschehen in Echtzeit zu erfassen und auszuwerten. Folgende Features sind aktuell implementiert:

  • Erkennung von gefallenen Toren
    • Inkl. Geschwindigkeitsmessung des Balles
    • Torjubel mit kurzen Animationen
    • Replay des Spielzugs, der zum Tor führte
  • Mitzählen des Spielstands
    • Die Anzahl von Siegtoren ist frei konfigurierbar
    • Dem Sieger wird mit einer Animation gratuliert

Hier in aller Kürze die Beschreibung des technischen Setups:

Der Kicker wird von oben mit einer hochauflösenden Webcam gefilmt. Zusätzlich dazu befinden sich je 2 Infrarot-Lichtschranken in den Toren.

Die Lichtschranken sind an einen Arduino gekoppelt. Darauf läuft ein kleiner Sketch, der erkennt, sobald eine Lichtschranke vom Ball ausgelöst wurde (-> Tor gefallen). Zudem wird die Zeitdifferenz gemessen, mit der beide Lichtschranken ausgelöst wurde. Daraus lässt sich dann die Geschwindigkeit des Balls errechnen.

Diese Infos werden dann per USB an einen Server weitergegeben. Auf diesem läuft ein Jetty Servlet/JSP-Container mit integriertem Webserver, auf dem wiederum eine JAVA-Anwendung läuft.

Diese JAVA-Anwendung ist der Server-Teil der Kickersoftware. Auf ihr werden für die Benutzung der Webcam und Generierung der Replays Xuggler und Sarxos verwendet. Zur Persistierung der Daten kommt JPA in Verbindung mit einer SQLite-Datenbank zum Einsatz.

Der Server generiert dann aus dem Kamerabild und den zusätzlich angezeigten Daten (z.B. den Spielstand, der immer oben links eingeblendet wird) einen Videostream. Dieser wird mittels eines Websockets an den Client übertragen.

Der Client wiederum ist über http angebunden und verwendet HTML5, ergänzt um JavaScript und CSS, um den Videostream im Browser anzuzeigen.

Am Ende sieht das dann in etwa so aus:

image2

 

Und wer weiß: Vielleicht gibt es ja in Zukunft einen interessierten Hersteller, der das Ganze direkt in seine Tische integriert :-)

Kommentar verfassen