Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR THE TEMPORAL SEGMENTATION OF A VIDEO INTO VIDEO IMAGE SEQUENCES AND FOR THE SELECTION OF KEY FRAMES TO LOCATE IMAGE CONTENT, TAKING INTO CONSIDERATION SUB-SHOT DETECTION
Document Type and Number:
WIPO Patent Application WO/2008/113596
Kind Code:
A2
Abstract:
Known methods carry out shot detection (uninterrupted recording by a camera) and assign several key frames to the shots. A subsequent identification of scenes is then based on the grouping of shots to form scenes. One scene contains only one event in an environment. As both these things can change within a shot, not every scene limit is simultaneously a shot limit. In addition, not every shot is short enough to guarantee a reliable location of different image content. In the method according to the invention, sub-shots are therefore introduced and defined in such a way that scene limits and shot limits are simultaneously also sub-shot limits. In addition, sub-shots only comprise video images with a small change to the image content. This reliably ensures that only one single key frame must be assigned to each sub-shot for the reliable location of image content. Scenes can then be accurately described by the grouping of sequential sub-shots. The sub-shot detection process can be carried out with the aid of different algorithms, for example threshold value, cluster and/or movement algorithms.

Inventors:
PETERSOHN CHRISTIAN (DE)
Application Number:
PCT/EP2008/002268
Publication Date:
September 25, 2008
Filing Date:
March 20, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRAUNHOFER GES FORSCHUNG (DE)
PETERSOHN CHRISTIAN (DE)
International Classes:
G11B27/031; G06F17/30
Foreign References:
EP1377047A22004-01-02
US20040090453A12004-05-13
US5732146A1998-03-24
Other References:
HONG LU ET AL: "Shot boundary detection using unsupervised clustering and hypothesis testing" COMMUNICATIONS, CIRCUITS AND SYSTEMS, 2004. ICCCAS 2004. 2004 INTERNAT IONAL CONFERENCE ON CHENGDU, CHINA 27-29 JUNE 2004, PISCATAWAY, NJ, USA,IEEE, US, 27. Juni 2004 (2004-06-27), Seiten 932-936Vol.2, XP010732058 ISBN: 978-0-7803-8647-1
TE-WON LEE ET AL: "Unsupervised Image Classification, Segmentation, and Enhancement Using ICA Mixture Models" IEEE TRANSACTIONS ON IMAGE PROCESSING, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, Bd. 11, Nr. 3, 1. März 2002 (2002-03-01), XP011025906 ISSN: 1057-7149
KOBLA V ET AL: "COMPRESSED DOMAIN VIDEO INDEXING TECHNIQUES USING DCT AND MOTION VECTOR IN MPEG VIDEO" STORAGE AND RETRIEVAL FOR IMAGE AND VIDEO DATABASES 5. SAN JOSE, FEB. 13 - 14, 1997; [PROCEEDINGS OF SPIE], BELLINGHAM, SPIE, US, Bd. VOL. 3022, 13. Februar 1997 (1997-02-13), Seiten 200-211, XP000742383 ISBN: 978-0-8194-2433-4
SHAHRARAY B: "SCENE CHANGE DETECTION AND CONTENT-BASED SAMPLING OF VIDEO SEQUENCES" 7. Februar 1995 (1995-02-07), PROCEEDINGS OF THE SPIE, SPIE, BELLINGHAM, VA, PAGE(S) 2 - 13 , XP000672065 ISSN: 0277-786X Paragraph 3. "Camera induced scene change detection"
Attorney, Agent or Firm:
ZINKLER, Franz (Zimmermann Stöckeler & Zinkle, Postfach 246 Pullach München, DE)
Download PDF:
Claims:

PATENTANSPRüCHE

1. Verfahren zur Auswahl von Keyframes für das Auffinden von Bildinhalten eines Videos, mit folgenden Schritten:

a) zeitliches Segmentieren des Videos in einzelne Shots, wobei jeder Shot jeweils eine Sequenz aufeinander folgender Videobilder umfasst, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden,

b) zeitliches Segmentieren jedes Shots in einzelne Subshots, so dassjeder Subshot jeweils eine Sequenz aufeinander folgender Videobilder des Shots umfasst, die nur eine geringe Veränderung im Bildinhalt zeigt, durch Durchführen eines von folgenden Algorithmen:

einem Schwellwert-Algorithmus mit den Schritten

• Approximierung des Bildinhalts eines Videobilds durch eine messbare Bildeigenschaft, • Berechnung der Veränderung des Bildinhalts mittels einer

Distanzfunktion für die messbare Bildeigenschaft zweier Videobilder F und F', wobei F das erste Videobild eines Subshots ist und F' ein schrittweise von F immer um ein Bild weiter entferntes Videobild bezeichnet und • Setzen einer Subshot-Grenze bei Erreichen eines vorgegebenen

Schwellwertes für die Distanz bei mehreren aufeinander folgenden Videobildern F', wobei die Grenze vor dem ersten dieser Videobilder gesetzt wird,

einem Cluster-Algorithmus mit den Schritten

• Anwenden einer Clusterbildung auf die Videobilder eines Shots ohne Berücksichtigung der zeitlichen Ordnung der Videobilder und unter Verwendung einer messbaren Bildeigenschaft der Videobilder, um die Videobilder des Shots gemäß Ihrer messbaren Bildeigenschaft unterschiedlichen Clusterkennzeichnungen zuzuordnen;

• Durchführung einer Mehrheitsfilterung, wonach eine minderheitliche Clusterkennzeichnung für ein Videobild i in eine mehrheitliche Clusterkennzeichnung derjenigen Videobilder überführt wird, die um x Videobilder gemäß der zeitlichen Ordnung der Videobilder vor und hinter dem Videobild i liegen,

• Durchführung einer Zeitfilterung in Abhängigkeit einer vorgegeben Anzahl k, so dass für weniger als k gemäß der zeitlichen Ordnung hintereinanderliegende Videobilder mit derselben Cluster- Kennzeichnung die Clusterkennzeichnung in die Clusterkennzeichnung der davor oder dahinter liegenden Videobilder mit der größeren mittleren ähnlichkeit überführt wird, wobei die ähnlichkeit mit Hilfe einer Distanzfunktion für die messbaren Bildeigenschaften der Videobilder ermittelt wird, und

• nach Mehrheits- und Zeitfilterung, Setzen von Subshot-Grenzen an Stellen einer änderung der Clusterkennzeichung in der zeitlichen Ordnung der Videobilder, oder

einem Bewegungs-Algorithmus mit den Schritten

• Bestimmen, für fortlaufende Videobildpaare eines Shots, einer mittleren Verlagerung, um die sich die Pixel eines Videobildes in

Bezug auf das jeweilige nachfolgende Videobild des

Videobildpaares verlagern, unter Verwendung eines Bewegungsvektorfeldes zwischen Videobildern des jeweiligen fortlaufenden Videobildpaares, und zwar getrennt für drei Bewegungsrichtungen, nämlich horizontal, vertikal und Zoomrichtung, um pro Bewegungsrichtung eine zeitliche Serie von

Verlagerungswerten zu erhalten,

• Filtern der zeitlichen Serie von Verlagerungswerten der drei Bewegungsrichtungen mittels eines Mittelwertfilters, um gefilterte Verlagerungswerte pro Bewegungsrichtung zu erhalten,

• Bilden, für alle Videobilder des Shots, einer Gesamtverlagerung D als eine Summe der Beträge der Verlagerungswerte aller Bewegungsrichtungen,

• Bilden einer Summe σ D über die Gesamtveriagerungen aller Videobilder des Shots, und

• Aufteilen des Shots in (σ D)/th d Subshots, mit th d einem vorbestimmten Grenzwert, so dass in jedem Subshot die Summe der Gesamtveriagerungen möglichst gleich groß ist, und

c) Durchführen einer Keyframe-Selektion durch, für jeden Subshot, Zuordnung von genau einem den Bildinhalt des jeweiligen Subshots repräsentierenden Keyframe aus den Videobildem des jeweiligen Subshots zu dem jeweiligen Subshot.

2. Verfahren nach Anspruch 1 , wobei die Schritte a und b zeitgleich durchgeführt werden.

3. Verfahren nach Anspruch 1 oder 2, wobei bei Auftreten von graduellen übergängen am Anfang oder am Ende eines Shots in diesen Bereichen kein Schritt b durchgeführt wird.

4. Verfahren nach einem der Ansprüche 1 bis 3, wobei die messbaren Bildeigenschaften eine Färb- oder Kantenverteilung eines Videobildes umfassen.

5. Verfahren nach Anspruch 4, wobei die messbare Bildeigenschaft ein Histogramm mit k Balken ist und die Distanzfunktion für die Histogramme der Videobilder F und F' definiert ist als

d = 1 -— ∑min(H(F,i),H(F\i))

PC ,=i

mit pc = Anzahl der für die Histogramm-Erstellung genutzten Pixel, i = Laufindex, k = Anzahl der Balken,

H(FJ) = iter Balken des Histogramms von Videobild F (Anzahl der

Pixel mit Farbwert im iten Bereich) und min = Minimum

6. Verfahren nach einem der Ansprüche 1 bis 5, wobei der Schwellwert mit 0,3 vorgegeben ist.

7. Verfahren nach einem der Ansprüche 1 bis 6, wobei bei der Keyframe- Selektion immer das erste, das mittlere oder das letzte Videobild aus jedem ermittelten Subshot als das den Bildinhalt des Subshots repräsentierendes Keyframe ausgewählt wird.

