Roboter-Autos mit dem Raspberry Pi

Roboter Autos mit dem Raspberry Pi - 2019

Nach dem im vorherigen Artikel erklärt wurde wie ein neuronales Netz mit den eigenen Trainingsdaten trainiert werden kann geht es in diesem Beitrag darum das neuronale Netz aufzurufen also zu testen. Da die AI Pipeline über API Schnittstellen verfügt nutzen wir für diesen Test genau diese API Schnittstelle und lassen auf einem Testbild die Objekte erkennen also Vorhersagen. Die angebotenen API Schnittstellen machen die Training Suite auch so interessant da mit deren Hilfe die Training Suite flexibel in eigene AI Anwendungen eingebunden werden kann. Daher macht es Sinn diese SWAGGER API Schnittstelle einmal gesehen und ausprobiert zu haben um für deren Anwendung sowie Einsatzmöglichkeiten ein Gefühl zu entwickeln.

SWAGGER API – Testen eines neuronalen Netzes

Wenn das Training abgeschlossen ist möchte man natürlich herausfinden wie gut das trainierte neuronale Netz jetzt Objekte erkennen kann. Bei der Übersicht zu allen Trainings Jobs in der Training Suite gibt es recht oben noch ein kleine Menü mit drei Buttons. Diese Buttons möchte ich kurz anhand der der folgenden Abbildung erläutern.

  1. Über diesen Knopf können neue Trainingsjobs angelegt werden.
  2. Mit diesem Knopf ist es möglich fertig trainierte neuronale Netze als ZIP Datei herunter zu laden.
  3. Mit dem Blitz Knopf gelangen Sie in die SWAGGER API Schnittstelle der Training Suite.
No Code AI Pipeline Training Suite menue

No Code AI Pipeline Training Suite menue

Drücken Sie jetzt den Button mit dem kleinen Blitz (Nummer 3) um die SWAGGER API zu öffnen. Der Screen der jetzt angezeigt wird sollte wie in der folgenden Abbildung gezeigt aussehen.

No Code AI Pipeline SWAGGER API start screen

No Code AI Pipeline SWAGGER API start screen

Jetzt öffnen Sie bitte die Funktion „GET list Labels“ durch klicken auf das „Get“ Button. Wenn die Funktion aufgeklappt ist drücken Sie auf den Button „Try it out“ um diese Funktion in der Web-Oberfläche zu aktivieren.

No Code AI Pipeline SWAGGER API get model list

No Code AI Pipeline SWAGGER API get model list

Es erscheint ein blau hinterlegter großer Button Execute. Bitte diesen Button jetzt drücken. Anschließend wird die Funktion ausgeführt und es kann kurz dauern bis die Anzeige aktualisiert wird.

Nach dem die Funktion ausgeführt wurde erscheint eine Liste der bereits fertig trainierten neuronalen Netze die für eine Bildvorhersage genutzt werden können. Sie sollten ihre trainierten Netze jetzt wiedererkennen anhand dem Namen den Sie vergeben haben beim Anlegen des Training-Jobs. Wichtig ist jetzt also in der Liste das eigene Modell das man ausprobieren möchte zu finden. Daher ist die Einhaltung von Namenkonventionen wichtig damit jeder Anwender wieder genau sein Netz findet das es testen bzw. verwenden möchte.

No Code AI Pipeline SWAGGER API check for model

No Code AI Pipeline SWAGGER API check for model

Bitte jetzt den Namen des neuronalen Netzes in die Zwischenablage von ihrem Computer kopieren. Suchen Sie jetzt auf der Web-Oberfläche der SWAGGER API nach der Funktion „POST Predict Image“ wie in der folgenden Abbildung gezeigt und führen Sie diese jetzt bitte aus.

  1. Der zuvor kopierte Namen des neuronalen Netzes muss in dieser Zeile eingefügt werden.
  2. Anschließend idealerweise ein Test-Bild wählen das noch nicht ein Teil des Training des neuronalen Netzes war.
  3. Den großen Button Execute drücken.
No Code AI Pipeline SWAGGER API predict image

No Code AI Pipeline SWAGGER API predict image

Jetzt dauert es ein paar Sekunden die der zentrale Rechner benötigt das Bild durch das ausgewählte neuronale Netz analysieren zu lassen. Wenn die Analyse abgeschlossen ist wird ein Bild mit Boundingboxen von der Training Suite zurück gegeben. Auch stehen die %-Werte mit im Bild mit welcher Wahrscheinlichkeit das Objekt im Bild erkannt wurde und was es ist.

