[PYTHON] Echtzeit-Personalschätzung (neuer Modellbau)

Einführung

Umweltbau zweimal zuvor Das letzte Mal bin ich mit der Lernausgabe gekommen. Als nächstes möchte ich ein Modell erstellen, das richtig verwendet werden kann.

Ziel dieses Projekts

Letztes Mal schrieb ich über das Ziel dieses Projekts und das Ziel war es, "einen Nogisaka-Chan-Klassifikator zu machen". Nun, ich habe es nicht erreicht, aber ich wusste, wie ich es schaffen sollte. Vorerst habe ich ungefähr die Hälfte des Ziels erreicht. Also habe ich mich gefragt, was ich tun soll, und mich vorerst entschieden. Wir werden auch ein Werkzeug entwickeln, das es basierend auf der von yolo erkannten Person beobachten kann. Ich habe in der Klasse ähnlichen Code geschrieben, daher denke ich darüber nach, ihn zu verbessern. Weitere Informationen finden Sie unter git. Das ist das bisherige Ziel dieses Projekts.

Modellbau

Da im vorherigen Artikel beschrieben wurde, wie ein Modell erstellt wird, werden wir es unter Bezugnahme darauf erstellen. Um ehrlich zu sein, zeige ich Ihnen diesen Artikel nicht wirklich. Bitte beachten Sie, dass es für Sie keine Aufzeichnung mehr ist.

(1) Sammle Bilder von Yoda-chan. Letztes Mal habe ich 10 Bilder von Yoda-chan gesammelt und zu einem Modell verarbeitet. Nun, ich dachte, das würde nicht funktionieren, aber es würde nicht funktionieren. Deshalb brauchen wir Materialien, um ein Modell zu erstellen, also beginnen wir mit der Methode des Sammelns von Materialien.

search.py



from icrawler.builtin import BingImageCrawler
crawler = BingImageCrawler(storage={"root_dir": "asuka"})
crawler.crawl(keyword="Der Name, den Sie suchen möchten", max_num=100)

Ich habe Anmerkungen basierend auf dem Modell gemacht, aber das war schwierig. Ich werde vorerst so etwas wie eine Modelldatei posten.

data.yaml


train: test1/train/images
val: test1/valid/images
nc: 2
names: ['asuka', 'yoda']

Ausgabeergebnis

Ich habe ungefähr 100 Blätter in 2 Kategorien und 300 Epochen trainiert. Es hat sehr viel Zeit in Anspruch genommen, also ehrlich Es ist nicht realistisch. Nun, ich habe es geschafft, also habe ich versucht, anhand eines Bildes zu schließen, das sich von den Trainingsdaten unterscheidet, um zu überprüfen, ob es erkannt wird. Klicken Sie hier für Ergebnisse 1199469.jpg Infolgedessen funktioniert es. Ich frage mich, ob dies mit Videos möglich ist. Ich werde es etwas später versuchen.

Problem

Die Zeit, die zum Lernen benötigt wird, nimmt derzeit auf einem lokalen PC (CPU) enorm viel Zeit in Anspruch. Wenn es das aktuelle Gefühl ist, werden sogar 130 Blatt Stunden dauern. In diesem Sinne bin ich der Meinung, dass die Verwendung der Ausführung in der Cloud (GPU) effizienter ist. (Nun, es ist natürlich) Nachtrag In 2 Kategorien funktioniert die Inferenz in 2 Kategorien, aber wenn ich Bilder von anderen Personen einsetze, funktioniert das einfach nicht. Ich suche nach einer Möglichkeit, damit umzugehen. 1.jpg Erwägung ・ Verbesserung der Berechnungsgeschwindigkeit Um viele Modelle zu erstellen und zu berücksichtigen, müssen zuerst viele Modelle erstellt werden. Daher müssen wir uns überlegen, wie wir schnell ein Modell erstellen können. ・ Erstellen Sie ein Modell mit einem lokalen Computer (GPU).

nächstes Mal

Als nächstes werde ich speziell darüber schreiben, wie man das benutzt. Nachtrag Ich möchte etwas gegen den hinzugefügten Teil unternehmen. Bitte lassen Sie mich wissen, wenn Sie einen Rat haben.

Recommended Posts

Echtzeit-Personalschätzung (neuer Modellbau)
Vorhersagemodellkonstruktion ①
Vorhersagemodellkonstruktion ①
Echtzeit-Personalschätzung (neuer Modellbau)
Kaggle House Preise ② ~ Modellierung ~
Zeitreihenanalyse 4 Konstruktion des SARIMA-Modells