8. Verfahren nach einem der Ansprüche 1 bis 7, wobei das zeitliche Segmentieren jedes Shots in einzelne Subshots so durchgeführt wird, dass jeder Subshot nur maximal ein Ereignis in maximal einer Umgebung enthält und innerhalb von Shots auftretende Grenzen einer Szene, die ein Ereignis in einer kontinuierlichen Zeitperiode und einer kontinuierlichen Umgebung zeigt, gleichzeitig Subshot-Grenzen sind.

9. Verfahren zum zeitlichen Segmentieren einer Sequenz von aufeinander folgenden Videobildern in kürzere Videoabschnitte mit geringer visueller Variation, mit folgenden Schritten:

• Anwenden einer Clusterbildung auf die Videobilder ohne Berücksichtigung der zeitlichen Ordnung der Videobilder und unter Verwendung einer messbaren Bildeigenschaft der Videobilder, um die Videobilder gemäß ihrer messbaren Bildeigenschaft unterschiedlichen Clusterkennzeichnungen zuzuordnen;

• Durchführung einer Mehrheitsfilterung, wonach eine minderheitliche Clusterkennzeichnung für ein Videobild i in eine mehrheitliche Clusterkennzeichnung derjenigen Videobilder überführt wird, die um x Videobilder gemäß der zeitlichen Ordnung der Videobilder vor und hinter dem Videobild i liegen,

• Durchführung einer Zeitfilterung in Abhängigkeit einer vorgegeben Anzahl k, so dass für weniger als k gemäß der zeitlichen Ordnung hintereinanderliegende Videobilder mit derselben Cluster- Kennzeichnung die Clusterkennzeichnung in die Clusterkennzeichnung der davor oder dahinter liegenden Videobilder mit der größeren mittleren ähnlichkeit überführt wird, wobei die ähnlichkeit mit Hilfe einer Distanzfunktion für die messbaren Bildeigenschaften der Videobilder ermittelt wird, und

• nach Mehrheits- und Zeitfilterung, Setzen von Segment-Grenzen an Stellen einer änderung der Clusterkennzeichung in der zeitlichen Ordnung der Videobilder.

10. Verfahren nach Anspruch 9, wobei die Cluster-Bildung einen k-means- Algorithmus umfasst und die messbare Bildeigenschaft ein Histogramm mit i Balken ist und die Balken vor Anwendung des k-means-Algorithmus normalisiert werden, sodass die Summe über alle i Balken 1 ergibt und die messbare Bildeigenschaft als i-dimensionaler Vektor im Euklidischen Raum interpretierbar ist.

11. Verfahren nach Anspruch 9 oder 10, wobei das Verfahren folgenden Schritt aufweist:

zeitliches Segmentieren eines Videos in einzelne Shots, wobei jeder Shot jeweils eine Sequenz aufeinander folgender Videobilder umfasst, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden, und für jede Sequenz aufeinander folgender Videobilder die Schritte des Anwendens, Durchführens einer Mehrheitsfilterung, Durchführens einer Zeitfilterung und Setzens durchgeführt werden.

12. Verfahren zum zeitlichen Segmentieren eines Videos in Videobildfolgen, wobei das Verfahren folgende Schritte aufweist:

zeitliches Segmentieren des Videos in einzelne Shots, wobei jeder Shot jeweils eine Sequenz aufeinander folgender Videobilder umfasst, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden,

zeitliches Segmentieren jedes Shots in einzelne Subshots, so dass jeder Subshot jeweils eine Sequenz aufeinander folgender Videobilder des Shots umfasst, die nur eine geringe Veränderung im Bildinhalt zeigt, durch

• Bestimmen, für fortlaufende Videobildpaare eines Shots, einer mittleren Verlagerung, um die sich die Pixel eines Videobildes in Bezug auf das jeweilige nachfolgende Videobild des Videobildpaares verlagern, unter Verwendung eines Bewegungsvektorfeldes zwischen Videobildern des jeweiligen fortlaufenden Videobildpaares, und zwar getrennt für drei

Bewegungsrichtungen, nämlich horizontal, vertikal und Zoomrichtung, um pro Bewegungsrichtung eine zeitliche Serie von Verlagerungswerten zu erhalten,

• Filtern der zeitlichen Serien von Verlagerungswerten der drei

Bewegungsrichtungen mittels eines Mittelwertfilters, um gefilterte Verlagerungswerte pro Bewegungsrichtung zu erhalten,

• Bilden, für alle Videobilder des Shots, einer Gesamtverlagerung D als eine Summe der Beträge der Verlagerungswerte aller

Bewegungsrichtungen,

• Bilden einer Summe σ D über die Gesamtverlagerungen aller Videobilder des Shots, und

• Aufteilen des Shots in (σ D)/th d Subshots, mit tha einem vorbestimmten Grenzwert, so dass in jedem Subshot die Summe der Gesamtverlagerungen möglichst gleich groß ist.

13. Verfahren nach Anspruch 12, wobei das Bestimmen ein Ausfiltern von Bewegungsvektoren mv(ij) von Pixelblöcken mit einer Intensitätsänderung der

Pixel unterhalb eines vorgegebenen Grenzwertes, und eine Berechnung von auf die aktuelle Bildgröße (Breite, Höhe) normierten Verlagerungen für horizontale und vertikale Bewegung sowie für Zoom gemäß

∑ PnO 1 J)ITiV(U) - V f1 (U) ° h = ∑m(i,j)|v h (i,j)|Breite

IJ

∑m(i,j)mv(U) » v v (U)

D = _y v ∑m(U)|v v (U)|Höhe

IJ

^m(U)mv(U)« v z (U)

"J

D z =

Xm(U)|v z (i,j)|VBreite *Höhe

IJ it D h = horizontale Verlagerung,

D v = vertikale Verlagerung, D z = Verlagerung durch Zoom, mv(i, j) = Bewegungsvektor im Block (i,j), i,j = Blockindizes, m(i, j) = Matrix = 1 für eine Intensitätsvarianz der Pixel im Block oberhalb des vorgegebenen Grenzwertes = 0 für eine Intensitätsvarianz der Pixel im Block unterhalb des vorgegebenen Grenzwertes,

v {h,v,Z} (ü)| = Länge des Vektors v^^i j)

= 1 für jeden Block mit zumindest einem Bewegungsvektor

= 0 für jeden Block außerhalb der betrachteten Reihen und Spalten sowie in der Zoommitte, und • =Skalarprodukt, aufweist.

• 14. Verfahren nach Anspruch 12 oder 13, wobei das Filtern der zeitlichen Serien von Verlagerungswerten D h , D v und D z der drei Bewegungsrichtungen mittels eines Mittelwertfilters, um gefilterte Veriagerungswerte pro Bewegungsrichtung zu erhalten, gemäß

j=ι+κ

∑>äir.ßt (>) = 2*k + \ j ∑tϊ k D di λJ )

stattfindet, mit dir = eine der drei Bewegungsrichtungen (h-horizontal, v-vertikal, z-

Zoom), k = Anzahl der Veriagerungswerte vor und hinter dem Verlagerungswert des aktuell betrachteten Bildpaares, i = Nummer aktuell des betrachteten Bildpaares und j = Laufindex.

15. Verfahren nach Anspruch 14, wobei das Bilden, für alle Videobilder des Shots, einer Gesamtverlagerung als Summe der Beträge der Verlagerungswerte aller Bewegungsrichtungen eineBerechnung der Gesamtverlagerung D zwischen zwei benachbarten Videobildern gemäß

D = |Dh,fiit| + |D Vifi ιt| +s*|D z , fl ,t| it s = Skalierungsfaktor für den Zoom aufweist.

Description:

ANMELDERIN

Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.

BEZEICHNUNG

Verfahren zur zeitlichen Segmentierung eines Videos in Videobildfolgen und zur Auswahl von Keyframes für das Auffinden von Bildinhalten unter Einbe- Ziehung einer Subshot-Detektion.

BESCHREIBUNG

Die Erfindung bezieht sich auf ein Verfahren zur zeitlichen Segmentierung eines Videos in Videobildfolgen und zur Auswahl von Keyframes für das Auffinden von Bildinhalten. Dabei umfasst es die aus dem Stand der Technik bekannten beiden Verfahrensschritte der zeitlichen Segmentierung des Videos in einzelne Shots, wobei jeder Shot jeweils eine Sequenz aufeinander folgen- der Videobilder umfasst, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden, und der Keyframe-Selektion mit einer Zuordnung von den Bildinhalt repräsentierenden Keyframes zu den Videobildfolgen der ermittelten Zeitsegmente.

Video ist eine umfassende Informationsquelle. Die einzelnen Videobilder unterliegen jedoch keiner intrinsischen Ordnung wie sie beispielsweise für Buchstaben durch das Alphabet vorgegeben ist. Daher wurden zur Wiedererkennung von Videobildern verschiedene Beschreibungsformen, beispielsweise mittels Färb- oder Kanten-Histogrammen oder Gesichtsdeskriptoren, verwendet, wobei derartige Deskriptoren auf niedriger Ebene immer nur einen Aspekt des inhaltlich sehr komplexen Videobilds berücksichtigen. Auch

höherwertige Deskriptoren berücksichtigen immer nur die Aspekte eines Videobildes, für die sie konzipiert wurden.

Bei der Videoanalyse und -indizierung sind grundsätzlich drei Hauptfragen zu klären:

• Welche zeitlichen Einheiten sollen indiziert werden?

• Wie sollen die Einheiten indiziert werden?

• Welcher Index soll mit welchem Label gekennzeichnet werden?

Für das Darstellen, Abstrahieren, Navigieren, Suchen und Auffinden von

