Reichweite der Bewegungsschätzung

bewegungWir stellen Ihnen hier eines der im Rahmen unserer Qualitätsanalyse für einen namhaften Kunden aus der Industrie aufgedeckten Probleme vor. In diesem Fall lag eine zu geringe Reichweite des Algorithmus zur Bewegungskompensation vor, wodurch bei der Videocodierung ein größeres Datenaufkommen entstand als eigentlich nötig gewesen wäre. Wir erklären Ihnen im Folgenden unser Vorgehen zur Erkennung des Problems, unseren Befund und die Lösung für das Problem. 

 

 

Einleitung

Im Rahmen unserer Arbeit haben wir einen großen deutschen Automobilhersteller bei der Entwicklung eines auf H.264 basierenden Videosystems durch unsere Analyse beratend unterstützt. Das Videosystem ist zum späteren Einsatz im Automobil vorgesehen, wobei Video-Daten im H.264 Format per Streaming an mehrere im Automobil verbaute Bildschirme übertragen werden. Kern des Videosystems ist eine Konvertierungskomponente, welche beliebige Bilddaten in das H.264-Format wandelt.

In der Entwicklungsphase kam es innerhalb dieses Videosystems zu zunächst unerklärlichen Problemen. Aufgrund unserer Erfahrung und Kompetenz wurden wir beauftragt, bei der Lösung dieser Probleme zu helfen. Wir gingen dabei vor wie folgt:

  • Auf Basis erster Beobachtungen und der Fehlerbeschreibung durch den Automobilhersteller erstellten wir einen maßgeschneiderten Referenz-Korpus von Testsequenzen und stellten diesen dem Automobilhersteller zur Verfügung.

  • Dieser Referenz-Korpus wurde zweimal in H.264 konvertiert: Einmal im Videosystem des Automobilherstellers (A), einmal durch uns (B). Auf diese Weise erhielten wir zwei auf dem Referenz-Korpus basierende Vergleichs-Korpora, A und B.

  • Vergleichskorpus A nutzten wir zur Suche nach und zur Identifikation von Problemen und Fehlern in der Konvertierungskomponente des Videosystems des Automobilherstellers.

  • Vergleichskorpus B nutzten wir als optimales Beispiel zum Vergleich und zur Gegenüberstellung mit Vergleichskorpus A.

  • Wir führten für beide Vergleichskopora eine Reihe von Analysen, darunter auch die Analyse der Bewegungsvektoren durch. Für die Analysen auf Basis von PSNR und SSIM nutzten wir den originalen Referenz-Korpus zum Vergleich.

Durch die so durchgeführten Analysen konnten wir die Ursachen der bekannten Probleme aufdecken und zusätzlich eine Reihe von weiteren Problemen aufdecken und lösen, welche ansonsten mit hoher Wahrscheinlichkeit erst nach Fertigstellung des Videosystems aufgefallen wären. Durch unsere Hilfe konnten spätere schlechte Testergebnisse in Fachzeitschriften und Unzufriedenheit bei den Kunden des Automobilherstellers vermieden werden. Eines der so aufgedeckten Probleme ist das Problem der Reichweite der Bewegungsschätzung, welches wir Ihnen im Folgenden als Beispiel unserer Arbeit beschreiben wollen.

Das Problem

Bei der Durchsicht der durch den Automobilhersteller konvertierten Testsequenzen des Referenz-Korpus konnten wir feststellen, dass der Bewegungschätzungsalgorithmus in der H.264-Konvertierungskomponente des Videosystems nur über eine ungenügende Reichweite verfügt. Das Problem zeigt sich bei der Analyse der Bewegungsvektoren, wenn bewegliche Bildelemente eigentlich durch Bewegungsvektoren, aufeinander abgebildet werden sollten, die entsprechenden Bewegungsvektoren jedoch nicht vorhanden sind. Besonders auffällig ist dies bei der unten gezeigten Bewegtbildsequenz des Pendels.

Die Testsequenz zeigt ein Pendel, welches schnell von rechts nach links und wieder zurück schwingt. In diesem konkreten Fall sollte die Kugel am Ende des Pendels eigentlich durch Bewegungsvektoren innerhalb des Video-Streams auf sich selbst abgebildet werden, jedoch sind die entsprechenden Bewegungsvektoren nicht vorhanden. Konkret bedeutet dies, das sehr viel mehr an Datenvolumen notwendig ist, um die Videosequenz zu speichern, da die Kugel am Ende des Pendels jeweils komplett neu erzeugt werden muss und so auch innerhalb des Videostreams gespeichert werden muss. Das entsprechend entstehende Datenvolumen könnte, wenn es nicht zu diesem Zweck eingesetzt werden müsste, genutzt werden um insgesamt eine höhere Wiedergabequalität bei gleichbleibender Datenrate zu erreichen.

Die Lösung

Eine Erhöhung der Reichweite des Bewegungsschätzungsalgorithmus und damit auch eine größere Abdeckung ist, wie von unserem Referenzbeispiel gezeigt, möglich. In unserem Referenzbeispiel, welches unter Einsatz anderer Einstellungen erzeugt wurde, ist die Bewegung des Pendels annähernd vollständig durch Bewegungsvektoren beschrieben.

Die Reichweite der Bewegungsschätzung muss also innerhalb des Videosystems des Automobilherstellers angepasst werden. Es bleibt zu beachten, dass insbesondere die Bewegungsschätzung innerhalb der Videokonvertierung sehr komplex ist und daher viel CPU-Zeit benötigt. Mit dem bislang verbauten Prozessor würde durch eine erhöhte Reichweite eventuell die Latenzzeit erhöht werden, was wiederum zu inakzeptablen Verzögerungen bei der Wiedergabe führen könnte.

Die grundsätzliche Lösung für das Problem besteht daher aus zwei Schritten:

  • Auswechseln des bisherigen Prozessors im System durch einen höher getakteten, stärkeren Prozessor.

  • Anpassung der Einstellungen der Konvertierungskomponente, um die zusätzliche CPU-Leistung für eine höhere Reichweite der Bewegungsschätzung zu nutzen.

 

 

Copyright 2012 – All rights reserved

Gelesen 2862 mal Letzte Änderung am Freitag, 28 November 2014 10:54