Andersons Blickwinkel
Ein Video-Codec fÞr die Analyse durch kÞnstliche Intelligenz

Obwohl der Techno-Thriller The Circle (2017) mehr ein Kommentar zu den ethischen Implikationen sozialer Netzwerke als zu den praktischen Aspekten externer Videoanalyse ist, ist es die unglaublich kleine âSeeChangeâ-Kamera im Zentrum der Handlung, die den Film wirklich in die Kategorie âScience-Fictionâ einordnet.

Die âSeeChangeâ-Kamera/ÃberwachungsgerÃĪt aus dem Techno-Thriller âThe Circleâ (2017).
Ein drahtloses und frei bewegliches GerÃĪt, etwa so groà wie eine groÃe Murmel, es ist nicht der Mangel an Solarpaneelen oder die Unwirtschaftlichkeit, Energie aus anderen Umgebungsquellen (wie Radiowellen) zu gewinnen, was SeeChange zu einem unwahrscheinlichen Vorhaben macht, sondern die Tatsache, dass es 24/7 Video komprimieren muss, mit welcher knappen Ladung es auch immer auskommen kann.
Die Stromversorgung billiger Sensoren dieser Art ist ein wichtiger Forschungsbereich in der Computer-Vision (CV) und Videoanalyse, insbesondere in nicht-urbanen Umgebungen, in denen der Sensor das Maximum an Leistung aus sehr begrenzten Energiequellen (Batterien, Solar usw.) herausholen muss.
In FÃĪllen, in denen ein solches Edge-IoT/CV-GerÃĪt dieser Art Bildinhalte an einen zentralen Server senden muss (oft Þber herkÃķmmliche Mobilfunknetze), sind die WahlmÃķglichkeiten begrenzt: Entweder muss das GerÃĪt ein bestimmtes leichtes neuronales Netzwerk lokal ausfÞhren, um nur optimierte Segmente von relevanten Daten an den Server zu senden; oder es muss âdummeâ Videos an die angeschlossenen Cloud-Ressourcen senden, um sie auszuwerten.
Obwohl die Aktivierung durch Ereignis-basierte Smart-Vision-Sensoren (SVS) diesen Overhead reduzieren kann, kostet auch diese AktivierungsÞberwachung Energie.
Am Macht festhalten
DarÞber hinaus hat das GerÃĪt, auch bei seltenen Aktivierungen (d. h. ein Schaf wandert gelegentlich in Sicht), nicht genug Leistung, um Gigabyte unkomprimiertes Video zu senden; es hat auch nicht genug Leistung, um stÃĪndig populÃĪre Video-Codec wie H.264/5 auszufÞhren, die Hardware erwarten, die entweder angeschlossen ist oder nicht weit von der nÃĪchsten Lade-Session entfernt ist.

Video-Analytics-Pipelines fÞr drei typische Computer-Vision-Aufgaben. Die Video-Codier-Architektur muss fÞr die Aufgabe trainiert werden und in der Regel fÞr das neuronale Netzwerk, das die Daten erhÃĪlt. Quelle: https://arxiv.org/pdf/2204.12534.pdf
Obwohl der weit verbreitete H.264-Codec einen geringeren Energieverbrauch als sein Nachfolger H.265 hat, hat er eine schlechte Komprimierungseffizienz. Sein Nachfolger, H.265, hat eine bessere Komprimierungseffizienz, aber einen hÃķheren Energieverbrauch. WÃĪhrend Googles Open-Source- VP9-Codec sie beide in jedem Bereich schlÃĪgt, erfordert er hÃķhere lokale Rechenressourcen, was weitere Probleme in einem angeblich billigen IoT-Sensor darstellt.
Was die lokale Analyse angeht: Sobald Sie auch nur das leichteste lokale neuronale Netzwerk ausgefÞhrt haben, um zu bestimmen, welche Frames (oder Bereiche eines Frames) es wert sind, an den Server gesendet zu werden, haben Sie oft die Energie verbraucht, die Sie durch das Senden aller Frames gespart hÃĪtten.

Extrahieren von maskierten Darstellungen von Rindern mit einem Sensor, der wahrscheinlich nicht an das Stromnetz angeschlossen ist. Verwendet es seine begrenzte LeistungskapazitÃĪt fÞr lokale semantische Segmentierung mit einem leichten neuronalen Netzwerk; indem es begrenzte Informationen an einen Server sendet, um weitere Anweisungen zu erhalten (was VerzÃķgerungen einfÞhrt); oder indem es âdummeâ Daten sendet (was Energie auf Bandbreite verschwenden wÞrde)? Quelle: https://arxiv.org/pdf/1807.01972.pdf
Es ist klar, dass âim Freienâ Computer-Vision-Projekte dedizierte Video-Codec benÃķtigen, die fÞr die Anforderungen spezifischer neuronaler Netze bei bestimmten und vielfÃĪltigen Aufgaben wie semantischer Segmentierung, SchlÞsselpunkterkennung (Bewegungsanalyse) und Objekterkennung optimiert sind.
Wenn Sie das perfekte VerhÃĪltnis zwischen Video-Komprimierungseffizienz und minimalem Datentransfer erreichen kÃķnnen, sind Sie einen Schritt nÃĪher an SeeChange und die FÃĪhigkeit, bezahlbare Sensornetzwerke in feindlichen Umgebungen zu bereitstellen.
AccMPEG
Eine neue Forschung der UniversitÃĪt von Chicago kÃķnnte einen Schritt in Richtung eines solchen Codecs gemacht haben, in Form von AccMPEG â einem neuen Video-Codier- und Streaming-Framework, das bei geringer Latenz, hoher Genauigkeit fÞr serverseitige Deep-Neural-Networks (DNNs) und bemerkenswert geringen lokalen Rechenanforderungen arbeitet.