Videoinhalten ist die automatische Erkennung der zeitlichen Videostruktur eine wichtige Vorbedingung. Erst nach einer zeitlichen Videosegmentierung können die Einheiten indiziert werden. Wird hierzu die hierarchische Struktur eines Videos benutzt, kann die Suche in Analogie zur Suche in einem Buch oder einer Zeitschrift mit Kapiteln, Abschnitten, Absätzen, Sätzen und Wörtern erfolgen. Video kann verschiedene Modalitäten beinhalten. Neben dem visuellen Inhalt der Bilder kann auch auditiver Inhalt (Musik, Sprache, Geräusche, etc.) und ein begleitender Text vorhanden sein. Die unterste hierarchische Ebene der zeitlichen Struktur eines Videos bildet das einzelne Videobild für den visuellen Inhalt, eine einzelne Abtastung für den auditiven Inhalt und ein Buchstabe bzw. Wort für den textuellen Inhalt. In der vorliegenden Anmeldung wird jedoch nur das Segmentieren und Auffinden des visuellen Inhalts behandelt.

Auf einer höheren Ebene liegen die so genannten „Shots", die definiert werden als eine Sequenz aufeinander folgender Videobilder, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden. Es gibt verschiedene Algorithmen zur Detektion sowohl von abrupten als auch von graduellen Shot- Grenzen. Zeitlich nebeneinander liegende Shots formen eine „Szene" (dabei wird in der vorliegenden Anmeldung dieser Begriff für eine höherwertige Einheit in einem fertigen Film und nicht als Synonym für Shots verwendet). Eine Szene wird durch ein einzelnes Ereignis, das in einer kontinuierlichen

Umgebung („setting") während einer kontinuierlichen Zeitperiode stattfindet, definiert. Algorithmen zur Segmentierung eines Videos in Szenen arbeiten oft auf der visuellen ähnlichkeit zwischen einzelnen Shots, weil Shots in derselben Umgebung oft dieselben visuellen Eigenschaften aufweisen. In der höchsten Ebene liegen dann die Programme, beispielsweise Spielfilme, Nachrichtensendungen, Dokumentarfilme, Serien oder Heimvideos. Suchalgorithmen zum Auffinden von einzelnen Nachrichten oder Werbeeinblendungen existieren ebenfalls bereits. Teilweise wird zwischen der Programmebene und der Szenenebene noch eine „Sequenzebene" definiert. Dabei ist dieser Begriff nicht zu verwechseln mit dem Begriff einer „Sequenz von Videobildern" beispielsweise als Inhalt eines Shots.

Szenen sind definiert als Ereignisse, die in einer kontinuierlichen Zeitperiode in einer Umgebung stattfinden (Szene: ein Ereignis in einer Umgebung). Shots werden in einer kontinuierlichen Zeitperiode von einer Kamera kontinuierlich aufgenommen und bestehen aus einer entsprechenden Sequenz von Videobildern. Durch einen kontinuierlichen Kameraschwenk kann aber die Umgebung und damit die Szene in einem Shot wechseln. Da sich innerhalb eines Shots das Ereignis und die Umgebung ändern können, ist somit nicht jede Szenen-Grenze auch gleichzeitig eine Shot-Grenze. Umgekehrt ausgedrückt kann damit eine Szene auch nur Teile eines Shots enthalten. Dementsprechend kann auch der Bildinhalt innerhalb eines Shots sehr unterschiedlich sein. Deshalb werden derzeit auch einem Shot in der Regel mehrere Keyframes (Schlüsselbilder) zur Inhaltsdetektion zugeordnet. Für das Aussuchen der Keyframes (Keyframe-Selection) sind aus dem Stand der Technik ebenfalls verschiedene Algorithmen bekannt.

Die automatische zeitliche Segmentierung eines Videos oder einer Videosequenz läuft bisher normalerweise in zwei Schritten ab. Zunächst werden die Shot-Grenzen detektiert, um eine Segmentierung auf Shot-Ebene zu erhalten. Für die ermittelten Shots werden dann in der Regel mehrere Keyframes zur charakteristischen Angabe des Bildinhalts in selektiert. In einem dritten

Verfahrensschritt werden danach Gruppen von benachbarten Shots zu Szenen zusammengefasst, um eine Segmentierung auf Szenenebene zu erreichen. Die Zusammenfassung von benachbarten Shots zu Szenen ist aber nur eine Näherung, da Szenengrenzen innerhalb von Shots hierbei nicht in der Segmentierung beachtet werden können.

STAND DER TECHNIK

Aus dem Stand der Technik sind Algorithmen zur Szenen-Erkennung und - Definition bekannt, die in der Regel auf der Detektion von Shot-Grenzen beruhen. Einige Druckschriften befassen sich aber auch mit der Einbeziehung von Subshots in die Detektion.

In der US 7.127.120 B2 wird ein System beschrieben, das Video- und Audiomaterial einliest und automatisch eine Zusammenfassung in Form eines neuen Videos generiert. Dazu werden neben Shots auch Subshots als zeitliche Videosegmente im Originalvideo extrahiert, um nicht immer vollständige Shots in die Zusammenfassung übernehmen zu müssen. Die Zielsetzung bei der Subshot Extraktion hier ist weder das Finden sinnvoller Keyframes für Shots noch das Finden potentieller Szenengrenzen innerhalb eines Shots, sondern die Definition von Segmenten, die später in die Videozusammenfassung übernommen werden können. Das zur Subshot-Extraktion beispielhaft beschriebene Verfahren basiert auf der Analyse von Bildunterschieden zweier benachbarter Bilder (Frame Difference Curve, FDC). Dabei werden aber längerfristige änderungen ignoriert, was sowohl zu starker über- als auch Untersegmentierung führen kann. Dementsprechend eignen sich die in der US 7.127.120 B2 verwendeten Subshots nicht zum Finden möglichst weniger, aber repräsentativer Keyframes für Shots (Keyframe-Selection-Problem). Außerdem ist nicht sichergestellt, dass Szenengrenzen innerhalb von Shots auch Subshot-Grenzen im Sinne der US 7.127.120 B2 sind. Eine Definition von Szenen basierend auf Subshots wird nicht vorgenommen.

Aus der Veröffentlichung I von H. Sundaram et al.: "Determining Computable Scenes in Films and their Structures using Audio-Visual Memory Models" (Proc. 8*h ACM Multimedia Conf., Los Angeles, CA, 2000) ist es bekannt, Szenen mit Hilfe von so genannten „shot-lets" zu erkennen. Dabei werden die Shots unabhängig vom ihrem visuellen Inhalt einfach Abschnitte („shot-lets") mit der Länge von einer Sekunde geteilt. Hierbei handelt es sich um einen sehr einfachen Ansatz mit geringer zusätzlicher Komplexität für den Algorithmus zum Auffinden der Subshot-Grenzen. Szenengrenzen innerhalb von Shots können so automatisch gefunden werden. Durch die starre Bildungsregel der shot-lets ergibt sich aber in visuell statischen Shots mit sich nur wenig veränderndem Videomaterial eine starke übersegmentierung. Deshalb wird in der Veröffentlichung I keine Lösung für das Problem der Zuordnung relevanter Keyframes zu den shot-lets angegeben.

Weiterhin ist es aus der Veröffentlichung Il von K. Hoashi et al.(KDDI Laboratories): „Shot Boundary Determination on MPEG Compressed Domain and Story Segmentierung Experiments for TRECVID 2004" (TREC Video Retrieval Evaluation Online Proceedings, TRECVID, 2004) bekannt, bei der Darstellung von Nachrichten zusätzliche Punkte für potenzielle Szenengrenzen in Shots zu setzen, wenn die Sprache des Nachrichtensprechers unterbrochen wird. Diese Art der weiteren Unterteilung funktioniert aber nur für Nachrichtensendungen oder ähnlich aufgebaute Sendungen. In der Veröffentlichung III von S. Treetasanatavorn et al.: "Temporal Video Segmentierung Using Global Motion Estimation and Discrete Curve Evolution" (Proc. IEEE ICIP, International Conference on Image Processing, pp. 385-388, Singapore, October 2004) werden Segmente von Shots definiert, die auf der Konsistenz von Bewegung zwischen benachbarten Videobildern beruhen. Diese Bewegungs-Segmente werden genutzt, um die Kamerabewegung innerhalb eines Shots zu be- schreiben. In einer früheren Veröffentlichung IV von J. Maeda: "Method for extracting camera Operations in order to describe subscenes in Video se- quences" (Proc. SPIE - Volume 2187, Digital Video Compression on Personal

Computers: Algorithms and Technologies, pp. 56-67, May 1994) werden ähnliche Segmente definiert und als „Subszenen" bezeichnet. Aber eine derartige Segmentierung dient der Beschreibung von Bewegung. Sie ist aber nicht geeignet, um Segmente mit unterschiedlichem visuellen Inhalt zu beschreiben.

Im Stand der Technik werden bislang die Probleme einer geeigneten Szenenerkennung und -definition, die nicht auf Shot-Grenzen beruht, und einer geeigneten Keyframe-Auswahl für die gefundenen Segmente separat behandelt. In der Regel werden basierend auf den Segmentierungsergeb- nissen der Shotdetektion meist ein oder mehrere Keyframes pro Shot ausgewählt.

