Ein Alleinstellungsmerkmal des Projektes ist die Verarbeitung der Daten. Die meisten Systeme benutzen zum Erkennen von Fahrzeugen einen externen Server zur Bildverarbeitung. Konkret bedeutet das, dass eine Kamera ein Video-Stream an einen Server schickt. Hier wird anschließen, das Bild analysiert und Fahrzeuge sowie Fahrzeugtyp erkannt und gespeichert. Dies hat den Nachteil, dass eine starke Rechenleistung benötigt wird. Wenn nun weitere Kameras hinzugefügt werden, muss nicht nur die Hardware für die Kamera besorgt werden, sondern auch die Rechenleistung des Servers angepasst werden. Unsere Lösung dafür ist es, die Arbeit vom Server auf die Kamera Module auszulagern. So lösen sich die Probleme mit der Skalierung und eventuelle Datenschutzprobleme, welche auftreten können, wenn live Bilder über das Internet übertragen werden.
Um die Bilder verarbeiten zu können, wird eine künstliche Intelligenz benötigt. Im ersten Schritt wird das Bild analysiert und alle wichtigen Objekte, z. B. PKW, LKW, Bus, Motorrad wird erkannt. Im nächsten Schritt wird der Zusammenhang zum vorherigen Bild hergestellt. Ein Mensch würde sich diese Bilder ansehen, denn Zusammenhang sofort erkennen und sagen können, welches Objekt auf dem vorigen Bild zu sehen ist. Ein Computer kann das nicht. Also muss mithilfe des Feature Matching Algorithmus und des optischen Flusses ein Zusammenhang hergestellt werden. So kann festgestellt werden, in welche Richtung sich das Fahrzeug bewegt.
Weiters ist das gesamte Projekt Open Source. Das bedeutet, jede Zeile Code ist für jeden einsehbar. Dies ist unserer Meinung nach wichtig, da es ermöglicht zu überprüfen, welche Daten gesammelt werden und ob sich Sicherheitslücken im System befinden. Zusätzlich kann jeder mit genügend Wissen etwas zu dem Projekt beibringen.
Erkenntnisgewinn
Da das Projekt breit gefächert ist, konnten viele Erkenntnisse in den verschiedensten Bereichen gewonnen werden. Einer der Haupterkenntnisse ist es, dass bewiesen wurde, dass es möglich ist, die Zählung der Fahrzeuge lokal an jeder Ampel durchzuführen und nicht extra extern ein Server benötigt wird.
Es ist möglich die künstliche Intelligenz auf jeder Ampel mithilfe eines energieeffizienten Mikrocomputer auszuführen. Da die künstliche Intelligenz jedoch nur für jeden diskreten Moment bestimmen kann, wie viele Fahrzeuge sich im Bild befinden, wurde dies erweitert. Damit die künstliche Intelligenz ein Gefühl für die Zeit bekommt, wurde auch maschinelles Lernen (Regression) bzw. andere Algorithmen, wie der optische Fluss oder Feature Matching, eingebaut um Fahrzeug über die Zeit verfolgen und damit zählen zu können.
Dies alles ermöglicht in Kombination die Analyse des Verkehrs mit einzelnen und unabhängigen Messstationen. Auch die Privatsphäre der Menschen ist gewährleistet, da hier, nicht so wie bei anderen Konkurrenzprodukten, alles lokal verarbeitet wird. Bei alternativen Systemen wird nämlich das Video einfach an einen leistungsstarken Server geschickt, welcher das dann verarbeiten soll. Dabei wird aber alles, was die Kamera aufnimmt durch das Internet geschickt und unterliegt damit einem gewissen Risiko abgefangen und missbraucht zu werden. Außerdem kann dadurch die Bevölkerung überwacht werden, was teilweise auch im Konflikt mit der DSGVO steht. Bei unserer Lösung wird die Verkehrsanalyse schon lokal ausgeführt, wodurch ein solcher Missbrauch des Videos erst gar nicht möglich wird. Dadurch werden die Vorteile der automatisierten Verkehrszählung mit der Privatsphäre einer manuellen Zählung kombiniert.
Weiters hat die geringere Datenmenge, welche dann an den Server zur Darstellung geschickt wird, weitere Vorteile. Dadurch dass nur die Messergebnisse übertragen werden müssen und nicht ein ganzes Video, werden alle Geräte (Router, Switches, …), welche im Internet liegen entlastet. Vielleicht wirkt dies im ersten Moment eher nebensächlich, aber es ist in Wahrheit sehr relevant. Das liegt daran, dass „das Internet“, bzw. im Endeffekt alle Geräte, welche das Internet aufbauen, einen extrem hohen Stromverbrauch haben. Hierzu gibt es Studien, welche belegen, dass wenn das Internet ein Land wäre, dass es den 3. höchsten Stromverbrauch hättei (gleich nach China und der USA). Wenn man nun diesen Stromverbrauch aufteilt, dann kann laut Sandvine und dem »The Global Internet Phenomena Report« herausgefunden werden, dass Video-Streaming dafür hauptverantwortlich ist. Zwar sind damit eher Streaming-Angebote, wie Netflix oder Amazon Prime gemeint, jedoch würde unser Projekt auch dazu beitragen. Aus diesem Grund ist es eine umweltfreundlichere Lösung die Messdaten zu senden, anstatt den Videostream über das Internet zu übertragen.
Ein weiterer Vorteil, welcher die geringen Datenmengen bringen, ist, dass keine breitbandige Netzwerkverbindung benötigt wird. Aus diesem Grund ist es bei diesem Projekt auch möglich dynamisch zu entscheiden, ob die Messdaten nun über LTE/5G übertragen werden soll, was eine breitbandige Verbindung darstellt oder LoRa. Bei LoRa setzt dieses Projekt auf das LoRaWAN »The Things Network«. Dies ist ein globales Projekt, bei welchem unabhängige Privatpersonen oder Firmen Geräte in ein sogenanntes Mesh-Netzwerk einbauen. Hierbei kann es verschiedene Module, zu welchen auch unsere Messstation gehört. Diese sendet dann in das »The Things Network« aus und ein Gateway in der Nähe fängt dieses Signal auf und sendet es weiter über das Internet. Unser Projekt trägt dadurch auch zum Mesh-Netzwerk bei, da es zwar einerseits von genau diesem profitiert, da es andere Gateways verwenden kann, aber anderseits trägt es auch dazu bei, da an Orten, an welchen das Netzwerk noch nicht ausgebaut wurde, bietet diese Lösung einen Anreiz damit anzufangen. Dadurch macht es dann es wiederum für andere Projekte es attraktiver auch auf das »The Things Network« zu setzen, da es dann schon ausgebaut ist.
Dadurch dass die gesammelten Daten, dann nicht nur der Verkehrsbeauftragten überlassen wird, sondern allen Menschen angezeigt wird, hat jeder einen Vorteil davon. Alle haben die Möglichkeit die aktuelle Verkehrssituation im Webinterface zu begutachten und eigene Schlussfolgerungen daraus zu ziehen. So kann vielleicht erkannt werden, an welchen Stellen es sich gerade staut und ob es deshalb vielleicht nicht schneller wäre mit dem Fahrrad oder zu Fuß das Problem einfach zu umgehen bzw. zu umfahren. Die Verkehrsbeauftragten haben dann den Vorteil, dass sie genau wissen, zu welcher Uhrzeit an welchem Ort ein hoher Verkehrsaufdrang ist. Dadurch können diese Informationen in die weitere Stadtplanung fließen. Dadurch kann an diesen Stellen der öffentliche Nahverkehr ausgebaut werden, damit es zu weniger Staus kommt und die Menschen ein unkomplizierteres Leben führen können. Im Endeffekt kann diese Verkehrsanalyse verwendet werden, damit nachhaltig eine umweltfreundlichere und auch menschenfreundliche Stadtumgebung geschaffen werden kann.
Das Überprüfen der Ziele wurde relativ praxisnah ausgeführt. Um das Zählen der Fahrzeuge zu überprüfen wurde eine Testaufnahme genommen und anhand dieser wurde die künstliche Intelligenz und das maschinelle Lernen verfeinert. So wurden alle Fahrzeug in dem Video zuerst von einem Teammitglieds gezählt und danach wurde dieser Referenzwert immer wieder mit dem Ergebnis des Programms verglichen. Allgemein war die Zählung der Messstation immer höher, da die künstliche Intelligenz nicht weiß, was dasselbe Fahrzeug ist und was ein neues Fahrzeug. Dadurch denkt diese, dass sich jeden Frame alle Fahrzeug neu sind. Dieser Effekt wurde so gut wie möglich mit maschinellem Lernen und Feature Matching versucht zu reduzieren, um ein akkurates Messergebnis zu erhalten. Die Übertragung mittels LoRa konnte durch erfolgreiches ansprechen eines Gateways überprüft werden.
Anhänge:
Voting Link:
Partner Maturaprojekt-Wettbewerb