[PYTHON] Stoppschilderkennung Entwicklung des Visualisierungsteils Teil1 Erkennung und Aufzeichnung von Objekten * Dieses Mal wird der Stuhl erkannt (das Modell wurde nicht von mir selbst hergestellt)

zunaechst

Das letzte Mal habe ich über das Lernmodell der Schildererkennung geschrieben. Dieses Mal werde ich ein Programm schreiben, um es mithilfe des erkannten Modells tatsächlich zu erkennen und zu visualisieren.

Funktionen, die Sie erreichen möchten

・ Speichern Sie das geschätzte Video mit dem Video mit yolov5.

Realisierung der Funktion, die Sie realisieren möchten

Vorwort

Eigentlich habe ich vorher eine einfache mit Tensorflow, Python und Verarbeitung gemacht, also möchte ich sie schreiben, indem ich dieses Programm umlenke. Das Programm ist auf github veröffentlicht. * Ich habe vergessen, wie man ein Lernmodell erstellt und dieses Modell mit dem Label-Programm ausführt. URL https://github.com/S-mishina/Personal-estimation Die Skizze_190628a / Skizze_190628a.pde dieses Programms ist der Visualisierungsteil. Ich werde hier auch das gesamte System posten. image.png Von hier aus werden wir yolov5 tatsächlich modifizieren.

Ergreifen Sie Maßnahmen, wenn etwas Bestimmtes erkannt wird.

Dieses Mal wollte ich es einfach implementieren. Als ich etwas fand, das ich erkennen wollte, erkannte ich es. Ich habe ein Programm erstellt, das eine Benachrichtigung ausgibt.

detect.py


label1 = str((names[int(c)]))  # add to string
if label1=="chair":
 print("Einen Stuhl entdeckt.")

Nun, es ist ein einfacher Code, so dass jeder ihn verstehen kann, aber vorerst, wenn Yolo ein Objekt erkennt, scheint es, dass das, was erkannt wird, wahrscheinlich in Namen [int (c)] aufgezeichnet ist. Wenn es mit dem übereinstimmt, was Sie erkennen möchten, wird es mit OK erkannt. Wenn es nicht übereinstimmt, wird es mit NG erkannt.

Ausblick für dieses Programm

Als Aussicht auf diese implementierte Funktion möchte ich sie mit einem System verbinden, das visualisieren kann, ob sie durch Socket-Kommunikation anstatt zeichenbasiert erkannt wird oder nicht.

Notieren Sie die erkannte Zeit und Dinge.

Dieses Mal soll der Stuhl erkannt werden, daher möchte ich ein Programm schreiben, das protokolliert, wenn der Stuhl erkannt wird. Teil importieren

detect.py


import pathlib

Teil der Dateierstellung

detect.py


#Initialisieren
    set_logging()
    device = select_device(opt.device)
    if os.path.exists(out):
        shutil.rmtree(out)  #Löschen Sie den Ausgabeordner
    os.makedirs(out)  #Erstellen Sie einen neuen Ausgabeordner
    d_today = datetime.date.today()
    
    f = pathlib.Path('daystext/'+ str(d_today) +'.txt')
    f.touch()

Aufnahmeteil

detect.py


                    label1 = str((names[int(c)]))  # add to string
                    if label1=="chair":
                     print("Einen Stuhl entdeckt.")
                    with open('daystext/'+str(d_today)+'.txt', 'a') as f:
                     dt_now = datetime.datetime.now()
                     f.write(str(dt_now)+"Einen Stuhl entdeckt."+"\n")

Was wurde aufgezeichnet

2020-10-12 17:27:42.914446 Erkannter Stuhl.
2020-10-12 17:27:42.941445 Erkannter Stuhl.
2020-10-12 17:27:42.968444 Erkannter Stuhl.
2020-10-12 17:27:42.996444 Erkannter Stuhl.
2020-10-12 17:27:43.024443 Erkannter Stuhl.
2020-10-12 17:27:43.051442 Erkannter Stuhl.
2020-10-12 17:27:43.079441 Erkannter Stuhl.
2020-10-12 17:27:43.108440 Erkannter Stuhl.
2020-10-12 17:27:43.135454 Erkannter Stuhl.
2020-10-12 17:27:43.162439 Erkannter Stuhl.
2020-10-12 17:27:43.190452 Erkannter Stuhl.
2020-10-12 17:27:43.218437 Erkannter Stuhl.
2020-10-12 17:27:43.245436 Erkannter Stuhl.
2020-10-12 17:27:43.274445 Erkannter Stuhl.
2020-10-12 17:27:43.301448 Erkannter Stuhl.
2020-10-12 17:27:43.329434 Erkannter Stuhl.
2020-10-12 17:27:43.357433 Erkannter Stuhl.
2020-10-12 17:27:43.384432 Erkannter Stuhl.                  

Es wird so aufgenommen.

Der Teil, um das Video aufzunehmen

Es scheint hier ziemlich schwierig zu sein, deshalb werde ich es vorerst das nächste Mal drehen. Es tut uns leid.

Zum nächsten Mal

Dieses Mal habe ich hauptsächlich ein Programm geschrieben, das das Standardprogramm von yolov5 verbessert und es nach dem Erkennen eines Objekts aufzeichnet. Das nächste Mal möchte ich den Teil schreiben, der konkret visualisiert werden soll. Vielen Dank.

Recommended Posts

Stoppschilderkennung Entwicklung des Visualisierungsteils Teil1 Erkennung und Aufzeichnung von Objekten * Dieses Mal wird der Stuhl erkannt (das Modell wurde nicht von mir selbst hergestellt)
Stoppschilderkennung Entwicklung des Visualisierungsteils Teil3 Benachrichtigung per Spracheingabe über Socket-Kommunikation, wenn ein Objekt erkannt wird
Stoppschilderkennung Entwicklung des Visualisierungsteils Teil2 Benachrichtigen Sie ein anderes System per Socket-Kommunikation, wenn ein Objekt erkannt wird
Stoppschilderkennung Entwicklung des Visualisierungsteils Teil4 Benachrichtigung per Spracheingabe über Socket-Kommunikation, wenn ein Objekt erkannt wird (mehrere Editionen)
Stoppschilderkennung Entwicklung des Visualisierungsteils Teil5 Zeigen Sie an, was erkannt wurde, als ein Objekt erkannt wurde