In der Veröffentlichung V von Zhuang et al.: "Adaptive key frame extraction using unsupervised clustering" in Proc. IEEE Int. Conf. Image Processing pp. 866-870, Chicago, IL, 1998) wird vorgeschlagen, alle Bilder eines Shots zu Clustern und dann die Clustermittelpunkte als Keyframes zu verwenden. Zeitliche Segmente werden hierbei aber nicht definiert. Vielmehr müssen die Cluster nicht mit zeitlichen Segmenten korrespondieren. Ein Beispiel hierfür wäre ein Shot, in dem die Kamera von Person A auf Person B schwenkt und dann wieder zu Person A. Für diesen aus drei Segmenten bestehenden Shot würden zwei Cluster gebildet, ein Cluster für Person A, ein Cluster für Person B, und dementsprechend zwei Keyframes gewählt. Zeitliche Zusammenhänge zwischen den Keyframes eines Shots gehen hierbei also verloren. Auch in der Veröffentlichung VI von J. Kang et al.: „An Effective Method For Video Segmentierung And Sub-Shot Characterization" ICASSP 2002, Proc. Vol. 4, pp. IV-3652-3655) werden Subshots als Teile eines Shots mit homogenen Bewegungseigenschaften (z.B. ein zusammenhängender Zoom oder Schwenk) bezeichnet. So kann die Bewegung in einem Shot segmentweise beschrieben werden.

In der Veröffentlichung VII von Zhang et al.: "An integrated System for content-based video retrieval and browsing" (Pattern Recognition, vol. 30, no.

4, pp. 643-658, 1997) wird ein Ansatz zur Auswahl von Keyframes für einen Shot vorgestellt. Es wird festgestellt, dass ein Shot nicht immer sinnvoll durch nur ein einziges Keyframe repräsentiert werden kann. Daher werden neben dem ersten Bild eines Shots möglicherweise weitere Bilder als Keyframes ausgesucht. Dies geschieht mittels zweier Methoden (ein einfacher Vergleich der visuellen ähnlichkeit zwischen Einzelbildern und globale Bewegungsanalyse zur Ermittlung von Kamerabewegungen). Die Keyframe-Auswahl wird somit zwar abhängig vom Videoinhalt vorgenommen, aber es werden keine Segmente (Subshots) definiert, die später für die Szenendefinition verwendet werden könnten. Außerdem wird immer mindestens das erste Bild eines Shots als Keyframe verwendet. Dieses Bild ist aber gerade bei graduellen Shot- übergängen (Ausblendung, Einblendung, überblendung, Wipe) ungünstig, da es den Shot schlecht repräsentiert.

Ein Verfahren zur Keyframe-Selektion auch für Subshots ist aus der US 2004/0012623 bekannt und wird als nächstliegender Stand der Technik zur Erfindung angesehen. Detektoren innerhalb der Videokamera liefern Daten über die Rotation der Kamera in X- bzw. in Y-Richtung. Außerdem wird die Benutzung des Zoom-Schalters durch den Benutzer an der Videokamera protokolliert. Basierend auf diesen Daten zur Kamerabewegung werden die Anfangspunkte von Schwenk-(Pan) und Zoombewegungen der Videokamera als Subshot-Grenzen innerhalb von Shots definiert. Dann werden Keyframes für die Subshots in Abhängigkeit von den Kamerabewegungsdaten festgelegt. Voraussetzung für das Verfahren ist also, dass für die Videosequenz die Kamerabewegungsdaten von der Kamera protokolliert werden und zur Verfügung stehen. Weiterhin führen ausschließlich Kamerabewegungen zu zusätzlichen Subshots und damit zusätzlichen Keyframes. Lokale Bewegungen von Objekten oder andere Effekte in bereits editierten Videos werden ignoriert. Somit werden nicht alle relevanten änderungen für die Keyframe Selektion beachtet.

AUFGABENSTELLUNG

Die Aufgabe besteht für das eingangs beschriebene, gattungsgemäße Verfahren zur zeitlichen Segmentierung eines Videos in Videobildfolgen und zur Auswahl von Keyframes für das Auffinden von Bildinhalten daher darin, durch spezielle Segmentation gewonnene spezielle Videobildfolgen so zu definieren und automatisch zeitlich zu segmentieren, dass sowohl Shots als auch Szenen aus einer oder mehreren zeitlich aufeinander folgenden solchen speziellen Videobildfolgen bestehen. Das bedeutet, dass die verwendeten speziellen Videobildfolgen auch zur Szenendefinition verwendbar sein sollen, ohne dass sie Szenengrenzen umfassen. Dabei soll aber trotz Verwendung möglichst weniger spezieller Videobildfolgen gleichzeitig sichergestellt sein, dass nur ein einziges Videobild (Keyframe) pro spezieller Videobildfolge ausreicht, um deren Bildinhalt umfassend zu repräsentieren. Weiterhin soll die zeitliche Segmentierung in die speziellen Videobildfolgen aber so einfach sein, dass Algorithmen zum Auffinden ihrer Grenzen einfach und zuverlässig umsetzbar sind. Es sollen möglichst wenige Informationen zur Grenzfestlegung benötigt werden.

Die erfindungsgemäße Lösung für diese Aufgabe ist dem Verfahrensanspruch zu entnehmen. Vorteilhafte Weiterbildungen des Verfahrens werden in den Unteransprüchen aufgezeigt und im Folgenden im Zusammenhang mit der Erfindung näher erläutert.

Bei dem erfindungsgemäßen Verfahren werden die in der Aufgabe geforderten speziellen Videobildfolgen in Form von Subshots definiert. Es gliedert sich in drei Abschnitte: zunächst wird für das Video bzw. für einzelne Videosequenzen eine an sich bekannte Shot-Detektion durchgeführt. Dann werden die ermittelten Shots in erfinderischer Weise in Subshots segmentiert, wobei nach größe- ren langfristigen änderungen im Bildinhalt Subshot-Grenzen eingefügt werden, sodass sowohl Szenen- als auch Shot-Grenzen gleichzeitig Subshot-Grenzen sind. Zum Auffinden der Subshot-Grenzen können verschiedene Algorithmen

unterschiedlicher Komplexität eingesetzt werden. Danach wird jedem Subshot genau ein für den Bildinhalt charakteristisches Keyframe zugeordnet.

Die Definition der mit der Erfindung gebildeten Subshots lautet: „Ein Subshot ist eine Folge aus aufeinander folgenden Videobildern, die ein Ereignis (event) zeigen, das mit einer einzelnen Kameraeinstellung (camera act) kontinuierlich in einer einzelnen kontinuierlichen Umgebung (setting) mit einer nur geringen änderung im Bildinhalt aufgenommen wurde." Es handelt sich also bei der Definition eines Subshots nach der Erfindung also grundsätzlich um die Definition eines Shots mit den zwei Einschränkungen aus der Definition einer Szene, die einen Subshot auf eine Umgebung (setting) und ein Ereignis (Event) begrenzen. Darüber hinaus wird aber noch eine weitere, neue Randbedingungen in die Definition einbezogen: es werden nur geringe änderungen im Bildinhalt zugelassen. Dadurch wind sichergestellt, dass Subshots immer kurze Videoabschnitte mit einer geringen visuellen Variation sind.

Nach der Subshot-Segmentierung wird dann jedem Subshot genau ein Keyframe zugeordnet. Die mit der Erfindung neu definierte Subshot-Segmen- tierung hat zwei bedeutsame Vorteile gegenüber bekannten Segmentierungen. Mit den Subshot-Grenzen werden alle potenziellen Szenenübergänge markiert, sodass die Subshots die Grundbausteine jeder Szene sind. Gleichzeitig sind die Subshots aber auch die Grundbausteine eines Shots, da alle Shot-Grenzen auch als Subshot-Grenzen verwendet werden. Durch diese Segmentierung ist sicher gewährleistet, dass sowohl Sequenz- als auch Shot-Grenzen gleichzeitig Subshot-Grenzen sind. Subshot-Grenzen zeigen also die Grenzen jedes Ereignisses (event) und die Grenzen jeder Umgebungseinstellung (setting) an. Zusätzlich können sowohl in den Szenen als auch in den Shots noch weitere Subshot-Grenzen liegen. Die Subshots stellen damit die kleinstmögliche Segmentierungseinheit als spezielle Videobildfolge dar, bei der gewährleistet ist, dass immer ähnliche Bildinhalte mit nur geringen Veränderungen zusammengefasst werden. Durch diese bei der Erfindung optimale Segmen-

tierung kann dann jedem Subshot genau ein charakteristisches Keyframe zur Archivierung zugeordnet werden, wodurch das grundlegende Zuordnungsproblem gelöst wird. Die inhaltlichen Unterschiede in der Videosequenz werden ohne Informationsverlust, aber auch ohne übersegmentierung durch die generierten Subshots sicher aufgezeigt. Die zeitliche Reihenfolge und die Anzahl der Subshots werden eindeutig durch die zeitliche Reihenfolge und die Anzahl der zugeordneten Keyframes aufgezeigt. Daher sind die ausgesuchten Keyframes hervorragend für eine Analyse, Sichtung (browsing), Indizierung und Suche im Video geeignet.

Subshots sind immer Abschnitte einzelner Shots, weil sie ebenfalls nur Folgen von Bildern einer einzelnen Kameraeinstellung umfassen. Nachdem mit einem Shot-Detektions-Algorithmus die Shot-Grenzen gefunden worden sind, kann deshalb jeder Shot mit einem weiteren Algorithmus in ein oder mehrere Subshots zerlegt werden. Dabei können die beiden Algorithmen bevorzugt für eine gleichzeitige, überlagerte Segmentierung auch synchron durchgeführt werden. Weiterhin ist es vorteilhaft, wenn am Anfang oder am Ende eines Shots, wenn dieser einen graduellen übergang zu den benachbarten Shots aufweist, innerhalb des Shot-übergangs keine weitere Segmentierung in Subshots vorgenommen wird, um eine zu starke Segmentierung in diesen Bereichen zu vermeiden. Durch die Maßnahme kann außerdem Rechenzeit zur Aufbereitung der Bildinhalte eingespart werden.