Das Ergebnis dieser Vorhersage sieht dann Beispielhaft wie in der folgenden Abbildung gezeigt aus. Die Boundingboxen sind hier etwas schwer zu erkennen aber in der original Ausgabe sieht man diese es deutlich besser.

No Code AI Pipeline SWAGGER API prediction result

No Code AI Pipeline SWAGGER API prediction result

Jetzt haben Sie die No-Code API Pipeline vom Bilder Labeln, dem Training eines neuronalen Netzes sowie dem Testen des trainierten neuronalen Netzes kennen gelernt. Damit die Training Suite auch wie das Labeltool Lite automatisch auf dem zentralen Server startet folgt jetzt die kurze Erläuterung wie die Autostartfunktion eingerichtet wird.

Training Suite – Autostart

Damit die Training Suite nach jedem Neustart des Rechners auch wieder automatisch startet muss nur eine kleine Anpassung an der run_gpu.yml Datei vorgenommen werden. Dazu muss die run_gpu.yml Datei nur an drei Stellen angepasst werden. Im nachfolgenden Bild sind die drei angepassten Stellen der run_gpu.yml Datei hervorgehoben. Hier wurde jeweils die Zeile “restart: always” eingefügt, die bewirkt, dass der Docker-Container nach einem Neustart des Rechners automatisch startet.

No Code AI Pipeline Trainings GUI autostart

No Code AI Pipeline Trainings GUI autostart

Für die Anpassung jetzt mit einem Editor die run_gpu.yml Datei öffnen und die Anpassungen an den drei beschriebenen Stellen vornehmen. Dazu einfach den Eintrag “restart: always” einfügen und die Anpassungen speichern. Für einen Test jetzt die Training Suite wie gewohnt mit dem folgenden Befehl starten.

Befehl: sudo docker-compose -f run_gpu.yml up

Wenn die Anpassungen soweit vorgenummen wurden, die Training Suite neu gestartet wurde und wie gewohnt genutzt werden kann wäre es jetzt an der Zeit den Rechner einmal neuzustarten um zu prüfen ob die Training Suite auch automatisch nach einem Neustart des Rechners startet und aufgerufen werden kann.

Wenn das alles klappt dann wäre der Autostart der Training Suite jetzt soweit fertig konfiguriert.

Nach diesem kleinen Ausflug in die REST API Schnittstellenwelt und dank SWAGGER doch recht einfachen Bedienung folgt in einer weiteren Anleitung die Installation und Konfiguration der AI Pipeline Image App die die Nutzung der REST API Schnittstelle der Training Suite deutlich vereinfacht und eine bessere Übersicht samt Downloadfunktion der Analyseergebnisse bietet.


Artikelübersicht - Wie setze ich die AI Pipeline auf:

AI Pipeline - Vorstellung der Anleitung
AI Pipeline - Die No-Code AI Pipeline ein Überblick
AI Pipeline - Die No-Code AI Pipeline die Bestandteile
AI Pipeline - Grundlagen zum Thema Hardware
AI Pipeline - Hardware Beispiel-Konfigurationen
AI Pipeline - Software Installation der No-Code AI Pipeline
AI Pipeline - Labeltool Lite - Installation
AI Pipeline - Labeltool Lite - Vorbereitung
AI Pipeline - Labeltool Lite - Bedienung
AI Pipeline - Tensorflow-Object-Detection-Training-GUI - Installation
AI Pipeline - Tensorflow-Object-Detection-Training-GUI - Ausführen
AI Pipeline – Tensorflow-Object-Detection-Training-GUI - Bedienung
AI Pipeline – Tensorflow-Object-Detection-Training-GUI - SWAGGER API testen des neuronalen Netzes
AI Pipeline - AI Image App Einrichten und Bedienen - Teil 1-2
AI Pipeline - AI Image App Einrichten und Bedienen - Teil 2-2
AI Pipeline - Trainingsdaten
AI Pipeline - Anonymization-Api

BlogYourEarth


Ich lebe in Bayern nahe München. In meinem Kopf habe ich immer viele Themen und probiert gerade im Bereich Internet neue Medien viel in meiner Freizeit aus. Ich schreibe an dem Blog da es mir Spaß macht über die Dinge zu berichten die mich begeistern. Ich freue mich über jeden Kommentar, über Anregung aber auch über Fragen.

(Visited 5 times, 1 visits today)