-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zur Ermittlung
der Zuverlässigkeit
eines Feldes von Bewegungsvektoren eines Bildes in einer Folge von
Videobildern. Ein Zuverlässigkeitskriterium
wird errechnet und einem Bild zugeordnet, um die Zuverlässigkeit
des Bewegungsvektorfeldes, das mit dem Bild verbunden ist, anzuzeigen.
Es kann mit anderen Zuverlässigkeitsparametern
kombiniert werden, die bereits bekannt sind, so wie Parameter zu
Ermittlung der Sättigung
des Bewegungsvektorfeldes, zur Ermittlung von Szenenwechseln, usw.,
um auf diese Weise den Vertrauensgrad in den sich ergebenden Parameter
zu verbessern.
-
EP-A-0
903 946 legt ein Bewegungskompensationsverfahren offen, einschliesslich
Schritten zur Ermittlung defekter Bewegungsvektoren, die auf räumlicher
Unvereinbarkeit der horizontalen und vertikalen Komponenten des
Vektorfeldes beruhen.
-
EP-A-0
648 047 legt ein Verfahren zur Berechnung eines Vertrauensmasses
für die
Zuverlässigkeit der
geschätzten
Bewegungsvektoren offen. Das Vertrauensmass basiert auf der Auswertung
von Vorhersagefehlern und auf horizontalen und vertikalen Komponenten
des Bewegungsvektors.
-
Die
Umwandlung von Standards, oder allgemeiner, die Umwandlung der Bildwechselfrequenz
beruht gewöhnlich
auf zwei Arten von Vorgängen:
- – Bewegungsschätzung, die
ein Bewegungsvektorfeld liefert, das getreu zu den Raum-/Zeitwechseln
in den Objekten ist, die die Szene darstellen,
- – Interpolation,
die sich des Vektorfeldes bedienen kann, um die Objekte korrekt
in einem zu erstellenden Zwischenbild (intermediate frame) zu positionieren.
-
Lineare
oder bewegungskompensierte Interpolationen, die gewöhnlich bei
der Bildwechselfrequenzumsetzung angewendet werden, passen nicht
immer für
alle Situationen, die man bei einer Videosequenz antrifft. Manchmal
ist es notwendig, mit kritischen Situationen umzugehen, die für die Schätzfunktion
oder den Interpolator Schwierigkeiten mit sich bringen, in dem man
eine geeignete Ermittlung einsetzt, die eine besser passende Interpolationskonfiguration
erzwingen kann.
-
Das
ist deshalb so, in der Theorie, weil ein Bewegungsvektorfeld über eine
Videosequenz zeitlich uniform ist. Ein Bewegungsvektorfeld unterliegt,
wenn es korrekt ist, sehr geringen Veränderungen des Zeitbereichs.
Eine Unregelmässigkeit
im Zeitbereich ist oft gleichbedeutend mit einem unzuverlässigen Bewegungsvektorfeld.
Wenn eine ungewöhnliche
Veränderung
eintritt, die eine Bewegungsschätzung
mit einer Zeitbereichsstörung
andeutet, kann bewegungskompensierte Interpolation ein Bild mit
geringer Qualität
ergeben.
-
Folglich
ist es notwendig, wenn eine Instabilität im Zeitbereich erkannt wird,
die andeutet, dass der Videoinhalt mit der Bewegungsschätzung inkompatibel
ist, sich für
einen Vollbildinterpolationsprozess zu entscheiden, anstatt von
dem Bewegungsvektorfeld Gebrauch zu machen.
-
Das
Ziel der vorgeschlagenen Erfindung ist es, solche Probleme zu lösen, indem
es ermöglicht
wird, die Zuverlässigkeit
des Bewegungsvektorfeldes zu berechnen.
-
Das
Ziel der Erfindung ist ein Verfahren zur Ermittlung der Zuverlässigkeit
eines Feldes von Bewegungsvektoren eines Bildes in einer Sequenz
von Videobildern, dadurch gekennzeichnet, dass es eine Stufe zur
Berechnung eines Stabilitätsparameters
(Det_Stab(t)) für
das Feld beinhaltet, auf der Grundlage eines Vergleichs, über zwei
aufeinander folgende Bilder hinweg, der Anzahl der Häufigkeit
der Mehrheitsvektoren der Bewegungsvektorfelder jedes einzelnen
Bildes, wobei das Bewegungsvektorfeld als stabil definiert wird,
wenn die Abweichung in der Anzahl der Häufigkeit innerhalb eines vorbestimmten
Bereichs liegt und einer Stufe zur Bestimmung der Zuverlässigkeit
auf der Grundlage des Stabilitätsparameter.
-
Gemäß einer
Verbesserung ist das Verfahren dadurch gekennzeichnet, dass es auch
eine Stufe zur Berechnung eines Störungsparameters Det_Dist(t)
für das
Feld beinhaltet, auf der Grundlage eines Vergleichs, über zwei
aufeinander folgende Bilder hinweg, der Anzahl der Häufigkeit
des Bewegungsvektors mit dem Mehrheitsvektor von einem der beiden
Bilder, wobei das Feld als nicht gestört gilt, wenn die Abweichung in
der Anzahl der Häufigkeit
innerhalb eines vorbestimmten Bereichs liegt und darin, dass die
Entscheidungsstufe auch auf diesem Störungsparameter beruht.
-
Gemäß einer
Abwandlung ist das Verfahren dadurch gekennzeichnet, dass es auch
ein Stufe zur Berechnung eines Störungsparameters Det_Dist(t)
für dieses
Feld beinhaltet, wobei ein Feld als nicht gestört gilt, wenn die Abweichung
in der Anzahl der Häufigkeit
des Nullvektors im Bewegungsvektorfeld, zwischen zwei aufeinander
folgenden Bildern, innerhalb eines vorbestimmten Bereichs liegt
und darin, dass die Entscheidungsstufe auch auf diesem Störungsparameter
basiert.
-
Gemäß einer
Verbesserung ist das Verfahren dadurch gekennzeichnet, dass es eine
Stufe zur Berechnung für
ein Bild (t), einen Zeitbereichstabilitätszustand Stabl_Stat(t) auf
der Grundlage der Stabilitätsparameter
Det_Stab(t) für
dieses Bild und von P – 1
vorausgehenden Bildern beinhaltet, wobei ein Zustand als stabil gilt,
wenn die Mindestanzahl Q stabiler Felder unter diesen P Bildern
erkannt wird und P und Q Ganzzahlen sind, so dass P < Q ist und darin,
dass die Entscheidungsstufe ebenfalls auf diesem Stabilitätszustand
beruht.
-
Gemäß einer
Verbesserung ist das Verfahren dadurch gekennzeichnet, dass es für ein Bild
(t) eine Stufe zur Berechnung eines Störungszustands Dist_Stat(t)
beinhaltet, auf der Grundlage der Störungsparameter Det_Dist(t)
für dieses
Bild und für
die M – 1
vorhergehenden Bilder, wobei ein Zustand als gestört gilt,
oder als nicht gestört
gilt, je nachdem, ob eine Mindestanzahl L von nicht gestörten Feldern
unter diesen M Bildern Häufigkeit
wurden, wobei M und L Ganzzahlen sind, so dass M > L ist und darin, dass
die Entscheidungsstufe ebenfalls auf diesem Störungszustand beruht.
-
Gemäß einer
Verbesserung ist das Verfahren dadurch gekennzeichnet, dass es ebenfalls
ein Stufe zur Berechnung eines Stabilitätsparameter Det_Stab(t) für das Feld
beinhaltet auf der Grundlage eines Vergleichs, über zwei aufeinander folgenden
Bildern hinweg, der Anzahl der Häufigkeit
der Mehrheitsvektoren der Bewegungsvektorenfelder von jedem dieser
Bilder, wobei ein Feld als stabil gilt, wenn die Abweichung in der
Anzahl der Häufigkeit
innerhalb eines vorbestimmten Bereichs liegt und wobei das Vektorfeld
als zuverlässig
gilt, wenn ein stabiles Feld und ein nicht gestörter Zustand Häufigkeit
wurden.
-
Gemäß einer
Verbesserung ist das Verfahren dadurch gekennzeichnet, dass es ebenfalls
für ein
Bild (t) eine Stufe zur Berechnung des Störungsparameters Det_Dist(t)
für das
Feld enthält
auf der Grundlage eines Vergleichs über zwei aufeinander folgende
Bilder hinweg, der Anzahl der Häufigkeit
der Bewegungsvektoren, die dem Mehrheitsvektor eines der beiden
Bilder entsprechen, wobei ein Feld als nicht gestört gilt,
wenn die Abweichung in der Anzahl der Häufigkeit innerhalb eines vorbestimmten
Bereichs liegt, so wie eine Stufe zur Berechnung eines Störungszustandes
Dist_Stat(t) auf der Grundlage eines Störungsparameters Det_Dist(t) für dieses
Bild und für
die M – 1
vorhergehenden Bilder (5), wobei ein Zustand als gestört oder
nicht gestört gilt,
was davon abhängt,
ob eine Mindestanzahl Q von nicht gestörten Feldern unter diesen M
Bildern Häufigkeit
wurde oder nicht Häufigkeit
wurde, wobei M und Q genau positive Ganzzahlen sind und dass ein
Vektorfeld als zuverlässig
gilt, wenn ein stabiles Feld, ein gestörter Zustand und stabiler Zustand
Häufigkeit
wurden.
-
Ein
Stabilitätsparameter,
der mit einem zuvor geschätzten
Bewegungsvektorenfeld verknüpft
ist, wobei dieser Parameter global für das Vollbild ist, ermöglicht es,
die Zuverlässigkeit
des Bewegungsvektorenfeldes auszuwerten. Ein Störungsparameter für die Bewegungsvektorenfelder
erlaubt ebenfalls eine Auswertung. Diese Parameter können dazu
benutzt werden, um jeweils einen Stabilitätszustand auf der Grundlage der
Zeitbereichsstabilität
des Feldes und eines Störungszustands
zu erkennen, die auf der Grundlage von Vergangenheitsdaten (historical
record) der vorhergehenden Parameter berechnet wurden. Diese Parameter
können
zusammen und/oder mit diesen Zuständen kombiniert werden, um
die Zuverlässigkeit
der Bewegungsvektorenfelder besser auszuwerten.
-
Diese
Zuverlässigkeitsberechnung
kann zu einem besonderen Verfahren unter Benutzung dieser Bewegungsvektorenfelder
führen.
Wenn die Zuverlässigkeit
als ungenügend
erklärt
wird, kann eine lineare Interpolation, die keine Bewegungsinformation
einsetzt, zum Beispiel eine Vollbildwiederholung, anstelle einer
bewegungskompensierten Interpolation angewendet werden. Bei einer
Bild-Frequenz Umwandlung, wenn Null Zuverlässigkeit das Bewegungsvektorenfeld
begleitet, wird bewegungskompensierte Interpolation vermieden. Die
Bildqualität
wird dadurch verbessert.
-
Andere
Eigenschaften und Vorteile der Erfindung werden klar in der folgenden
Beschreibung offenbar, die als nicht begrenzendes Beispiel gegeben
wird und mit Bezug auf die 1 gegeben
wird, die ein Blockdiagramm des Verfahrens der Berechnung des Zuverlässigkeitskriteriums
für das
Bewegungsvektorenfeld darstellt.
-
Die
Ermittlung eines Bruchs in der Gleichmässigkeit des Bewegungsvektorenfelds
wird über
den Weg einer Analyse des Histogramms der geschätzten Vektoren ausgeübt.
-
Das
verarbeitete Bewegungsvektorenfeld kann irgendeiner Definition entsprechen.
Die Analyse wird jedoch je effektiver desto umfangreicher die Definition
dieses Feldes ist. Idealerweise wird es eine Genauigkeit eines Vektors
nach Pixeln erreichen. Es wird zum Beispiel aus einer Bewegungsschätzfunktion
des rekursiven PEL Typs stammen. Bei diesem Vektorfeld kann man
davon ausgehen, dass es zu den geschätzten Bewegungen zwischen zwei
aufeinander folgenden Teilbildern oder Vollbildern in Beziehung
steht, die den Momenten t und t – 1 entsprechen und zur Interpolation
eines Zwischenhalbildes oder Vollbildes dienen, die zwischen diesen
Momenten t und t – 1
liegen.
-
Im
Text ist beabsichtigt das Wort "Bilder" für jegliche
Art der Darstellung zu bezeichnen. Diese können gerade oder ungerade Vollbilder
oder Bilder sein, die aus den geraden und ungeraden Vollbildern
im Falle einer Zwischenzeilenabtastung, Bilder aus der progressiven
Abtastung usw., wieder hergestellt wurden. Gleichermassen werden
aufeinander folgende oder fortlaufende Bilder, fortlaufende Vollbilder
derselben Gleichwertigkeit, oder jeder beliebigen Gleichwertigkeit
kennzeichnen, oder andere fortlaufende Bilder aus einer progressiven
Abtastung oder wieder hergestellter Bilder. In der Tat ist es die
Berechnung der Bewegungsvektorenfelder, die auf verschieden Art
und Weise durchgeführt
werden kann, zum Beispiel durch Berechnung der Bewegung zwischen
aufeinander folgenden Vollbildern mit der selben Gleichwertigkeit,
sonst zwischen zwei wieder hergestellten Bildern, was die benutzten
Bezeichnungen abgrenzt.
-
Die
Analyse wird auf der Grundlage der horizontalen Komponente des Vektors
durchgeführt,
wobei diese Komponente Informationen enthält, die für die Bewegungen ergiebiger
und charakteristischer sind, durch Vergleich mit der vertikalen
Komponente. Es werden nur Werte berücksichtigt, die zwischen –32 und
+31 liegen, obwohl die Schätzfunktion
Vektorwerte liefern kann, die ausserhalb dieser Grenzen liegen.
-
Ein
Histogramm des resultierenden Vektorfelds wird abgeleitet, indem
die Genauigkeit dieser Vektoren auf gleich Eins gehalten werden,
das heisst: eine Auflösung
von W/720 für
eine Bildschirmbreite W und a, horizontale Auflösung des Bildes von 720 Pixeln.
Die Werte auf der x-Achse dieses Histogramms sind deshalb von –32 bis
+32 nach Schritten pro Einheit auseinander gezogen. Diese Schritte
könnten
gröber
sein, sind aber mit dem Risiko verbunden, die Leistung des Algorithmus
herabzusetzen. Die y-Achse zeigt die Anzahl der Häufigkeit.
-
Das
Histogramm ist durch die Funktion definiert:
Histo_Vect(n,
t)
welche die Anzahl an Vektorwerten n in dem Vektorfeld, das
zum Vollbild gehört
zum Zeitpunkt t darstellt, wobei n variieren kann von –N bis +(N – 1), N
hat in der Erprobung den Wert 32.
-
Der
Wert Histo_Vect(0, t), der ganz allgemein die Anzahl der Häufigkeit
des Null Vektors für
das Vollbild zum Zeitpunkt t darstellt, entspricht dem höchsten Punkt
des Histogramms im Falle stehender oder leicht bewegter Bilder.
Die Ermittlung der Unregelmässigkeit
im Zeitbereich des Bewegungsvektorenfelds wird daher in diesem ersten
Ausführungsbeispiel
auf der Grundlage der Analyse des Histogrammwertes für den Null
Vektor ausgeführt.
-
Die
Ermittlung der Zuverlässigkeit
wird in mehreren Schritten durchgeführt:
- – Berechnung
eines Parameters für
die Ermittlung von Störungen
Det_Dist(t)
- – Berechnung
eines Parameters für
die Ermittlung der Stabilität
Det_Stab(t)
- – Berechnung
eines Parameters für
den Störungszustand
Dist_Stat(t) auf der Grundlage des Parameters zur Ermittlung von
Störungen.
- – Berechnung
eines Parameters für
einen Stabilitätszustand
Stabl_Stat(t) auf der Grundlage des Parameters zur Ermittlung der
Stabilität.
- – Ableitung
einer Variablen Reliable_Field, die die Zuverlässigkeit des Vektorfeldes definiert
auf der Basis der vorhergehenden Parameter.
-
Ein
Parameter Det_Dist(t) zur Ermittlung einer Störung im Zeitbereich im Bewegungsvektorenfeld
wird zu aller erst für
jedes Vollbild errechnet.
-
Es
wird durch Vergleich aus dem Histogramm der Vektoren des momentanen
Vollbildes (t) mit dem des vorhergegangenen Vollbildes (t – 1) abgeleitet.
Wie oben angegeben, wird nur der Wert des Histogramms für den Null
Vektorwert benutzt. Der Test ist dann folgendermassen:
Wenn:
K1 × Histo_Vect(0,
t – 1) > Histo_Vect(0, t) > 1/K1 × Histo_Vect(0,
t – 1)
dann
ist Det_Dist(t) = 0
sonst Det_Dist(t) = 1
mit der Konstanten
K1, die eine positive rationale Zahl grösser als Eins ist.
-
Ein
Wert, der durch Versuche gewählt
wurde ist K1 = 13/10.
-
Wenn
die Zahl von Vektoren bei dem Wert Null von einem Vollbild (t – 1) zum
Nächsten
t auf die Weise wechselt, dass sie einen Bereich verlässt, der
mit K1 um dies Anzahl herum für
das Vollbild (t – 1)
definiert wurde, dann wurde eine Störung ermittelt und der Parameter
Det_Dist(t) nimmt den Wert 1 an.
-
Dieser
Parameter zur Störungsermittlung,
der für
jedes Vollbild errechnet wird, wird im Speicher abgelegt. Ein weiterer
Parameter für
den Störungszustand,
Dist_Stat(t), wird auf der Grundlage von Vergangenheitsdaten aus
der Ermittlung abgeleitet, präziser
gesagt: auf der Grundlage des Parameters zur Ermittlung von Störungen des
laufenden Vollbildes und für
die M – 1
vorhergehenden Vollbilder:
wenn
dann Dist_Stat(t) = 1
sonst
Dist_Stat(t) = 0
-
M
und L sind positive Ganzzahlen sodass M > L ist.
-
In
unserem Versuch wurden die Werte L und M jeweils auf 4 und 16 gesetzt.
-
Somit
wird, wenn es zumindest L Vollbilder aus den letzten M Vollbildern
gibt, die einen Parameter von 1 für die Störungsermittlung haben, ein
gestörter
Zustand für
das letzte Vollbild festgestellt.
-
Ein
Parameter für
die Stabilitätsermittlung
Det_Stab wird auch für
das Vektorfeld errechnet, nach wie vor durch Vergleich der Histogramme
der Vektoren des aktuellen Vollbildes und für das vorhergehende Vollbild. Der
Häufigkeitswert
jedoch, der hier eingesetzt wird, ist nicht der, welcher in der
unmittelbaren Nähe
von Null liegt; diese Nähe
ist vielmehr vollständig
ausgeschlossen. Es ist der Wert der am Häufigsten auftritt, der in Betracht
gezogen wird. Bevor mit dem Test fortgefahren wird, wird deshalb
eine Suche nach dem momentanen Spitzenwert des Histogramms, dem
Mehrheitswert des Vektorfelds, durchgeführt.
-
-
Max_Histo_Vect(t)
bezeichnet den Höchstwert
des Histogramms, das bedeutet die vorherrschende Häufigkeit
im Histogramm in Bezug auf das Vollbild zum Zeitpunkt t, die Häufigkeitswerte
in Bezug auf die Vektoren –1,
0 und 1 ausgeschlossen sind.
-
Der
Parameter Det_Stab wird sodann berechnet:
wenn
Max_Histo_Vect(t – 1) × 1/k2 < Max_Histo_Vect(t) < Mac_Histo_Vect(t – 1) × K2
dann
Det_Stab = 1
sonst Det_Stab = 0
-
K2
ist eine positive rationale Zahl grösser als 1. Sie wird auf 13/10
in unserem Experiment gesetzt.
-
Der
Test wird hier mit der Anzahl der Häufigkeit, die dem Maximum der
Häufigkeiten
entspricht, durchgeführt,
wobei die Häufigkeiten
in Bezug auf die Werte des Vektors, die sich nahe Null befinden,
nicht in Betracht gezogen werden. Wenn diese Anzahl von Häufigkeiten,
die dem Maximum an Häufigkeiten
in Bezug auf das Bild t entspricht, was auch immer der Wert, dem
dieses Maximum entspricht, sein mag, nahe an der Anzahl des Maximums
der Häufigkeiten
in Bezug auf das Bild t – 1
ist, das heisst in einem Bereich liegt, der durch K2 und diesem
Maximum definiert ist, dann kann man davon ausgehen, dass das Vektorfeld
stabil ist und der Parameter Det_Stab auf 1 gesetzt wird. Es ist
deshalb notwendig, dass es wenig Veränderungen in der Anzahl der
Häufigkeiten
gibt. Was hier betrachtet wird ist nicht der Wert des Bewegungsvektors,
sondern die Anzahl Vektoren, sozusagen der Pixel, die dem gleichen
Wert entsprechen, was es ermöglicht
zu langsamen Veränderungen
in auftretenden Vektorwerten zu kommen, zum Beispiel während einer
Beschleunigung, Kameranachführung,
usw.
-
Dieser
Parameter zur Stabilitätsermittlung,
der für
jedes Vollbild errechnet wird, wird im Speicher abgelegt. Ein anderer
Parameter für
den stabilen Zustand, Stabl_Stat(t) wird, wie zuvor, auf der Grundlage
der historischen Aufzeichnung der Stabilitätsermittlung, genauer gesagt:
auf dem momentanen Vollbild und den vorhergehenden Vollbildern p – 1, abgeleitet:
wenn
dann Stabl_Stat(t) = 1
sonst
Stabl_Stat(t) = 0;
-
P
und Q sind positive Ganzzahlen, so dass P > Q ist, die in unserem Experiment jeweils
auf 16 und 4 gesetzt wurden.
-
Damit
wird ein stabiler Zustand festgestellt, nur wenn zumindest Q Vollbilder
unter der letzten P Vollbildern einen Parameter zur Stabilitätsermittlung
von gleich 1 haben.
-
Zusammengefasst:
wenn der Wert des Höchstwerts
des Histogramms leichten Veränderungen
während
einer gewissen Anzahl von Vollbildern unterliegt, wobei einige Vollbilder
möglicherweise
unberücksichtigt bleiben,
dann wird das Feld als stabil erklärt.
-
Die
folgende Stufe führt
die Berechnung der Variablen Reliable_Field durch.
-
Diese
Berechnung berücksichtigt
die Vergangenheitsdaten (historical record) in Bezug auf die Stabilität und die
Störungen
des Vektorfeldes und die Ermittlungsmessungen des aktuellen Vollbilds
zum Zeitpunkt t.
-
Wenn
ein Bewegungsvektorenfeld als stabil zum Zeitpunkt des Vollbilds – t erkannt
wird und wenn die Anzahl vorhergehender Felder, die als gestört ermittelt
wurden, gering ist, dann wird das Feld als Reliable_Field erklärt.
-
Wenn
die Vergangenheitsdaten (historical record) sowohl eine hohe Anzahl
an Störungen
als auch an Stabilitäten
ergibt, während
ein stabiles Feld für
das Vollbild zum Zeitpunkt t ermittelt wurde, dann wird das Feld
für das
Vollbild zum Zeitpunkt t als Reliable_Field erklärt. Es wird in Wirklichkeit
in diesem Falle unterstellt, dass die Vergangenheitsdaten (historical
record) unzuverlässig
sind, da sie widersprüchlich
sind.
-
Wenn
zum Zeitpunkt t eine Störung
mit stark gestörten
Vergangenheitsdaten (historical record) ermittelt wird und wenn
die Stabilitätsbedingung
zu diesem gleichen Zeitpunkt nicht erfüllt ist, dann wird das Feld als
unzuverlässig
erklärt
und die Variable Reliable_Field wird auf fehlerhaft gesetzt.
-
Dies
ergibt auf der Grundlage der errechneten Parameter:
wenn Det_Stab(t)
= 1 und Dist_Stat(t) = 0
dann Reliable_Field(t) = 1
wenn
Det_Stab(t) = 1 und Dist_Stat(t) = 1 und Stabl_Stat(t) = 1
dann
Reliable_Field(t) = 1
wenn Det_Stab(t) = 0 und Dist_Stat(t)
= 1 und Det_Dist(t) = 1
dann Reliable_Field = 0
wenn keine
der drei vorangegangenen Bedingungen befriedigt wird, dann wird
der Zuverlässigkeitszustand des
vorhergehenden Vollbilds beibehalten:
Reliable_Field(t) = Reliable_Field(t – 1).
-
Tatsächlich werden
alle anderen Ermittlungssituationen als zweideutig und unzuverlässig betrachtet und
geben deshalb keinen Anlass zu irgendeinem Wechsel des Zustands
der Variablen Reliable_Field. Der ursprüngliche Wert dieser Variablen
kann bei Inbetriebnahme des Systems willkürlich 0 oder 1 sein.
-
Demzufolge
ist der Zweck der Ermittlung, den Parameter "Reliable_Field" zu veranlassen, sich auf der Basis
der angetroffenen Störungen
zu verändern.
Es ist eine Frage, die erkannten Störungen über eine Zeiteinheitveränderung
in der Häufigkeit
in Bezug auf den Null Vektor zu analysieren. Eine substantielle
Veränderung
der Zeiteinheit trägt
zum Wechsel der Variablen Reliable_Field auf 0 bei. Es ist auch
eine Frage der Analyse der durch eine leichte oder Null Zeitbereichsveränderung
in der Häufigkeit
ermittelten Stabilität
in Bezug auf den Mehrheitsvektor von einem der Histogramms. Wenn
es dort Stabilität
gibt, dann geht die Variable Reliable_Field auf 0 zurück, welches
der häufigste
Zustand bleibt.
-
Bewegungsschätzfunktionen
liefern bessere Leistungen bei der Schätzung der Bewegungsvektoren in
der Nähe
von 0. Es ist daher möglich,
mehr Vertrauen in die Vektoren in der Nähe von Null zu setzen und das
ist der Grund, weshalb der Null Wert im Histogramm zur Erklärung der
Instabilität
gewählt
wurde. Wenn dieser Vektor der gleich Null ist, in diesem Zeitbereich
unstabil ist, ist die Wahrscheinlichkeit sehr hoch, dass eine Instabilität beteiligt
ist, und sowieso höher
als die, die auf der Grundlage des am häufigsten auftretenden Wertes
festgestellt werden könnte,
falls er von Null abweicht.
-
Natürlich ist
es durchaus möglich
den wirklich höchsten
Wert im Histogramm für
die Berechnung des Störungsparameters
Det_Dist(t) heranzuziehen und dies ist Gegenstand der unten beschriebenen
Variante in Verbindung mit der 1.
-
Die 1 zeigt
ein Fliessdiagramm, das ein Verfahren zur Einschätzung der Zuverlässigkeit
eines Bewegungsvektorenfelds. Bei dieser Variante wird die Berechnung
des Parameters Det_Dist(t) für
das Vollbild t nicht auf der Grundlage der Häufigkeit in Bezug auf den Nullwert
des Bewegungsvektors berechnet, sondern auf der Grundlage der Häufigkeiten
in Bezug auf den Wert V(t – 1),
der dem Höchstwert
der Häufigkeit
für das Vollbild
t – 1
entspricht.
-
Auf
der mit 1 bezeichneten Stufe in der Figur, wird ein Histogramm Histo_Vect(t)
berechnet, das auf der x-Achse die Werte der horizontalen Komponente
der Bewegungsvektoren in Bezug auf das aktuelle Vollbild t darstellt
und auf der y-Achse die Anzahl der Häufigkeit für jeden dieser Werte.
-
Die
Stufe 2 berücksichtigt
die grösste
Häufigkeit
Max_Histo_Vect(t), die einem Wert auf der x-Achse, der V(t) genannt
wird, entspricht.
-
Die
Stufe 2 empfängt
aus einer Speicherstufe 3 den Wert des Vektors, vielmehr
seine horizontale Komponente V(t – 1) für den das Histogramm des Vollbildes
t – 1
ein Maximum darstellte. Es berechnet die Häufigkeit in Bezug auf diesen
Wert V(t – 1),
Histo_Vect(V(t – 1),
t) für
das Histogramm, das dem Vollbild t entspricht.
-
Diese
Werte von V(t), Max_Histo_Vect(t) und Hist_Vect(V(t–1), t)
werden an die Stufe 3 weiter gegeben, die sie in dem Speicher
für jedes
Vollbild ablegt.
-
Die
Max_Histo_Vect(t) Werte, der aus der Stufe 2 herrührt und
Max_Histo_Vect(t – 1),
der aus der Stufe 3 herrührt, werden zur Stufe 4 weiter
geleitet. Diese Stufe führt
einen Vergleich zwischen diesen beiden Werten durch, um den Parameter
Det_Stab(t) zu berechnen.
wenn
Max_Histo_Vect(t – 1) × 1/K2 < Max_Histo_Vect(t) < Max_Histo_Vect(t – 1) × K2
dann
Det_Stab = 1
sonst Det_Stab = 0
-
Wobei
K2 eine Konstante ist, die eine positive rationale Zahl, grösser als
Eins, ist.
-
Die
Werte Histo_Vect(V(t – 1),t),
die aus der Stufe 2 herrühren und der Wert_Histo_Vect(V(t – 1),t),
der aus der Stufe 3 herrührt, werden an die Stufe 5 weiter
geleitet. Diese Stufe führt
einen Vergleich zwischen diesen beiden Werten durch, um den Parameter
Det_Dist(t) zu berechnen.
wenn
K1 × Histo_Vect(V(t – 1), t – 1) > Histo_Vect(V(t – 1), t) > 1/k1 × Histo_Vect(V(t – 1), t – 1)
dann
Det_Dist(t) = 0
sonst Det_Dist(t) = 1
-
Wobei
K1 eine Konstante ist, die eine positive rationale Zahl, grösser als
Eins, ist.
-
Die
Informationen Det_Dist(t) und Det_Stabt(t), die jeweils aus den
Stufen
5 und
4 stammen, werden an die Stufe
6 weiter
geleitet, die die letzten M und P Werte speichert, welche sie jeweils
in Bezug auf die letzten M und P Vollbilder empfangen hat, um die
Variablen Dist_Stat(t) und Stabl_Stat(t) zu berechnen, so dass:
wenn
dann Dist_Stat(t) = 1
sonst
Dist_Stat(t) = 0
wenn
dann Stabl_Stat(t) = 1
sonst
Stabl_Stat(t) = 0
-
Wobei
M, P, L und Q Ganzzahlwerte sind, so dass M > L und P > Q ist.
-
Die
Werte Det_Stabt(t) und Det_Dist(t) stammen schliesslich aus den
Stufen 4 und 5, die Werte Stabl_Stat(t) und Dist_Stat(t),
die aus der Stufe 6 stammen, werden an die Stufe 7 weiter
gegeben, die als Ausgang ein Informationsdatenwort Reliable_Field(t),
wie oben angezeigt, liefert.
wenn Det_Stab(t) = 1 und Dist_Stat(t)
= 0
dann Reliable_Field(t) = 1
wenn Det_Stab(t) = 1 und
Dist_Stat(t) = 1 und Stabl_Stat(t) = 1
dann Reliable_Field(t)
= 1
wenn Det_Stab(t) = 0 und Dist_Stat(t) = 1 und Det_Dist(t)
= 1
dann Reliable_Field(t) = 0
-
Wenn
keine der drei obigen Bedingungen erfüllt ist, dann wird der Zuverlässigkeitszustand
des vorherigen Vollbildes festgehalten.
Reliable_Field(t) =
Reliable_Field(t – 1)
-
Das
zunächst
beschriebene Verfahren machte von der Anzahl der Häufigkeit
der Null Vektoren Gebrauch. Eine Verbesserung dieses Verfahrens
besteht im Hinzufügen
von zwei optionalen Bedingungen, um von den Null Vektoren Gebrauch
zu machen.
-
Die
beiden Bedingungen sind:
- – dass die Anzahl der Häufigkeiten
in Bezug auf die Null Vektoren ein momentaner örtlicher Spitzenwert ist, das
bedeutet:
Histo_Vect(0, t) > Histo_Vect(+1,
t)
und
Histo_Vect(0, t) > Histo_Vect(–1, t)
- – dass
diese Anzahl der Häufigkeiten
grösser
als ein Schwellenwert ist, das bedeutet:
Histo_Vect(0,t) > S1
-
Wobei
S1 auf einen vorbestimmten Wert gesetzt wird.
-
Dieser
Schwellenwert wurde versuchsweise bei 1/8 der Anzahl Pixel des Vektorfeldes
gewählt.
-
Die
Verbesserung besteht, im Falle in dem diese Bedingungen nicht erfüllt werden,
in Vergleichen nicht auf der Grundlage des Null Vektors, sondern
auf der Grundlage des Vektors, der der Höchstanzahl von Häufigkeiten
entspricht, wie in der Variante, die eben beschrieben wurde, in
Verbindung mit der 1 aufgezeigt wurde.
-
Die
Erfindung kann bei der Umwandlung von Standards eingesetzt werden,
zum Beispiel zwischen 50 und 60 Hz. Sie ermöglicht insbesondere Defekte,
die mit der Bewegungsschätzung
einhergehen, zu vermeiden, wenn es sich als risikoreich herausstellt
oder sogar unmöglich
ist: Photoblitze, Stroboskopeffekte, komplexe Spezialeffekte, Bildmischungen
von Video- oder Filminhalten, usw.
-
Andere
Anwendungen, die Bildfrequenzumwandlung einsetzen, können von
diesem Verfahren Gebrauch machen, zum Beispiel die Hochfrequenzumwandlung
bei einem Fernsehgerät
zwischen TV und PC-Systemen.
-
Dieses
Zuverlässigkeitskriterium
in Verbindung mit Vektorfeldern kann auch in Verarbeitungsprozessen,
wie Kodierung, eingesetzt werden, zum Beispiel dass es möglich wird
die Entscheidung in Bezug auf die Wahl der Kodiermodi zu beeinflussen.
-
Der
Algorithmus ist je effektiver desto dichter und desto physikalischer
das ursprüngliche
Bewegungsvektorenfeld ist, das heisst je charakteristischer es sich
zu den wirklichen Bewegungen verhält. Er kann jedoch auch bei
Vektorenfeldern in Blöcken,
die aus einer Bewegungsschätzfunktion
stammen, eingesetzt werden, die als block-matching Typ bekannt sind.
-
Die
Erfindung betrifft daher Bewegungsschätzvorrichtungn, Frequenzumsetzer,
Standardumsetzer, Videokoder, die Algorithmen, wie oben beschrieben,
benutzen.
-
Eine
erfindungsgemässe
Vorrichtung schliesst Mittel zum Vergleich über zwei aufeinander folgende Bilder
hinweg ein, die Anzahl der Häufigkeit
der Mehrheitsvektoren der Bewegungsvektorenfelder für jedes einzelne
dieser Bilder, Mittel zur Berechnung eines Stabilitätsparameters
Det_stab(t) für
das Feld auf der Grundlage des Vergleichsergebnisses, wobei ein
Feld as stabil definiert wird, wenn die Veränderung in der Anzahl der Häufigkeit
innerhalb eines vorbestimmten Rahmens liegt und Mittel für die Bestimmung
der Zuverlässigkeit
auf der Grundlage dieses Stabilitätsparameters.
-
Gemäß einer
Verbesserung beinhaltet eine solche Vorrichtung auch Mittel zum
Vergleich über
zwei aufeinander folgende Bilder, wobei die Anzahl der Häufigkeiten
des Bewegungsvektors dem Mehrheitsvektor von einem der beiden Bilder
entspricht, Mittel zur Berechnung eines Störungsparameters Det_Dist(t)
für das Feld
auf der Grundlage der Vergleichsergebnisse, wobei ein Feld als nicht
gestört
gilt, wenn die Veränderung in
der Anzahl der Häufigkeiten
innerhalb eines vorbestimmten Rahmens liegt und die Entscheidungsmittel
den Stabilitätsparameter
und den Störungsparameter
erfassen.
-
Gemäß einer
anderen Verbesserung schliesst die Vorrichtung Mittel zur Berechnung
der Stabilitätszustände und
Störungszustände ein,
auf der Grundlage von Mitteln zur Speicherung der Stabilitäts- und
Störungsparameter
für die
vorhergehenden Bilder, wobei die Entscheidungsmittel diese Information
erfassen, um ein Feld als zuverlässig
oder unzuverlässig
zu erklären.
-
Gemäß einer
anderen Verbesserung dieser Erfindung werden die Vergleiche nicht
auf den Maximalwerten des Histogramms, oder auf Werten des Histogramms,
das einem Null Vektor entspricht, vollzogen, sondern auf der Summe
von Histogrammwerten um den Maximumwert oder um den Nullwert herum.
Der Vergleich, der beispielsweise Gegenstand der Stufe 4 ist,
wird nicht auf dem Wert Max_Histo_Vect(t – 1) vollzogen, sondern auf
der Summe, die diesem Wert entspricht und den beiden Histogrammwerten,
die ihn eingrenzen. Im Fall des Tests von Det_Dist(t) wird die Summe
zum Beispiel aus dem Wert des Histogramms gebildet, das dem Null
Vektor und den beiden benachbarten Vektoren entspricht. Natürlich können mehr
als zwei Vektoren für
diese Additionen ausgewählt
werden. Diese Lösung
erlaubt es, Streuungen von Histogrammwerten rund um die Höchstwerte
herum, zu vermeiden, die leicht von einem Vollbild zum anderen,
wegen der Ungenauigkeit in der Bewegungsschätzung, variieren können.
-
Bei
den beschriebenen Beispielen wird nur die horizontale Komponente
des Bewegungsvektors für
die Analyse der Vektorfelder benutzt; das ist deshalb so, weil es
diese Komponente ist, die hauptsächlich
der grössten
Veränderungen
ausgesetzt ist und sie ist ausreichend charakteristisch für die momentane
Bewegung. Dies ist um der Einfachheit willen und man kann daher
bestimmt in Betracht ziehen, ohne vom Geltungsbereich der Erfindung
abzuweichen, dass die beiden Komponenten, oder sonst die vertikale
Komponente alleine, in einem gegebenen Zusammenhang benutzt werden.
Dasselbe gilt für
die Maximalamplituden des verarbeiteten Vektors, die erweitert werden
können.
-
Das
so errechnete Zuverlässigkeitskriterium
kann mit anderen bekannten Kriterien kombiniert werden, zum Beispiel
einem Kriterium der Sättigung
der Bewegungsvektorenfelder oder einem Kriterium zur Ermittlung von
Szenenwechseln. Die Kombination dieser Kriterien ermöglicht es,
eine noch wirksamere Ermittlung der Zuverlässigkeit der Bewegungsvektorenfelder
zu erreichen.