Ein Ereignis ist ein semantisches Konzept. Obwohl bereits viel in die Erfor- schung des semantischen Verständnisses investiert wurde, ist eine Ereignis- und Highlight-Detektion grundsätzlich definitionsabhängig und damit schwer umzusetzen. Deshalb werden derzeit Grenzen zwischen Ereignissen gleichgesetzt mit einer änderung der Umgebung und/oder des Bildinhalts, beispielsweise, wenn Personen in die Szene kommen oder diese verlassen. Das Auffinden aller änderungen in der Umgebung und im Bildinhalt garantiert somit in der Regel auch das Auffinden aller Grenzen zwischen unterschiedlichen Ereignissen. Nur durch eine Bewegung der Kamera relativ zur Umgebung kann

die Umgebung während einer Kameraeinstellung verändert werden, z.B. durch Bewegung der Kamera von einem Raum in einen anderen. Weil aber verschiedene Umgebungen in der Regel auch visuell voneinander verschieden sind, können zur Detektion potenzieller Umgebungsänderungen nicht nur Bewegun- gen sondern auch Unterschiede im Bildinhalt genutzt werden. Solche änderungen im Bildinhalt können durch Nutzung von einfachen Bildeigenschaften erfasst werden, beispielsweise können Färb- oder Kanten-Histogramme genutzt werden. Andere Bildeigenschaften können aber ebenso herangezogen werden. Im speziellen Beschreibungsteil werden verschiedene Algorithmen unterschiedlicher Komplexität erläutert, die sich für die Segmentierung von Videos bzw. Videosequenzen in Subshots nach der Erfindung eignen und auf Histogrammen oder Bewegungsanalyse beruhen. Bevorzugt wird die Subshot- Detektion mit einem Schwellwert-Algorithmus, einem Cluster-Algorithmus und/oder einem Bewegungs-Algorithmus durchgeführt, wobei durch die darin angegebenen Schwellwerte, Grenzwerte oder tolerierbare Fehler das Maß für die zugelassenen geringe Veränderung die Differenz einfacher Bildeigenschaften aufeinanderfolgender Videobilder festgelegt wird. Die bei der Definition eines Subshots zugelassenen maximal erlaubten „geringen änderungen im Bildnhalt" können durch diese Werte gezielt eingestellt werden. über die Höhe der vorgegebenen Werte hat der Benutzer somit Einfluss auf das Maß der zugelassenen geringen änderungen.

Eine Aufgabe der vorliegenden Erfindung kann somit auch darin gesehen werden, ein Verfahren zur Auswahl von Keyframes für das Auffinden von Bildinhalten sowie ein Verfahren zur zeitlichen Segmentierung von Videos bzw. von Sequenzen von aufeinanderfolgenden Videobildern zu schaffen, so dass auf Basis der ausgewählten Keyframes bzw. der Segmentierung eine Analyse, Sichtung, Indizierung oder Suche im Videomaterial erleichtert wird, wobei diese Aufgabe durch ein Verfahren gemäß einem der Ansprüche 1, 9 und 12 gelöst wird.

AUSFüHRUNGSBEISPIELE

Ausbildungsformen des Verfahrens nach der Erfindung werden zu dessen weiterem Verständnis nachfolgend anhand der schematischen Figuren näher erläutert. Dabei zeigt:

Figur 1 ein Diagramm zu den verschiedenen Levels in einem

Videoprogramm,

Figur 2 ein Diagramm zum Schwellwert-Algorithmus, Figur 3 ein Diagramm zur Mehrheitsfilterung im Cluster-Algorithmus,

Figur 4 ein Diagramm zur Setzung der Subshot-Grenzen nach der

Durchführung des Cluster-Algorithmus, Figur 5 ein Schema zu den Bewegungsrichtungen der Pixel im

Bewegungs-Algorithmus und Figur 6 ein Diagramm zur Segmentierungsgüte der drei Algorithmen.

Figur 1 zeigt die Hierarchie der verschiedenen Darstellungsebenen unter Anwendung des Segmentierungsverfahrens nach der Erfindung. In der Programmebene werden verschiedene Programme, beispielsweise Spielfilme, Nachrichten, Werbung angeboten. Jedes Programm, beispielsweise ein