Architektur von AccMPEG. Quelle: https://arxiv.org/pdf/2204.12534.pdf
Das System kann durch die Bewertung des AusmaÃes, in dem jeder 16x16px Makroblock die Genauigkeit des serverseitigen DNN beeinflussen kann, Wirtschaftlichkeiten gegenÞber vorherigen Methoden erzielen. Vorherige Methoden haben normalerweise die Genauigkeit auf der Grundlage jedes Pixels in einem Bild oder lokaler Operationen bewertet, um zu bestimmen, welche Regionen des Bildes von grÃķÃtem Interesse sein kÃķnnten.
In AccMPEG wird diese Genauigkeit in einem benutzerdefinierten Modul namens AccGrad geschÃĪtzt, das die Weise misst, in der die CodierqualitÃĪt des Makroblocks wahrscheinlich fÞr den Endanwendungsfall relevant ist, wie z. B. ein serverseitiges DNN, das versucht, Menschen zu zÃĪhlen, Skelett-SchÃĪtzung auf menschliche Bewegung durchzufÞhren oder andere hÃĪufige Computer-Vision-Aufgaben.
Wenn ein Video-Frame in das System eintritt, verarbeitet AccMPEG ihn zunÃĪchst durch ein billiges QualitÃĪts-Selektionsmodell, das AccModel genannt wird. Alle Bereiche, die wahrscheinlich nicht zu den nÞtzlichen Berechnungen eines serverseitigen DNN beitragen, sind im Wesentlichen Ballast und sollten fÞr die Codierung mit der niedrigsten mÃķglichen QualitÃĪt markiert werden, im Gegensatz zu bedeutungsvollen Regionen, die mit besserer QualitÃĪt gesendet werden sollten.
Dieser Prozess stellt drei Herausforderungen dar: Kann der Prozess schnell genug durchgefÞhrt werden, um akzeptable Latenz ohne den Einsatz energieschwacher lokaler Rechenressourcen zu erreichen? Kann eine optimale Beziehung zwischen Bildfrequenz und QualitÃĪt hergestellt werden? Und kann ein Modell schnell fÞr ein individuelles serverseitiges DNN trainiert werden?
Schulungslogistik
Idealerweise wÞrde ein Computer-Vision-Codec auf angeschlossenen Systemen auf die genauen Anforderungen eines bestimmten neuronalen Netzes vor trainiert. Das AccGrad-Modul kann jedoch direkt aus einem DNN mit nur zwei VorwÃĪrts-Propagierungen abgeleitet werden, was eine Einsparung von zehnmal dem Standard-Overhead bedeutet.
AccMPEG trainiert AccGrad fÞr nur 15 Epochen von drei Propagierungen durch das finale DNN und kann mÃķglicherweise live mit seinem aktuellen Modellzustand als Vorlage neu trainiert werden, zumindest fÞr ÃĪhnlich spezifizierte CV-Aufgaben.
AccModel verwendet den vorgefertigten MobileNet-SSD-Feature-Extractor, der in billigen RandgerÃĪten hÃĪufig verwendet wird. Bei einem Umsatz von 12 GFLOPS verwendet das Modell nur ein Drittel der typischen ResNet18-AnsÃĪtze. Neben Batch-Normalisierung und Aktivierung besteht die Architektur nur aus Konvolutions-Schichten, und ihr Rechenaufwand ist proportional zur BildgrÃķÃe.

AccGrad entfernt die Notwendigkeit fÞr finale DNN-SchluÃfolgerung, was die Bereitstellungslogistik verbessert.
Bildfrequenz
Die Architektur lÃĪuft optimal bei 10 Bildern pro Sekunde, was sie fÞr Zwecke wie landwirtschaftliche Ãberwachung, GebÃĪude-Abnutzungs-Ãberwachung, Hochblick-Verkehrsanalyse und reprÃĪsentative Skelett-SchÃĪtzung in menschlicher Bewegung geeignet macht; jedoch sind sehr schnell bewegte Szenarien, wie z. B. Niedrigblick-Verkehr (von Autos oder Menschen) und andere Situationen, in denen hohe Bildfrequenzen von Vorteil sind, fÞr diesen Ansatz nicht geeignet.
Ein Teil der Methode liegt in der Annahme, dass benachbarte MakroblÃķcke wahrscheinlich von ÃĪhnlichem Wert sind, bis zu dem Punkt, an dem ein Makroblock unter die geschÃĪtzte Genauigkeit fÃĪllt. Die durch diesen Ansatz erhaltenen Bereiche sind klarer abgegrenzt und kÃķnnen mit hÃķherer Geschwindigkeit berechnet werden.
Leistungsverbesserung
Die Forscher testeten das System auf einer 60-Dollar-Jetson-Nano-Platine mit einem einzelnen 128-Kern-Maxwell-GPU und verschiedenen anderen billigen Ãquivalenten. OpenVINO wurde verwendet, um einige der Energieanforderungen der sehr dÞnnen lokalen DNNs auf CPUs zu verlagern.
AccModel selbst wurde ursprÞnglich offline auf einem Server mit 8 GeForce-RTX-2080S-GPUs trainiert. Obwohl dies eine beeindruckende Reihe von Rechenleistung fÞr eine anfÃĪngliche Modellbildung ist, bedeutet die leichte Neu-Trainierung, die das System ermÃķglicht, und die MÃķglichkeit, ein Modell an bestimmte Toleranzparameter Þber verschiedene DNNs anzupassen, die ÃĪhnliche Aufgaben angehen, dass AccMPEG Teil eines Systems sein kann, das minimalen Aufwand im Freien benÃķtigt.
Â
ErstverÃķffentlicht am 1. Mai 2022.












