Das ist richtig. Die zwei aktuellen Modelle zielen auf übliche Anwendungsfälle von Überwachungskameras im privaten und gewerblichen Umfeld ab.
Das sind dann vollkommen andere Objekte als im Privatbereich.
Es wird noch eine Weile dauern bevor die oben genannten Modelle vollständig in unser komplettes Software-Angebot eingebettet sind. Aber danach ist es angedacht noch weitere - dann optional herunterladbare - Modelle bereitzustellen, die dann weniger Klassen haben und mit kleineren Datensätzen schneller trainiert werden können.
Ich würde gerne wenige ganz spezielle Objekte selber trainieren können.
Das Problem ist - man kann nicht einfach ein anderes Modell auf die Kamera legen. Da gibt es 3 Probleme:
1.) Das Modell wird nach dem Training im ONNX Format exportiert. Muss danach aber modifiziert und kompilliert werden, um auf dem in der Kamera verbauten AI-Beschleuniger Chip ausgeführt werden zu können. Dabei gibt es auch Restriktionen - nicht jede Modell-Architektur ist erlaubt.
2.) Jedes Modell kann andere Anforderungen an den Input haben. Wenn man „mal eben“ ein neues Modell ausprobieren möchte, crashed einem das meistens erstmal mit einem „incorrect shape“ beim Eingangs-Tensor. D.h. die Kamera Firmware muss hier auch entsprechend für jedes Modell angepasst werden, damit die Bilder richtig aufgearbeitet werden, bevor man sie zu dem Modell durchreicht.
3.) Das Modell kann nicht nur ausgeführt und dann das Ergebnis auf den STDOUT geleitet werden. Die Vorhersage des Modells muss immer erstmal ausgewertet und die aufgearbeiteten Informationen dann entsprechend innerhalb der FW weitergereicht werden. Das Format mit dem die Ausgabe erfolgt variiert von Modell zu Modell. D.h. auch hier müsste für jedes Modell das man ausprobieren möchte eine Firmware-Anpassung durchgeführt werden.
Das sind keine grossen Probleme, wenn es sich um eine industrielle Anwendung handelt und ein Budget vorhanden ist. Bei kleinen, privaten Anwendungen würde ich jedoch eher zu einem Rapsberry Pi raten und im Intervall Bilder von der Kamera ziehen - preiswert, gut dokumentiert und 100% flexible.
Hintergrund ist der, ich möchte andere Objekte sicher erkennen und als Alarm ausgeben als die, die in der Objekterkennung schon enthalten sind.
Der Nachteil der externen Lösung (RasPi) ist, dass man die Erkennung dann nicht eingebettet hat in der Firmware der Kamera und entsprechend Push/Email Benachrichtigungen usw. nicht direkt nutzen kann. Aber das ist auch kein Problem, wenn man ein Smarthome (Node-RED, HomeAssistant, ioBroker, o.ä.) nutzt und dort sowohl das AI Erkennung als auch die Kamera eingebunden hat.
Je nachdem wie „speziell“ diese Objekte sind, könnte man auch überlegen dafür ein reguläres, optionales Model bereitzustellen. Voraussetzung dafür wäre:
- Das Modell muss auch für andere Kunden interessant sein.
- Und es müssen offene, „gute“ Datensaätze bereitstehen, um das Modell zu trainieren.