Spielfilm, gliedert sich in eine Vielzahl (durch schräge Linien angedeutet) von Szenen, die die Szenenebene bilden. Eine Szene wird durch ein einzelnes Ereignis, das in einer kontinuierlichen Umgebung („setting") während einer kontinuierlichen Zeitperiode stattfindet, definiert. Ein Shot ist definiert als eine Sequenz aufeinander folgender Videobilder, die von einer kontinuierlichen Kameraeinstellung aufgenommen wurden. Daher führt ein Umgebungswechsel durch Kamerabewegung im Video zu einem Szenenwechsel, aber nicht zu einem Shot-Wechsel.

Dargestellt ist in Figur 1 , dass die Szenengrenze zwischen Szene 2 und 3 nicht mit einer Shot-Grenze übereinstimmt. Bei dem Segmentierungsverfahren nach

der Erfindung wird unterhalb der Shot-Ebene eine weitere Ebene eingeführt: die Subshot-Ebene. Zu erkennen ist einerseits, dass jede Szenen- und auch jede Shot-Grenze auch gleichzeitig eine Subshot-Grenze ist. Weiterhin ist aber auch zu erkennen, dass weitere Subshot-Grenzen innerhalb eines Shots liegen können. Ein Subshot wird nach der Erfindung als ununterbrochene Bildfolge einer Kameraeinstellung an einem Ort mit einer geringen änderung des Bildinhalts definiert. Somit kann mit der Erfindung gewährleistet werden, dass einerseits innerhalb eines Subshots keine Szenengrenzen liegen, d.h. jede Szenengrenze auch eine Subshot-Grenze ist und somit Subshots eindeutig einzelnen Szenen zugeordnet werden können, und dass andererseits für jeden Subshot genau ein Keyframe („Schlüsselbild") repräsentativ ist. Das Keyframe wird ausgesucht aus der untersten Hierarchieebene: der Bildebene, in der alle einzelnen Videobilder angeordnet sind. Eine Möglichkeit der Keyframe- Selektion wäre es beispielsweise, immer das erste, mittlere oder letzte Bild eines Subshots zu verwenden. Weitere Auswahlkriterien sind möglich.

Bei der Durchführung des Verfahrens nach der Erfindung wird als erster Verfahrensschritt eine Shot-Detektion durchgeführt. Das Auffinden von Shot- Grenzen ist allgemein aus dem Stand der Technik bekannt und wird beispiels- weise in folgenden Veröffentlichungen beschrieben, deren Inhalt durch die Zitierung ausdrücklich zum Offenbarungsgehalt der vorliegenden Erfindung hinzugerechnet wird.

Veröffentlichung VIII: C. Petersohn. "Fraunhofer HHI at TRECVID 2004: Shot Boundary Detection System", TREC Video Retrieval Evaluation Online Proceedings, TRECVID, 2004,

Veröffentlichung IX: C. Petersohn. "Dissolve Shot Boundary Determination", Proc. IEE European Workshop on the Integration of Knowledge, Semantics and Digital Media Technology, pp. 87-94, London, UK, 2004, Veröffentlichung X: C. Petersohn. "Wipe Shot Boundary Determination",

Proc. IS&T/SPIE Electronic Imaging 2005, Storage and Retrieval Methods and Applications for Multimedia, pp. 337-346, San Jose, CA, 2005 und

Veröffentlichung Xl: R. Lienhart. "Comparison of Automatic Shot Boundary Detection Algorithms." Proc. SPIE Storage and Retrieval for Image and Video Databases VII, vol. 3656, p. 290-301 , 1999.

Als letzter Verfahrensschritt des Verfahrens nach der Erfindung wird dann eine Keyframe-Selektion mit einer Zuordnung von jeweils genau einem den Bildinhalt vollständig repräsentierenden Keyframe („Schlüsselbild") zu jedem detektierten Subshot vorgenommen. Hierbei kann es sich um ein beliebiges Videobild aus dem Subshot handeln, da dieser in seiner Länge bei der Erfindung eben gerade so festgelegt wurde, dass alle enthaltenen Videobilder einen sehr ähnlichen Bildinhalt zeigen. Beispielsweise kann das mittlere Videobild in einem Subshot als Keyframe ausgewählt werden.

Der zweite Verfahrensschritt umfasst die durch die Erfindung eingeführte Subshot-Detektion, die nach verschiedenen Algorithmen zur Ermittlung der Differenz der Bildinhalte aufeinanderfolgender Videobildern durchgeführt werden kann. Im Folgenden werden drei verschiedene Algorithmen unterschiedlicher Komplexität als Beispiele für einsetzbare Algorithmen genannt. Andere Algorithmen sind ebenfalls einsetzbar.

SCHWELLWERT-ALGORITHMUS

Dieser einfache Algorithmus misst die langfristigen änderungen im Bildinhalt. übersteigen diese langfristigen änderungen einen Schwellwert, so wird eine Subshot-Grenze eingefügt. „Langfristig" bedeutet dabei, dass Bildänderungen nicht nur zwischen benachbarten Videobildern, sondern auch zwischen zeitlich weiter voneinander entfernten Videobildern gemessen und ausgewertet werden. Der Bildinhalt wird durch eine messbare Bildeigenschaft approximiert. Dies kann z.B. ein Farb-Histogramm, Kanten-Histogramm oder auch ein BiId- Deskriptor nach dem MPEG-7 Standard sein. Weitere Möglichkeiten existieren. Um die änderung des Bildinhalts zu quantifizieren, wird eine Distanzfunktion auf die gemessenen Bildeigenschaften zweier Bilder

angewandt. Beispielhaft wird im Folgenden die Verwendung von Histogrammen beschrieben.

Es können Histogramme mit unterschiedlich vielen Quantisierungsstufen und in unterschiedlichen Farbräumen, beispielsweise YUV- oder HSV-Farbraum, verwendet werden. Dabei können die drei Kanäle separat oder als dreidimensionale Vektoren interpretiert werden. Beste Ergebnisse werden erzielt, wenn die Farbwerte der Bildpunkte im HSV-Farbraum, die Parameter H (Hue - Farbton) und S (Saturation - Sättigung), als zweidimensionale Vektoren interpretiert und für ein Histogramm mit 16 mal 16 Balken verwendet werden. Der Grauwert V (Value) wird ignoriert, weil dieser sehr empfindlich gegenüber Helligkeitsveränderungen ist. Jeder der 16 mal 16 Balken repräsentiert dann die Anzahl der Pixel (Bildpunkte) in einem Bild, deren Farbwert in einem bestimmten - für jeden Balken anderen - Bereich liegt.

Die benötigte Distanzfunktion für die Histogramme als messbare Bildeigenschaft basiert auf Histogramm-Intersektion. Die Distanz d zwischen den Histogrammen zweier Bilder F und F' ist definiert als:

mit pc = Anzahl der für die Histogramm-Erstellung genutzten Pixel i = Laufindex k = Anzahl der Balken H(F, i) = iter Balken des Histogramms von Videobild F (Anzahl der

Pixel mit Farbwert im iten Bereich) min = Minimum

Bei einem 16x16 Balken-Histogramm ist k= 256. Die Distanzfunktion hat einen Wertebereich von [0,1]. Je geringer die Distanz zwischen zwei Bildern ist, desto ähnlicher sind sich die Bilder.

In diesem einfachen Schwellwert-Algorithmus wird das erste Videobild (Frame) in einem Shot oder das erste Videobild hinter einem graduellen übergang als Referenzbild genutzt. Dann wird die Distanz zwischen den Histogrammen dieses Referenzbilds und jedem nachfolgenden Videobild gebildet. Wenn die Distanz beispielsweise bei drei hintereinander folgenden Videobildern einen vorgegebenen Schwellwert (z.B. 0,3) übersteigt, wird eine Subshot-Grenze vor diesen drei Videobildern eingefügt. Das erste der drei Videobilder wird dann das neue Referenzbild (vergleiche Figur 2).

Der Vorteil bei diesem Algorithmus liegt in seiner geringen Komplexität. Die Fehlerrate ist aber relativ hoch, weil kurzfristige Störungen wie einzelne abweichende Bilder, beispielsweise durch Blitzlichter, kurzfristig veränderte Bilder, oder sich sehr schnell im Vordergrund bewegende Objekte, Fehler hervorrufen können. Das wird zwar durch den Vergleich von drei aufeinander folgenden Bildern abgemildert, kann aber nicht vollständig verhindert werden. Außerdem wäre es wünschenswert, die Subshot-Grenzen in die Mitte einer Veränderung zu legen. Dies kann bei der geschilderten Vorgehensweise aber nicht garantiert werden. Die Anwendung des Schwellweri>Algorithmus dient daher mehr als Ermittlung einer Ausgangsposition. In der Praxis wird dieser Algorithmus wohl eher nicht angewendet werden.

CLUSTER-ALGORITHMUS

Durch die Anwendung eines Cluster-Algorithmus mit einer Clusterung von Bild- Deskriptoren können Fehler bei der Detektion aufgrund von einzelnen, abweichenden Bildern reduziert und Subshot-Grenzen zentriert angeordnet werden. Der vorgestellte Cluster-Algorithmus detektiert Subshot-Grenzen ebenfalls basierend auf der Analyse der Bildinhaltsänderung. Es können die gleichen messbaren Bildeigenschaften verwendet werden wie beim Schwellwert-Algorithmus. Eine Möglichkeit wäre also z.B. wieder die Verwendung

eines 16x16 Balken-Histogramms im HSV-Farbraum. Allgemein bekannte Cluster-Methoden sind der k-means-Algorithmus und hierarchisches Clustern. Bei dem Detektionsverfahren nach der Erfindung ergab die k-means-Cluster- Methode, die einfach und robust ist, die besten Ergebnisse.

Den k-means-Cluster-Algorithmus gibt es in zwei Versionen. Er kann entweder auf Vektoren im euklidischen Raum angewendet werden oder beliebige Eigenschaften verwenden, wenn eine mathematische Metrik und eine Distanzfunktion existiert, die die Distanz zwischen zwei Ausprägungen der verwende- ten Eigenschaft definiert. Die Distanzfunktion gemäß Gleichung (1 ) erfüllt diese Anforderungen. Viele andere messbare Bildeigenschaften und Distanzfunktionen sind einsetzbar.

Für das Detektionsverfahren nach der Erfindung werden messbare Bildeigen- Schäften verwendet, die sich direkt als Vektor im euklidischen Raum interpretieren lassen. Es können zwei Methoden für die Vektorenzuordnung zu den Bildern eingesetzt werden. Für das Beispiel des 16x16 Balken- Histogramms im HSV-Farbraum können die 256 Balken im Histogramm auf zwei Arten verwendet werden. Vorher müssen sie allerdings normalisiert vorliegen, d.h., sie werden jeweils durch die Anzahl der Pixel im Bild geteilt, sodass die Summe aller 256 Balken eines Histogramms zusammen 1 ergibt. Dann können die Balken zum einen direkt als Vektorkomponenten interpretiert werden. Dies ergibt dann einen Vektor im 256-dimensionalen Raum. Zum anderen kann aber auch zunächst die hohe Anzahl der Dimensionen durch multidimensionales Scaling (MDS) reduziert werden, um dann Vektoren mit weniger Dimensionen für das Clustering zu verwenden. Die erste Methode unter direkter Nutzung aller Balken in einem Histogramm ergab bei der Erprobung die besten Ergebnisse.

In Abhängigkeit von der Variation des Bildinhalts in einem Shot ergibt sich eine entsprechende Variation der Anzahl erforderlicher Subshots und damit der Anzahl der Cluster, die einen Shot beschreiben. Zur Clusterbildung können

spezielle Parameter, wie das Schwarz- oder das Akaike-Information-Kriterium, herangezogen werden. Besser ist eine Methode, die den maximalen tolerierbaren Fehler nach der Clusterung (Clusterfehler, z.B. 0,1 ) festlegt. Dabei wird der k-means-Algorithmus mehrfach mit steigender Clusterzahl ausgeführt. Eine höhere Clusteranzahl führt zu kleineren Clustern und damit zu geringeren durchschnittlichen Distanzen der Vektoren zum jeweiligen Clustermittelpunkt. Die zeitlichen Differenzen zwischen den einzelnen Bildern werden dabei während der Clusterung vernachlässigt.

Die zeitliche Reihenfolge wird dann anschließend bei der Zuordnung der einzelnen Clusteriabels zu den Subshot-Grenzen verwendet. Dabei werden zwei Filter zur Berücksichtung von „Ausreißer-Bildern" und von Fluktuationen der Cluster-Kennzeichnung (Label) eingesetzt. Zunächst wird eine „Mehrheitsfilterung" (engl, „majority vote") durchgeführt: eine minderheitliche Cluster- Kennzeichnung für ein Videobild i wird in die mehrheitliche Cluster- Kennzeichnung derjenigen Videobilder überführt, die um x Videobilder vor und hinter dem Videobild i liegen. Der Parameter x wird dabei durch Erfahrung ermittelt und kann beispielsweise 2 betragen (vergleiche Figur 3, oben: vor der Filterung, unten: nach der Filterung). Mit dem zweiten Filter wird sichergestellt, dass Subshots eine minimale Länge von k, beispielsweise 10, Bildern haben. Falls die gleiche Cluster-Kennzeichnung weniger als k hintereinander liegenden Bildern zugeordnet wurde, so wird diesen Bildern die Cluster-Kennzeichnung zugeordnet, die die Bilder des Segments davor oder danach haben, abhängig davon, zu welchen Bildern sie eine kleinere durchschnittliche Distanz gemäß Gleichung 1 haben. Nach der Filterung werden in der zeitlichen Reihenfolge an Stellen der änderung der Cluster-Kennzeichnungen die Subshot-Grenzen gesetzt (vergleiche Figur 4). Die Cluster-Methode ist robuster gegenüber Ausreißer-Bildern als die Schwellwert-Methode. Ein weiterer Vorteil ist, dass auf Grund der speziellen Clusterberechung von k- means die Clusterübergänge und damit die Subshotgrenzen mittig bei Bildveränderungen positioniert werden.

BEWEGUNGS-ALGORITHMUS

änderungen in der Umgebung (setting) innerhalb eines Shots werden immer durch eine Kamerabewegung erzeugt, wohingegen änderungen in einem Ereignis (event) oder im Bildinhalt sowohl durch Kamerabewegung als auch durch eine Objektbewegung erzeugt werden können. Der dritte vorgeschlagene Algorithmus benutzt deshalb die Bewegungsanalyse zur Bestimmung der Subshot-Grenzen.

In einem ersten Schritt wird dazu das Bewegungs-Vektorfeld zwischen fortlaufenden Bildpaaren bestimmt. Dazu kann ein Block-Matching, angewendet beispielsweise auf Blocks mit 8x8 Pixeln, genutzt werden. Für kodierte (beispielsweise nach MPEG Standard) Videosequenzen können auch die Bewegungsvektoren der Kodierung genutzt werden, wodurch sich der Rechenaufwand verringert.

Nicht alle ermittelten Bewegungsvektoren repräsentieren jedoch auch eine reale Bewegung. Beispielsweise sind die Bewegungsvektoren mv(i j) für Blocks (i,j) mit geringen inhaltlichen Details nicht zuverlässig ermittelbar. Deshalb werden in dem hier benutzten Bewegungs-Algorithmus die Bewegungsvektoren von Blocks mit einer Pixelintensitätsvarianz unterhalb eines vorgegebenen Grenzwertes vernachlässigt (siehe unten m(ij)).

Um die Höhe der änderung zwischen zwei Bildern angeben zu können, wird der Begriff der „Verlagerung" eingeführt. Hiermit kann angegeben werden, um welchen mittleren Betrag sich die Pixel eines Bildes in Bezug auf die Größe des Bildes und in Bezug auf das nachfolgende Bild verlagert haben. Die Verlagerung wird getrennt für drei Bewegungsrichtungen ermittelt. Hierbei handelt es sich um die horizontale (h) und die vertikale (v) Bewegungsrichtung sowie um die Zoomrichtung (z), bei der gleichzeitig eine horizontale, eine vertikale und eine in die Ecken des Bildes gerichtete) schräge Bewegung

auftritt (vergleiche Figur 5). Die gleiche Indizierung gilt für die Bewegungsvektoren. Die Verlagerungen berechnen sich zu:

∑m{i,j)mv(i,j)»v h {i,j)

U

D h = ∑m(i,j)\v h (i,j)preite

IJ

∑m(i,j)mv(i,j) •v v {i,j) ° v = ' ∑m(i,j)\v v (i,j)\Höhe

IJ

it D h = horizontale Verlagerung D v = vertikale Verlagerung D 2 = Verlagerung durch Zoom i,j = Blockindizes m(i, j) = Matrix = 1 für eine Intensitätsvarianz der Pixel im Block oberhalb des vorgegebenen Grenzwertes = 0 für eine Intensitätsvarianz der Pixel im Block unterhalb des vorgegebenen Grenzwertes rnv(ij) = Bewegungsvektor von Block (ij)

V{ h , v ,z} (ij) = Vektorfeld, das je nach Bewegungsrichtung wie in Fig. 5a-c gezeigt unterschieldich ist Länge des Vektors v {h , v ,z}(U)

= 1 für jeden Block mit zumindest einem Vektor v {hιV ,z} (siehe Fig. 5a-c)

= 0 für jeden Block außerhalb der betrachteten Reihen und Spalten sowie in der Zoommitte (siehe Fig. 5a-c), =Skalarprodukt.

Die zeitliche Serie solcher Verlagerungswerte muss nun durch ein Mittelwertfilter gefiltert werden, um hochfrequentes Rauschen zu entfernen. Hochfrequentes Rauschen entsteht z.B. bei schlechter Kameraführung (Schüttelbewegungen) oder, wenn sich ein Darsteller hin und her bewegt, sodass zwar eine große Bewegung auftritt, aber keine große langfristige Veränderung des Bildinhalts. Mit dem Mittelwertfilter werden beispielsweise alle Verlagerungswerte eine halbe Sekunde vor und eine halbe Sekunde nach dem jeweils aktuellen Verlagerungswert betrachtet. Ohne Filterung würden im weiteren Ablauf zu große Werte für die Gesamt- Verlagerung berechnet werden, sodass sich eine zu große Anzahl von erforderlichen Subshots ergeben würde. Die gefilterten Verlagerungen für die drei Richtungen sind definiert durch:

1 J ϊ& k D dir>m (i) = — — - ∑ D diτ O)

L K + 1 j=i . k mit dir = eine der drei Bewegungsrichtungen (h-horizontal, v-vertikal, z- Zoom), k = Anzahl der Verlagerungswerte vor und hinter dem Verlagerungswert des aktuell betrachteten Bildpaares, i = Nummer des aktuell betrachteten Bildpaares und j = Laufindex.

Die Anzahl der Verlagerungswerte vor und hinter dem Verlagerungswert des aktuell betrachteten Bildpaares ist abhängig von der Bildwiederholrate des

Videos und kann z.B. so gewählt werden, dass sie der halben Bildwiederholrate entspricht.

Die solchermaßen ermittelten Verlagerungen D^it, Dv,fu b D Zi fj| t werden dann zu einer Gesamt- Verlagerung D addiert, . die die Höhe der Kamera- und/oder Objektbewegung zwischen zwei zeitlich benachbarten Bildern repräsentiert:

D = |Dh,fiit| + IDv.fiitl +s*|D Zjfi ιt|

mit s = Skalierungsfaktor für den Zoom, z.B. s=1.

Der Absolutwert der Verlagerungen für die einzelnen Richtungen muss verwendet werden, da die gefilterten Verlagerungen gerichtet sind. Das bedeutet z.B. für die vertikale Verlagerung, dass Auf- und Niederbewegungen unter- schiedliche Vorzeichen bei der Verlagerung erzeugen. Die Gesamt-Veriage- rung D hingegen ist nicht mehr gerichtet und beschreibt lediglich die gesamte Verlagerung zwischen zwei Bildern unabhängig von ihrer Richtung. Für die Folge von Bildern in einem Shot können deren Gesamtverlagerungen dann wiederum zu einer Summe σ D addiert werden. Wenn der Wert dieser Summe oberhalb eines vorgegebenen Grenzwertes th d liegt, beispielsweise th d = 0,5, werden ein oder mehrere Subshot-Grenzen in den entsprechenden Shot eingefügt. Eine Gesamtverlagerung σ D von 0,5 bedeutet, dass die Pixel in den Bildern des Shots im Mittel um die Hälfte der Bildbreite oder Bildhöhe in die entsprechende Richtung gewandert sind. Die Anzahl #ssb der einzufügenden Subshot-Grenzen kann dann berechnet werden mit:

#ssb = σ D / th d

Danach werden die Orte der einzufügenden Subshot-Grenzen so festgelegt, dass jedem Subshot der gleiche Betrag der summierten Gesamtverlagerung σ D zugeordnet ist. Um die Fehlerrate zu verringern, werden Subshot-Grenzen

jedoch nur eingeführt, wenn eine vorgegebene minimale änderung im Bildinhalt th min auftritt. Hierfür muss die Distanz bezüglich der Bildeigenschaften gemäß Gleichung 1 zwischen dem ersten und dem letzten Bild des aktuellen Subshots größer als th min sein, mit z.B. th mi n=0,1. Der Vorteil des Bewegungs- Algorithmus liegt darin, dass sich die Subshot-Grenzen mittels von Bewegungsanalyse sehr gut auffinden lassen. Bewegung ist eine wichtige beschreibende Eigenschaft für den Bildinhalt, weil die Bewegung der Hauptgrund für änderungen im Bildinhalt ist. Dem gegenüber steht der relativ große Berechnungsaufwand, der aber durchaus zu handhaben ist. Allerdings können andere Eigenschaften, die eine änderung im Bildinhalt hervorrufen, mit der Bewegungsanalyse nicht erfasst werden. Von daher ist es besonders vorteilhaft, wenn beispielsweise der Cluster-Algorithmus und der Bewegungsalgorithmus miteinander kombiniert werden. TESTERGEBNISSE

Um die Leistungsfähigkeit der drei beschriebenen Algorithmen beurteilen zu können und die beschriebenen Parameter inkl. Schwellwerte sinnvoll einstellen zu können, wurden Tests an einer Reihe von Videosequenzen durchgeführt. Dazu wurde für jeden Shot die Anzahl und Position sinnvoller Subshotgrenzen markiert. Hier wurde also vom Menschen manuell entschieden, wann ein Ereigniswechsel stattgefunden hat, wann eine Umgebung verlassen wurde bzw. wann eine Bildänderung groß genug war, um eine Subshot-Grenze notwendig werden zu lassen. Danach wurden verschiedene Parameter für die drei Algorithmen getestet und die jeweilige Segmentierungsqualität bestimmt.

Manuell bestimmte Subshot-Grenzen können bei der automatischen Segmentierung entweder gefunden werden (k - korrekt), nicht gefunden werden (ng - nicht gefunden) oder es können weitere Subshot-Grenzen fälschlich hinzugefügt (fh - fälschlich hinzugefügt) werden. Die Anzahl von k, ng und fh werden als #k, #ng und #fh bezeichnet. Als Bewertungsmaß für die Segmentierungsqualität werden zwei Größen verwendet: Der Anteil der korrekt wieder gefundenen Subshot-Grenzen (Wiederfindung, Recall) und der

Anteil der korrekten Subshot-Grenzen an den gefundenen Subshot-Grenzen (Präzision). Sie sind definiert als:

#k Wiederfindung =

#k+#ng #k

Präzision =

#k+#ß

Werte von 0,9 für Wiederfindung und Präzision bedeuten beispielsweise, dass von 10 manuell markierten Subshot-Grenzen 9 korrekt gefunden wurden, 1 nicht gefunden wurde und 1 falsch eingefügt wurde. Dies würde bereits eine verhältnismäßig gute Segmentierung bedeuten. Eine perfekte, fehlerfreie Segmentierung würde für Wiederfindung und Präzision Werte von 1 ,0 erreichen. Durch Variation der Parameter für die drei Algorithmen können verschiedene Werte für Wiederfindung und Präzision erreicht werden. Für einen Algorithmus zieht eine Erhöhung des Wiederfindungswertes durch Veränderung der Parameter meist eine Verkleinerung beim Präzisionswert nach sich und anders herum.

Die Ergebnisse der Segmentierungsqualität des Verfahrens nach der Erfindung für eine weite Spanne von Parametern bei den drei Algorithmen zeigt Figur 6. Die in den Ausführungsbeispielen genannten Parameterwerte gelten für Parameterwerte, bei denen Wiederfindung und Präzision etwa gleich groß sind. Beim Vergleich der drei Algorithmen in Figur 6 ist zu erkennen, dass die Segmentierungsqualität des Bewegungs-Algorithmus am besten, die des Schwellwert-Algorithmus am schlechtesten ist. Insgesamt liegt die Segmen- tierungsqualität des Verfahrens nach der Erfindung aber auf hohem Niveau.

In anderen Worten ausgedrückt, ist ein Ausführungsbeispiel der vorliegenden Erfindung beispielsweise ein Verfahren zur zeitlichen Segmentierung eines Videos in Videobildfolgen und zur Auswahl von Keyframes für das Auffinden von Bildinhalten mittels der Videobildfolgen mit den Verfahrensschritten:

• Shot-Detektion: zeitliche Segmentierung des Videos in einzelne Shots, wobei jeder Shot jeweils eine Sequenz aufeinander folgender Videobilder umfasst, die mit einer Kameraeinstellung ohne Unterbrechung aufgenommen wurden,

• Subshot-Detektion: zeitliche Segmentierung jedes Shots in einzelne Subshots, wobei

> jeder Subshot nur maximal ein Ereignis in maximal einer Umgebung enthält und innerhalb von Shots auftretende Grenzen einer Szene, die ein Ereignis in einer kontinuierlichen Zeitperiode und einer kontinuierlichen Umgebung zeigt, gleichzeitig Subshot- Grenzen sind, > jeder Subshot jeweils eine Sequenz aufeinander folgender Videobilder des Shots umfasst, die nur eine geringe Veränderung im Bildinhalt zeigt, und wobei

> als Maß für eine geringe Veränderung die Differenz einfacher Bildeigenschaften verschiedener Videobilder im Shot analysiert und ausgewertet wird, und

• Keyframe-Selektion: Zuordnung von genau einem den Bildinhalt des Subshots repräsentierenden Keyframe zu jedem Subshot.

Dabei kann bei dem Verfahren beispielsweise

die Shot- und die Subshot-Detektion zeitgleich durchgeführt werden,

bei Auftreten von graduellen übergängen am Anfang oder am Ende eines Shots in diesen Bereichen keine Subshot-Detektion durchgeführt werden,

die Färb- oder Kantenverteilung einfache messbare Bildeigenschaften eines Videobildes sein,

die messbare Bildeigenschaft ein Histogramm mit k Balken sein, wobei die Distanzfunktion für die Histogramme der Videobilder F und F' definiert ist als

1 * d = 1 Ymia(H(F,i),H(F\i)) mit pc = Anzahl der für die Histogramm-

PC M

Erstellung genutzten Pixel, i = Laufindex, k = Anzahl der Balken, H(F,i) = iter Balken des Histogramms von Videobild F (Anzahl der Pixel mit Farbwert im iten Bereich) und min = Minimum,

die Subshot-Detektion mit einem Schwellwert-Algorithmus, einem Cluster- Algorithmus und/oder einem Bewegungs-Algorithmus durchgeführt werden, wobei durch die darin angegebenen Schwellwerte, Grenzwerte oder tolerierbaren Fehler das Maß für die zugelassenen geringe Veränderung die Differenz einfacher Bildeigenschaften aufeinanderfolgender Videobilder festgelegt wird,

ein Schwellwert-Algorithmus durchgeführt werden mit den Schritten 1) Approximierung des Bildinhalts eines Videobilds durch eine messbare Bildeigenschaft, 2) Berechnung der Veränderung des Bildinhalts mittels einer Distanzfunktion für die messbaren Bildeigenschaften zweier Videobilder F und F', wobei F das erste Videobild eines Subshots ist und F' ein schrittweise von F immer um ein Bild weiter entferntes Videobild bezeichnet und 3) Setzen einer Subshot-Grenze bei Erreichen eines vorgegebenen Schwellwertes für die Distanz bei mehreren aufeinander folgenden Videobildern F', wobei die Grenze vor dem ersten dieser Videobilder gesetzt wird, wobei der Schwellwert beispielsweise mit 0,3 vorgegeben sein kann,

