
Beschreibung
In diesem Projekt wurde eine Softwarelösung in Form einer App entwickelt, im Folgenden auch „Keras-RetinaNet“ genannt. Mit der App ist es möglich, eine Klassifizierung von Kennzeichen durchzuführen. Die bisher genauesten Objektdetektoren basieren auf einem von R-CNN populären zweistufigen Ansatz. Im Gegensatz dazu können einstufige Detektoren, die über eine regelmäßige, dichte Abtastung möglicher Objektpositionen angewendet werden, möglicherweise schneller und einfacher sein, haben jedoch die Genauigkeit von zweistufigen Detektoren bisher beeinträchtigt.
Verbindung mit Google Share
Hier können Sie Ihre Datei mit Google verbinden
from google.colab import drivedrive.mount('/content/drive)
Check Zugriff auf Grafikkarte
Mit dem Kommando !nvidia-smi können Sie den Zugriff auf die Grafikkarte prüfen
nvidia-smi

Installation
Jetzt kommen wir zur Installation von der App. Als erstes müssen wir die Datei herunterladen, oder mit GitHub installieren
git clone https://github.com/fizyr/keras-retinanet.git

pip install --upgrade keras

cd keras-retinanet/ pip install . python setup.py build_ext --inplace pip install gdown pip install tensorflow-gpu
- Im folgenden haben wir für Sie einen Code geschrieben, den Sie gerne ausführen können.
- Jetzt müssen wir die json Daten herunterladen
gdown --id 1mTtB8GTWs74Yeqm0KMExGJZh1eDbzUlT --output indian_number_plates.json
- Außerdem brauchen wir eine CSV Datei, die wir Ihnen bei Google Drive bereitstellen. Es wird eine Meldung kommen, drücken sie auf “Trotzdem herunterladen”
gdown --id 1wPgOBoSks6bTIs9RzNvZf6HWROkciS8R --output snapshots/resnet50_csv_10.h5
- Den folgenden Code fügen Sie bei dem oberen hinzu. Damit wird das gefundene Kennzeichen markiert und heruntergeladen.
- Wenn Kästchen geformt sind (None, None, 4) (für (x1, y1, x2, y2)), werden die Bewertungen geformt (None, None) (Klassifizierungsbewertung) und die Beschriftungen werden geformt (None, None) (Beschriftung entsprechend der Ergebnis). In allen drei Ausgaben repräsentiert die erste Dimension die Form und die zweite Dimension indiziert die Liste der Erkennungen.
- Damit zeigen wir unsere gefundene Kennzeichen auf den Bildern an
df = pd.DataFrame(dataset)df.head()

- Hier können wir die Bilder angezeigt bekommen und das Kennzeichen wird markiert
show_image_objects(df.iloc[0])

show_image_objects(df.iloc[5])

Laden des trainierten Modells
ls snapshots
Vorhersagen
In diesem Abschnitt können wir eine Vorhersage machen
test_df.head(n=10) show_detected_objects(test_df.iloc[1])