ein k-means-Cluster-Algorithmus durchgeführt werden mit den Schritten 1 ) Approximierung des Bildinhalts eines Videobilds durch eine messbare

Bildeigenschaft, 2) Ermittlung von Clusterkennzeichnungen basierend auf den

messbaren Bildeigenschaften für die Bilder eines Shots ohne Berücksichtigung der zeitlichen Zuordnung der Videobilder mittels 2a) Setzen der Anzahl der Cluster auf 1 , 2b) Ausführen des k-means-Algorithmus und 2c) überprüfung des resultierenden Clusterfehlers mit , falls dieser größer als ein vorgegebener Schwellwert ist, Erhöhen der Anzahl der Cluster um 1 und Fortführung bei Schritt 2b, und, falls dieser kleiner als ein vorgegebener Schwellwert ist, Weitermachen mit dem nächsten Verfahrensschritt 3, 3) Zuordnung der ermittelten Cluster-Kennzeichnungen zu Videobildern in ihrer zeitlichen Reihenfolge, 4) Durchführung einer Mehrheitsfilterung: eine minderheitliche Cluster-Kennzeichnung für ein Videobild i wird in die mehrheitliche Cluster- Kennzeichnung derjenigen Videobilder überführt, die um x Videobilder vor und hinter dem Videobild i liegen, 5) Durchführung einer Zeitfilterung in Abhängigkeit einer vorgegeben Anzahl k von Videobildern in einem Subshot: weniger als k Videobilder mit derselben Cluster-Kennzeichnung werden der Cluster-Kennzeichnung der davor oder dahinter liegenden Videobilder mit der größeren mittleren ähnlichkeit zugeordnet, wobei die ähnlichkeit mit Hilfe einer Distanzfunktion für die messbaren Bildeigenschaften der Videobilder ermittelt wird, und 6) Markierung jedes Wechsels in der Cluster-Kennzeichnung in der zeitlichen Reihenfolge der Videobilder als Subshot-Grenze, wobei zum Beispiel die messbare Bildeigenschaft ein Histogramm mit i Balken sein kann und die Balken vor Ausführung des k-means-Algorithmus normalisiert werden können, sodass die Summe über alle i Balken 1 ergibt und die messbare Bildeigenschaft als i-dimensionaler Vektor im Euklidischen Raum interpretierbar ist,

ein maximal tolerierbaren Clusterfehler nach der Clusterung von 0,1 vorgegeben werden,

zumindest 10 Videobilder in einem Subshot liegen,

ein Bewegungs-Algorithmus durchgeführt werden mit den Schritten 1 ) Bestimmung von Bewegungsvektoren v(ij) für Pixelblöcke vorgegebener

Größe, 2) Ausfilterung von Bewegungsvektoren v(i,j) von Pixelblöcken mit einer Intensitätsänderung der Pixel unterhalb eines vorgegebenen Grenzwertes, 3) Berechnung von auf die aktuelle Bildgröße (Breite, Höhe) normierten Verlagerungen für horizontale und vertikale Bewegung sowie für Zoom gemäß

D 1 mit D h = horizontale Verlagerung, D v = vertikale Verlagerung, D z = Verlagerung durch Zoom, i,j = Blockindizes, m(i, j) = Matrix = mit 1 für eine Intensitätsvarianz der Pixel im Block oberhalb des vorgegebenen Grenzwertes und mit 0 für eine Intensitätsvarianz der Pixel im Block unterhalb des vorgegebenen Grenzwertes, |v(/,/)| = Länge des

Bewegungsvektors v(i,j) mit 1 für jeden Block mit zumindest einem Bewegungsvektor und mit 0 für jeden Block außerhalb der betrachteten Reihen und Spalten sowie in der Zoommitte, und „•" =Skalarprodukt, 4) Filterung der drei richtungsabhängigen Verlagerungen Dh, D v und D z in einem vorgegebenen Zeitrahmen vor und nach dem mittleren Bewegungsvektor des aktuellen Videobildes zur Ausfilterung von hochfrequentem Rauschen gemäß

D di r m (0 eine der drei Bewegungsrichtungen (h- horizontal, v-vertikal, z-Zoom), k = Anzahl der Verlagerungswerte vor und hinter dem Verlagerungswert des aktuell betrachteten Bildpaares, i = Nummer aktuell des betrachteten Bildpaares und j = Laufindex, 5) Berechnung der Gesamtverlagerung D zwischen zwei benachbarten Videobildern gemäß D = |Dh,flit| + |Dv,fiit| +s*|Dz,fii t | mit s = Skalierungsfaktor für den Zoom, 6)

Bildung und überprüfung der Summe σ D aller Gesamtverlagerungen zwischen allen Paaren von zeitlich aufeinander folgenden Videobildem in einem Shot: - liegt sie unterhalb eines vorgegebenen Grenzwertes thd, wird der Shot nicht in Subshots unterteilt, - liegt sie oberhalb des Grenzwertes thd, wird

der Shot in Subshots unterteilt, und 7) bei einer überschreitung des Grenzwertes th d : 7a) Berechnung der Anzahl #ssb der Subshots in diesem Shot gemäß #ssb = σ D / th d mit σ D = Summe aller Gesamtverlagerungen D in einem Shot und 7b) gleichmäßige Aufteilung des Shots in die entsprechende Anzahl von Subshots, sodass in jedem Subshot die Summe der Gesamtverlagerungen D möglichst gleich groß sind, wobei beispielsweise der Grenzwert thd = 0,5 und der Skalierungsfaktor s = 1 betragen und/oder die Anzahl k der Verlagerungswerte der halben Bildwiederholrate entspricht, und /oder

bei der Keyframe-Selektion ein beliebiges oder das mittlere Videobild aus jedem ermittelten Subshot als den Bildinhalt des Subshots repräsentierendes Keyframe ausgewählt werden.