-
TECHNISCHER BEREICH DER
ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich im Allgemeinen auf Videoverarbeitungsssysteme
und insbesondere auf ein System zum Analysieren und Charakterisieren
eines Videostromes auf Basis von Textattribute, die in dem Inhalt
des Videos detektiert wurden.
-
HINTERGRUND DER ERFINDUNG
-
Die
Erwartung von Digitalfernsehen (DTV), die wachsende Beliebtheit
vom Internet und die Einführung
von Multimedia-Unterhaltungselektronik, wie CD- und DVD-Spielern, haben den
Konsumenten riesige Mengen Multimediainformation zur Verfügung gestellt.
Da Videoinhalt einfach verfügbar
wird und Produkte zum Zugreifen darauf den Konsumentenmarkt erreichen,
wird das Ermitteln, das Indizieren und Identifizieren großer Mengen
von Multimediadaten eine noch größere Aufforderung
und noch wichtiger.
-
Systeme
und Verfahren zum Indizieren und Klassifizieren von Video wurden
bereits in vielen Veröffentlichungen
beschrieben, u. a.: von M. Abdel-Mottaleb u. a. in: "CONIVAS: Content-based Image
and Video Access System", "Proceedings of ACM
Multimedia", Seiten
427–428,
Boston (1996); S-F. Chang u. a. in: "VideoQ: An Automated Content Based Video
Search System Using Visual Cues", "Proceedings of an
ACM Multimedia, Seiten 313–324,
Seattle (1994); M. Christel u. a. in: "Informedia Digital Video Library", "Comm. Of the ACM", Heft 38, Nr. 4,
Seiten 57–58
(1995); N. Dimitrova u. a. in: "Video
Content Management in Consumer Devices", "IEEE
Transaction on Knowledge and Data Engineering" (Nov. 1998); U. Gargi u. a. in: "Indexing Text Events
in Digital Video Databases", "International Conference
ob Pattern Recognition",
Brisbane, Seiten 916–918
(Aug. 1998); M.K. Mandal u. a. in: "Image Indexing Using Moments and Wavelets", "IEEE Transactions
on Consumer Electronics",
Heft 42, Nr. 3 (Aug. 1996); und S. Pfeiffer u. a. in: "Abstracting Digital
Moves Automatically", "Journal on Visual
Communications and Image Representation", Heft 7, Nr. 4, Seiten 345–353 (1996).
-
Die
Detektion von Werbesendungen in einem Videostrom ist ebenfalls ein
aktives Forschungsgebiet. Siehe R. Lienhart u. a. in: "On the detection and
Recognition of Television Commercials", "Proceedings
of IEEE International Conference on Multimedia Computing and Systems", Seiten 509–516 (1997);
und T. McGee u. a. in: "Parsing
TV Programs for Identification and Removal of Non-Story-Segments", "SPIE Conference on
Storage and Retrieval in Image and Video Databases", San Jose (Jan. 1999).
-
Texterkennung
in Dokumentbildern ist durchaus bekannt. Dokumentabtastanordnungen
und assoziierte OCR-Software ("optical
character recognition")
sind durchaus verfügbar
und gut bekannt. Detektion und Erkennung aber von Text in Videoframes bringt
einzigartige Probleme mit sich und erfordert eine ganz andere Annäherung als
Text in gedruckten Dokumenten. Text in gedruckten Dokumenten beschränkt sich
meisten auf einfarbige Zeichen auf einem einheitlichen Hintergrund
(blankes Papier) und erfordert im Allgemeinen einen einfachen Schwellenalgorithmus
um den Text von dem Hintergrund zu trennen. Durch Kontrast fehlt
es Zeichen in den herunter skalierten Videobildern an einer Varietät an Rauschanteilen,
einschließlich
nicht gesteuerter Beleuchtungsumstände. Auch verlagert sich oft
der Hintergrund und Textzeichen können von verschiedenen Farbe,
Größe und Zeichensatz
sein.
-
Die
Extraktion von Zeichen durch örtlicher Schwellenbehandlung
und die Detektion von Bildgebieten mit Zeichen durch Bewertung von
Graupegelunterschieden zwischen benachbarten Gebieten ist beschrieben
worden, und zwar in: "Recognizing
Characters in Scene Images" von
Ohya u. a. in "IEEE Transaction
on Pattern Analysis and Machine Intelligence", Heft 16, Seiten 214–224, (Feb.
1994). Ohya u. a. beschreibt weiterhin die Vermischung detektierter
Gebiete mit nahe liegenden und ähnlichen
Graupegeln um Zeichenmusterkandidaten zu erzeugen.
-
Die
Verwendung des räumlichen
Kontextes und Zeichen von Videotext mit hohem Kontrast zum Vermischen
von Gebieten mit horizontalen und vertikalen Rändern in nächster Nähe von einander zum Detektieren
von Text, wurde beschrieben in: "Text, Speech
and Vision for Video Segmentation: The Information Project" von A. Hauptmann
u. a. in "AAAI Fall
1995" Symposium
on Computational Models for Integrating Language and Vision (1995).
R. Lienhart und F. Suber beschreiben ein nicht lineares rotes, grünes und
blaues (RGB) Farbsystem zum Reduzieren der Anzahl Farben in einem
Videobild in: "Automatic
Text Recognition for Video Indexing", "SPIE Conference
on image and Video Processing" (Jan. 1996).
Ein darauf folgender Spalt-und-Vermischungsprozess erzeugt homogene
Segmente mit derselben Farbe. Lienhart und Suber benutzen mehrere
heuristische Verfahren zum Detektieren von Zeichen in homogenen
Gebieten, einschließlich
Vordergrundzeichen, monochromer oder starrer Zeichen, in der Größe begrenzter
Zeichen, und Zeichen mit einem hohen Kontrast im vergleich zu umliegenden Gebieten.
-
Die
Anwendung von mehrfach bewerteter Bilddekomposition zum Orten von
text und zum Trennen von Bildern in viele echte Vordergrund- und
Hintergrundbilder ist beschrieben worden in: "Automatic Text Location in Images and
Video Frames" von
A.K. Jain und B. Yu, in: "Proceedings
of IEEE Pattern Recognition",
Seiten 2055–2076,
Heft 31 (12. Nov. 1998). J-C.Shim u. a. beschreibt die Anwendung
eines allgemeinen Gebietsbezeichnungsalgorithmus zum Finden homogener
Gebiete und zum Segmentieren und Extrahieren von text in: "Automatic Text Extraction
from Video for Content-Based Annotation and Retrieval", "Proceedings of the
International Conference on Pattern Recognition", Seiten 618–620 (1998). Identifizierte
Vordergrundbilder werden geclustert, um die Farbe und die Stelle
von Text zu ermitteln.
-
Andere
nützliche
Algorithmen zur Zeichensegmentierung sind von K.V. Mardia u. a.
in: "A Spatial Thresholding
Method for Image Segmentation", "IEEE Transactions
on Pattern Analysis and Machine Intelligence" Heft 10, Seiten 919–927 (1988), und von A. Perex
u. a. in: "An Iterative
Thresholding Method for Image Segmentation", "IEEE
Transactions on Pattern Analysis and Machine Intelligence", Heft 9, Seiten
742–751
(1987) beschrieben worden.
-
Der
Artikel: "Visual
Content Highlighting Videoinformationssignal Automatic Extraction
of Embedded Captions on MPEG Compressed Video", B-L. Yeo, B. Liu, "Proceedings of the SOIE", Heft 2668, Seiten
38–47
beschreibt die Identifikation von Beschriftungen zum Analysieren
des Textinhaltes der Beschriftungen.
-
Der
Stand der Technik in Texterkennungssystemen berücksichtigt aber nicht die nicht-semantischen
Attribute von Text, detektiert in dem Inhalt des Videos. Die bekannten
Systeme identifizieren einfach den semantischen Inhalt des Bildtextes
und indizieren die Videoclips auf Basis des semantischen Inhaltes.
Andere Attribute des Bildtextes, wie eine physikalische Lage in
dem Frame, Dauer, Verlagerung und/oder zeitliche Lage in einem Programm
werden verneint. Außerdem
ist kein Versuch angestellt, Videoinhalt zum Identifizieren und
Editieren von Videoclips anzuwenden.
-
Deswegen
gibt es ein Bedürfnis
in dem betreffenden technischen Bereich nach besseren Videoverarbeitungssystemen,
die einem Benutzer die Möglichkeit
bieten, ein Archiv mit Videoclips zu durchstöbern und alle Videoclips oder
Teile davon zu speichern und/oder zu editieren, die Bildtextattribute enthalten,
die mit Bildtextattributen, die von einem Benutzer selektiert wurden, übereinstimmen.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Um
die oben genannten Mängel
des Standes der Technik zu beseitigen beschreibt die vorliegende Erfindung
eine Videoverarbeitungsanordnung zum Ermitteln oder Filtern von
Videoströmen
auf ein oder mehrere durch den Benutzer selektierte Bildtextattribute.
Im Allgemeinen betrifft "Ermitteln" von Videoströmen das
Ermitteln in Reaktion auf Eingaben durch den Benutzer definiert,
während "Filtern" sich im Allgemeinen
auf einen automatisierten Prozess bezieht, der nur wenig oder kaum
Eingaben durch den Benutzer erfordert. Aber in der Beschreibung können "Ermitteln" und "Filtern" austauschbar verwendet
werden. Ein Bildprozessor detektiert und Extrahiert Bildtext aus
Frames in Videoclips, bestimmt die relevanten Attribute des extrahierten
Bildtextes und vergleicht die extrahierten Bildtextattribute mit den
vom Benutzer selektierten Bildtextattributen. Wenn es eine Übereinstimmung
gibt, kann die Videoverarbeitungsanordnung wenigstens einen Teil
des Videostroms entsprechend Benutzerbefehlen modifizieren, übertragen,
markieren oder auf andere Art und Weise identifizieren. Die Videoverarbeitungsanordnung
benutzt die vom Benutzer selektierten Bildtextattribute zum Durchstöbern eines
Archivs mit Videoclips um Folgendes zu erzielen:
- 1)
das Ermitteln bestimmter Ereignistypen, wie Nachrichtenprogramme
oder Sportereignisse,
- 2) das Ermitteln von Programmen, die sich um bestimmte Personen
oder Gruppen handeln,
- 3) das Ermitteln von Programmen auf Namen,
- 4) das Speichern oder Entfernen von allen oder einigen Werbesendungen
und auf andere Art und Weise das Sortieren, Editieren und Speichern
aller Videoclips oder eines Teils derselben entsprechend Bildtext,
der in den Frames der Videoclips auftritt.
-
Es
ist daher u. a. eine Hauptaufgabe der vorliegenden Erfindung, zur
Anwendung in einem System, das imstande ist, Bildtext in Videoframes
zu analysieren, eine Videoverarbeitungsanordnung zu schaffen, die
imstande ist, in Reaktion auf den Empfang wenigstens eines selektierten
Bildtextattributs Videoströme
zu ermitteln und/oder zu filtern. In einem Ausführungsbeispiel umfasst die
Videoverarbeitungsanordnung einen Bildprozes sor, der imstande ist,
einen ersten Videostrom mit einer Anzahl Videoframes zu empfangen,
Bildtext aus den vielen Videoframes zu detektieren und zu extrahieren,
wenigstens ein Attribut des extrahierten Bildtextes zu ermitteln, das
wenigstens eine extrahierte Bildtextattribut mit dem wenigstens
einen selektierten Bildtextattribut zu vergleichen und, in Reaktion
auf eine Übereinstimmung
zwischen dem wenigstens einen extrahierten Bildtextattribut und
dem wenigstens einen selektierten Bildtextattribut wenigstens einen
der nachfolgenden Vorgänge
durchzuführen:
- 1) das Modifizieren wenigstens eines Teils
des ersten Videostromes entsprechend einem ersten Benutzerbefehl;
- 2) das Übertragen
wenigstens eines Teils des ersten Videostromes entsprechend einem
zweiten Benutzerbefehl, und
- 3) das Markieren wenigstens eines Teils des ersten Videostroms
entsprechend einem dritten Benutzerbefehl.
-
Nach
einem Ausführungsbeispiel
der vorliegenden Erfindung gibt das wenigstens eine extrahierte
Bildtextattribut an, dass der Bildtext in den vielen Videoframes
eine der nachfolgenden Erscheinungen aufweist: horizontales Rollen,
vertikales Rollen, Schwund, Spezialeffekte und Animationseffekte.
-
Nach
einer Ausführungsform
der vorliegenden Erfindung gibt das wenigstens eine extrahierte Bildtextattribut
an, dass der Bildtext in den vielen Videoframes ein Name einer Person
oder ein Name einer Gruppe ist.
-
Nach
einer anderen Ausführungsform
der vorliegenden Erfindung gibt das wenigstens eine extrahierte
Bildtextattribut an, dass der Bildtext in den vielen Videoframes
ein Teil einer Werbeanzeige ist.
-
Nach
noch einer anderen Ausführungsform der
vorliegenden Erfindung gibt das wenigstens eine extrahierte Bildtextattribut
an, dass der Bildtext in den vielen Videoframes Text ist, der am
Start eines Programms oder am Ende eines Programms erscheint.
-
Nach
wieder einer anderen Ausführungsform der
vorliegenden Erfindung gibt das wenigstens eine extrahierte Bildtextattribut
an, dass der Bildtext in den vielen Videoframes ein Teil des Programmnamens ist.
-
Nach
einer anderen weiteren Ausführungsform
der vorliegenden Erfindung gibt das wenigstens eine extrahierte
Bildtextattribut an, dass der Bildtext in den vielen Videoframes
ein teil eines Nachrichtenprogramms ist.
-
Nach
noch einer anderen weiteren Ausführungsform
der vorliegenden Erfindung gibt das wenigstens eine extrahierte
Bildtextattribut an, dass der Bildtext in den vielen Videoframes
ein Teil eines Sportprogramms ist.
-
Obenstehendes
hat die Merkmale und die technischen Vorteile der vorliegenden Erfindung ziemlich
breit beschrieben, so dass der Fachmann die nachfolgende detaillierte
Beschreibung der vorliegenden Erfindung besser verstehen dürfte. Zusätzliche
Merkmale und Vorteile der vorliegenden Erfindung werden nachstehend
beschrieben und bilden Gegenstand der Patentansprüche der
vorliegenden Erfindung. Es dürfte
dem Fachmann einleuchten, dass man das Konzept und die beschriebene
spezifische Ausführungsform
als Basis zum Modifizieren oder Entwerfen anderer Strukturen zum
Durchführen derselben
Zwecke der vorliegenden Erfindung benutzen können.
-
Vor
der Behandlung der DETAILLIERTEN BESCHREIBUNG kann es vorteilhaft
sein, Definitionen bestimmter Wörter
und Phrasen zu beschreiben, die in diesem Patentdokument verwendet
werden: die Ausdrücke "enthalten" und "umfassen" sowie die Herleitungen
davon bedeuten unbegrenztes aufweisen; der Ausdruck "oder" ist einschließlich, was
bedeutet und/oder; die Phrasen "assoziiert
mit" und "damit assoziiert" sowie Herleitungen
davon, können
bedeuten: enthalten, enthalten sein in, verbunden sein mit, umfassen,
gekoppelt sein mit, verbindbar sein mit, zusammenarbeiten mit, in
der Nähe
sein von, begrenzt sein durch oder mit, haben, eine Eigenschaft aufweisen,
oder dergleichen; und der Ausdruck "Prozessor" oder "Controller" bedeuten jede Anordnung, jedes System
oder jeder Teil davon, die, das bzw. der wenigstens einen Vorgang
steuert, eine derartige Anordnung kann in Hardware, Firmware oder
Software oder aber in einer Kombination von wenigstens zwei derselben
implementiert werden. Es sei bemerkt, dass die mit einem bestimmten
Controller assoziierte Funktionalität zentralisiert oder verteilt
sein kann, ob örtlich
oder im Abstand. Außerdem
kann der Ausdruck "Videoclip" ein Videosegment,
eine Videosequenz, einen Videoinhalt oder dergleichen bedeuten. Definitionen
für bestimmte
Wörter
und Phrasen werden durch das ganze Patentdokument hindurch geprägt. Dem
Fachmann dürfte
es einleuchten, dass in vielen, wenn nicht allen Fällen derartige
Definitionen auf bestehenden sowie künftigen Gebrauch derart definierter
Wörter
und Phrasen angewandt werden können.
-
KURZE BESCHREIBUNG DER
ZEICHNUNG
-
Ausführungsbeispiele
der vorliegenden Erfindung sind in der Zeichnung dargestellt und
werden im Folgenden näher
beschrieben. Es zeigen:
-
1 ein
Beispiel eines Bildtextanalysensystems nach einer Ausführungsform
der vorliegenden Erfindung,
-
2 ein
Flussdiagramm zur Erläuterung
eines Textextraktions- und Texterkennungsvorgangs eines Ausführungsbeispiels
einer Videoverarbeitungsanordnung in 1,
-
3A und 3B eine
Darstellung von Videoframes, die Bildtext mit selektierten Attributen enthalten,
die von einer Videoverarbeitungsanordnung nach 1 identifiziert
werden können,
-
4 eine
Darstellung eines Ausführungsbeispiels
einer Bildtextattributtabelle mit systemdefinierten und benutzerdefinierten
Bildtextattributen nach einer Ausführungsform der vorliegenden
Erfindung, und
-
5 ein
Flussdiagramm zur Erläuterung
eines Bildtextattributanalysenvorgangs der Videoverarbeitungsanordnung
nach 1 nach einer Ausführungsform der vorliegenden
Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
Die
nachstehend beschriebenen 1 bis 5 und
die jeweiligen Ausführungsformen,
die zum Beschreiben der Grundlagen der vorliegenden Erfindung in
diesem Patentdokument verwendet werden, dienen nur zur Erläuterung
und sollen keineswegs als den Rahmen der vorliegenden Erfindung beschränkend betrachtet
werden. Dem Fachmann dürfte
es einleuchten, dass die Grundlagen der vorliegenden Erfindung in
jedem beliebigen auf geeignete Art und Weise ausgebildeten Bildtextanalysensystem
implementiert werden können.
-
1 zeigt
ein Ausführungsbeispiel
eines Bildtextanalysensystems 100 nach einer Ausführungsform
der vorliegenden Erfindung. Das Bildtextanalysensystem 100 umfasst
eine Videoverarbeitungsanordnung 110, eine Videoquelle 180,
einen Monitor 185 und Benutzeranordnungen 190.
Die Videoverarbeitungsanordnung 110 schafft Mittel zum Analysieren
empfangener Videobilder. Dies umfasst das Ausführen des Prozesses der vor liegenden
Erfindung, wodurch Videotext extrahiert, analysiert und kategorisiert
wird, und zwar auf Basis von system- oder benutzerdefinierten Textattributen.
-
Die
Videoquelle 180 schafft ein Archiv von Videoclips zum Ermitteln
mit Hilfe der Videoverarbeitungsanordnung 110. Die Videoquelle 180 kann
eine Antenne, ein Videobandgerät,
ein digitaler Videoplattenspieler/Recorder (DVD-Spieler/Recorder),
ein Videoplattenspieler/Recorder oder eine ähnliche Anordnung sein, die
imstande ist, digitalisierte Videobilder mit oder ohne Audio zu
speichern und zu übertragen.
Die Videoquelle 180 kann imstande sein, einige kurze Clips
oder viele Clips mit digitalisierten Videobildern größerer Länge zu schaffen.
Die Videoquelle 180 kann Videodaten in jedem bekannten
analogen oder digitalen Format, wie MPEG-2, MJPEG und dergleichen
liefern.
-
Der
Monitor 185 schafft Mittel zum Wiedergeben von Videobildern
und kann für
Audio ausgebildet sein, je nachdem dies erforderlich ist. Die Benutzeranordnungen) 190 stell(t)en
eine oder mehrere Peripheriegeräte
dar, die von dem Benutzer des Bildtextanalysensystem 100 manipuliert
werden können um
dem System mit Benutzereingaben zu versehen. Typische periphere
Benutzereingabeanordnungen umfassen eine Computermaus, ein Tastenfeld,
einen Leuchtstift, einen Joystick, eine Berührungstafel und einen assoziierten
Stift, und/oder jede andere beliebige Anordnung, die selektiv verwendet
werden kann um Daten einzugeben, zu selektieren und/oder zu manipulieren,
einschließlich
aller wiedergegebenen Videobilder oder teile davon. Die Benutzeranordnung 190 kann
imstande sein die gewünschten
Videotextidentifikationsattribute zum Eingeben in die Videoverarbeitungsanordnung 110 zu
selektieren. Die Benutzeranordnung 190 kann auch Ausgangsanordnungen,
wie einen Farbdrucker, enthalten, der eine "Hardcopy" eines bestimmten Bildes, eines Frames oder
eines Videoclips reproduziert.
-
Die
Videoverarbeitungsanordnung 110 umfasst den Bildprozessor 120,
den RAM 130, den Speicher 140, die Benutzer I/O
Karte 150, die Videokarte 160, den I/O Puffer 170 und
den Prozessorbus 175. Der Prozessorbus 175 überträgt Daten
zwischen den jeweiligen Elementen der Videoverarbeitungsanordnung 110.
Der RAM 130 umfasst weiterhin Bildtextarbeitsraum 132 und
einen Textanalysencontroller 134.
-
Der
Bildprozessor 120 schafft eine Gesamtsteuerung für die Videoverarbeitungsanordnung 110 und
führt die
Bildverarbeitung durch, die für
das Bildtextanalysensystem 100 erforderlich ist, einschließlich der
Analyse des Textes in Videoframes, und zwar auf Basis von systemselektierten
und benutzerselektierten Attributen. Dies umfasst auch das Implementieren
von Editierungsprozessen, das Verarbeiten digitalisierter Videobilder
zur Wiedergabe an einem Monitor 185 und/oder zur Speicherung
in einem Speicher 140, und das Übertragen von Daten zwischen den
jeweiligen Elementen des Bildtextanalysensystems 100. Die
Anforderungen und die Fähigkeiten
für einen
Bildprozessor 120 sind in dem betreffenden technischen
Bereich durchaus bekannt und brauch in diesem Zusammenhang nicht
detailliert beschrieben zu werden, anders als für die vorliegende Erfindung erforderlich.
-
Der
RAM 130 schafft einen Speicher mit beliebigem Zugriff zur
vorübergehenden
Speicherung von Daten, die von der Videoverarbeitungsanordnung 110 geschaffen
werden, die nicht auf andere Art und Weise von Elementen innerhalb
des Systems geliefert werden. Der RAM 130 umfasst einen
Speicher für
Bildtextarbeitsraum 132 und einen Textanalysencontroller 134,
sowie einen anderen Speicher, erforderlich für den Bildprozessor 120 und
assoziierte Anordnungen. Der Bildtextarbeitsraum 132 stellt den
Teil des RAMs 130 dar, in dem Videobilder, assoziiert mit
einem bestimmten Videoclip, während
des Textanalysenprozesses vorübergehend
gespeichert werden. Der Bildtextarbeitsraum 132 schafft
Mittel zum Modifizieren von Frames innerhalb eines Clips ohne Beeinflussung
der ursprünglichen
Daten, so dass die ursprünglichen
Daten nachher wiederhergestellt werden können.
-
In
einer Ausführungsform
der vorliegenden Erfindung stellt der Textanalysencontroller 134 den Teil
des RAMs 130 dar, der der Speicherung eines Applikationsprogramms
zugeordnet ist, durchgeführt durch
den Bildprozessor 120, der die Analyse von Videobildern
auf Basis von system- oder benutzerdefinierten Textattributen durchführt. Der
Textanalysencontroller 134 führt durchaus bekannte Editiertechniken
durch, wie Verwandlung oder Randdetektion zwischen Szenen, sowie
die neuen Techniken für
Videoanalyse, assoziiert mit der vorliegenden Erfindung. Der Editiercontroller 134 kann
auch als ein Programm auf einer CD-ROM, einer Computerdiskette, oder
auf einem anderen Speichermedium ausgebildet sein, das in einen
entfernbaren Diskportierungsspeicher 140 oder sonst wo,
wie in der Videoquelle 180 geladen werden kann.
-
Der
Speicher 140 umfasst ein oder mehrere Disk-Systeme mit
entfernbaren Disks (magnetisch oder optisch) zur Dauerspeicherung
von Programmen und anderen Daten, mit erforderlichen Video- und
Audiodaten. Je nach den Systemanforderungen ist der Speicher 140 ausgebildet
zum Verbinden mit einem oder mehreren bidirektionalen Bussen zur Übertragung
von Video- und Audiodaten zu und von der (den) Videoquelle(n) 180,
sowie von dem Rest des Systems. Der Speicher 140 ist imstande,
Daten mit Videorate zu übertragen,
falls erforderlich. Der Speicher 140 ist derart bemessen,
dass er entsprechenden Speicherraum bietet für mehrere Minuten Video für Editierzwecke,
einschließlich
Textattributanalyse. Je nach spezifischen Applikationen und der Fähigkeit
des Bildprozessors 120 kann der Speicher 140 derart
ausgebildet werden, dass er die Fähigkeit hat, eine Vielzahl
Videoclips zu speichern.
-
Die
Benutzer I/O Karte 150 schafft Mittel zum Verbinden von
Benutzeranordnungen) 190 mit dem Rest des Bildtextanalysensystems 100.
Die Benutzer I/O Karte 150 verwandelt Daten, die von Benutzeranordnungen 190 empfangen
worden sind, in das Format des Schnittstellenbusses 175 zur Übertragung zu
dem Bildprozessor 120 oder zu dem RAM 130 zum
nachfolgenden Zugriff durch den Bildprozessor 120. Die
Benutzer I/O Karte 150 überträgt ebenfalls Daten
zu den Benutzerausgangsanordnungen, wie Druckern. Die Videokarte 160 schafft
eine Schnittstelle zwischen dem Monitor 185 und dem Rest
der Videoverarbeitungsanordnung 110 über den Datenbus 175.
-
Der
I/O Puffer 170 schafft eine Schnittstelle zwischen der
Videoquelle 180 und dem Rest des Bildtextanalysensystems 100 über den
Bus 175. Wie oben beschrieben, hat die Videoquelle 180 wenigstens
einen bidirektionalen Bus zur Verbindung mit dem I/O Puffer 170.
Der I/O Puffer 170 überträgt Daten
zu/von der Videoquelle 180 mit der erforderlichen Videobildübertragungsrate.
Innerhalb der Videoverarbeitungsanordnung 110 überträgt der I/O
Puffer 170 Daten, die von der Videoquelle 180 empfangen worden
sind, zu dem Speicher 140, zu dem Bildprozessor 120,
oder zu dem RAM 130, wie erforderlich. Gleichzeitige Übertragung
von Videodaten zu dem Bildprozessor 120 schaffen Mittel
zum Wiedergeben von Videobildern, wenn diese empfangen werden.
-
2 zeigt
ein Flussdiagramm 200, das den Textextraktions- und Erkennungsvorgang
der Videoverarbeitungsanordnung 110 illustriert. Textextraktion erfolgt
an einzelnen Videoframes, wobei der Ursprung (0,0) des M × N Frames
als die obere linke Ecke bezeichnet wird. Pixel innerhalb der Frames werden
durch (x, y) Koordinaten bezeichnet, wobei x die Pixelspalte (0
durch N) und y die Pixelreihe (0 durch M) ist.
-
Kanaltrennung (Prozessschritt 205):
-
Zunächst trennt
der Bildprozessor 120 Farben von einem oder mehreren Frames
des Videobildes und speichert ein reduziertes Farbbild zur Verwendung
beim Extrahieren von Text. In einer Ausführungsform der vorliegenden
Erfindung benutzt der Bildprozessor 120 ein Rot-Grün-Blau (RGB)
Farbraummodell zum Isolieren des roten Bestandteils der Pixel. Der
rote Bestandteil ist nützlicher
zum detektieren von Weiß,
Gelb und schwarzen Farben, die für
Videotext vorwiegend verwendet werden. Das isolierte rote Frame
schafft scharfe, kontrastreiche Ränder für diese oft auftretenden Textfarben.
Das isolierte rote Framebild wird in dem Bildtextarbeitsspeicher 132 gespeichert.
In alternativen Ausführungsformen der
vorliegenden Erfindung kann der Bildprozessor 120 andere
Farbraummodelle, wie das Grauskalabild oder den Y-Anteil des YIQ-Videoframes.
-
Bildverbesserung (Prozessschritt 210):
-
Bevor
eine weitere Verarbeitung durchgeführt wird, wird das eingefangene
rote Frame verbessert, und zwar unter Verwendung einer 3 × 3 Maske, und
zwar wie folgt:
-
Außerdem werden
Salz und Pfeffer (beliebige) Rauschanteile unter Verwendung eines
Medianfilters, wie von R.C. Gonzalez und R.E. Woods in: "Digital Image Processing", "Addison-Wesley Publishing
Company, Inc." (1992),
entfernt.
-
Randdetektion (Prozessschritt 215):
-
Textzeichenränder in
dem verbesserten roten Bild werden durch Verwendung der nachfolgenden
Maske detektiert:
wobei die Nummern in der
Matrix die Gewichtungen des Randoperators darstellen.
-
Wenn
EDGE das M × N
Randbild darstellt, kann die nachfolgende Gleichung zur Randdetektion angewandt
werden:
wobei 0 < m < M
und 0 < n < N ist. Die Werte
w
ij sind die Gewichtungen aus der Randmaske
und F
x+i,y+j stellt ein Pixel des Bildes "F" dar. Die obere und die untere Pixelreihe
und die linke und rechte Pixelspalte (d.h. die äußersten Pixel) des Frames werden
in dem Randdetektionsprozess ignoriert.
-
Randschwelle
ist ein vorbestimmter Schwellenwert und kann fest oder variabel
sein. Die Verwendung einer festen Schwelle kann zu einem Haufen Salz
und Pfeffer-Rauschen,
was nachher entfernt werden soll. Auch die Verwendung einer festen Schwelle
kann dafür
sorgen, dass die festen Ränder um
den Text als unterbrochen und nicht verbunden erscheinen, was zu
einem offenen Zeichen führt.
Die Anwendung bekannter Öffnungsverfahren
(beispielsweise Erosion mit nachfolgender Erweiterung) führen dazu,
dass Textteile zusammen mit Salz und Pfefferstörungen verloren gehen. Deswegen
iat die Verwendung einer adaptiven Schwelle eine Verbesserung gegenüber der
Verwendung einer statischen Schwelle.
-
Wenn
für ein
Pixel einige oder alle Nachbarpixel als Ränder markiert sind, wird die
Schwelle für das
aktuelle Pixel verringert, damit diese als Rand markiert wird. Die
Schwelle für
das aktuelle Pixel kann je nach der Anzahl als Ränder markierter Nachbarpixel
verringert werden. Die Tatsache, dass Nachbarpixel Ränder sind,
steigert die Wahrscheinlichkeit, dass das aktuelle Pixel ein Rand
ist. Die niedrigere Randschwelle wird zum Berechnen der reduzierten Schwelle
für Nachbarpixel
verwendet. Dies gewährleistet,
dass Pixel nicht als Ränder
markiert werden, wenn sie keine Ränder sind. Der Prozess könnte in umgekehrter
Richtung durchgeführt
werden um ein Pixel als ein Rand zu markieren, wenn es von Randpixeln
umgeben wird.
-
Randfilterung (Prozessschritt 220):
-
Wenn
die Zeichenränder
einmal detektiert worden sind, führt
der Bildprozessor 120 eine vorbereitende Randfilterung
durch um Bildgebiete zu entfernen, die möglicherweise keinen Text enthalten oder,
in denen Text nicht auf zuverlässige
Art und Weise detektiert wird. Der Bildprozessor 120 kann Randfilterung
auf verschiedenen Pegeln durchführen.
So kann beispielsweise Randfilterung auf einem Framepegel und einem
Subframepegel durchgeführt werden.
-
Auf
dem Framepegel ignoriert der Bildprozessor 120 ein Frame
oder filtert es aus, wenn es sich herausstellt, dass mehr als ein
angemessener Teil des Frames aus Rändern besteht, was durch eine
hohe Dichte von Objekten in dem Frame verursacht werden kann. Wenn
ein Frame ausgefiltert wird, fährt
die Textanalyse zu dem nächsten
Eingangsframe fort. Wenn Filterung auf Framepegel durchgeführt wird,
behält
der Bildprozessor 120 einen Randzähler, damit ein Zählwert der
Anzahl Ränder
in dem Bildframe beibehalten wird. Dies aber kann zu einem Verlust
von Text in einigen sauberen Gebieten des Bildes führen und
kann zu falschen Negativen führen.
-
Um
dieses Problem zu überwinden
kann der Bildprozessor 120 Randfilterung auf einem Subframepegel
durchführen.
Um Text in einem "voll
gestopften" Frame
zu finden, verteilt der Bildprozessor 120 das Frame in
kleinere Gebiete oder Subframes. In einem Ausführungsbeispiel der vorliegenden
Erfindung verteilt der Bildprozessor 120 das Subframe in drei
Gruppen von Pixelspalten und drei Gruppen von Pixelreihen, was zu
einer Menge von sechs Subframes führt.
-
Der
Bildprozessor 120 beauftragt einen Subframezähler eine
Randzählung
für jeden
unterverteilten Teil des Bildes einzuhalten, was zu sechs Subframezählern führt. In
dem Ausführungsbeispiel
werden drei Zähler
für drei
vertikale Subframes (Spalten) des Bildes verwendet. Jedes vertikale
Subframe deckt ein Drittel des Gebietes des Frames. Auf gleiche
Weise werden drei Zähler
für drei
horizontale (Reihen) Subframes des Bildes verwendet. Auch hier deckt
jedes horizontale Subframe ein Drittel des Framegebietes.
-
Daraufhin
untersucht der Bildprozessor 120 jedes Subframegebiet um
die Anzahl Ränder
in dem Subframe zu ermitteln, wobei der assoziierte Zähler diese
Anzahl reflektiert. Eine größere Anzahl
Subframes kann angewandt werden um kleinere Subframegebiete zu schaffen,
um mehr Gebiete beizubehalten, die sauber sind und um Text in einem
Gebiet zu halten, das kleiner ist als ein Drittel eines Bildes.
-
Zeichendetektion (Prozesschritt 225):
-
Danach
führt der
Bildprozessor 120 eine CC-Analyse ("Connected-Component") an Rändern durch, die in dem vorhergehenden
Schritt erzeugt wurden. Es wird vorausgesetzt, dass jedes Textzeichen
eine verbundene Komponente oder ein Teil davon hat. Der Bildprozessor 120 mischt
Randpixel, die sich innerhalb eines bestimmten Abstandes voneinander
befinden (wie eine acht-Pixel-Nachbarschaft) zu einer einzigen CC- Struktur. Diese CC-Struktur enthält die Stelle
der Pixel, die miteinander verbunden sind. Diese Struktur enthält auch
de Wert (in Termen von x- und y-Achsen) des linksten, rechtesten, obersten
und untersten Pixels in der Struktur, zusammen mit der Stelle der
Mitte der Struktur.
-
Die
CC-Struktur enthält
auch den Zählwert der
Anzahl Pixel, welche die verbundene Komponente bilden. Der Pixelzählwert stellt
das Gebiet der betreffenden verbundenen Komponente dar. Vorbestimmte
System- und/oder Benutzerschwellen definieren die maximale und minimale
Grenze für
Gebiet, Höhe
und Breite der verbundenen Komponente um zu ermitteln, welche verbundenen
zu der nächsten Verarbeitungsstufe
weitergeleitet werden sollen. Verbundene Komponenten, die sich außerhalb
der Schwellenkriterien befinden, werden ausgefiltert.
-
Textkastendetektion (Prozessschritt 230):
-
Der
Bildprozessor 120 sortiert die verbundenen Komponenten,
welche die Kriterien in dem vorhergehenden Schritt in ansteigender
Reihenfolge auf Basis der Stelle des unteren linken Pixels weiterleiten.
Der Bildprozessor 120 sortiert auf Basis der (x, y) Koordinatenstelle,
welche die absolute Stelle eines Pixels darstellt, gegeben als die
y-fache Spaltengröße plus
x. Die sortierte Liste verbundener Komponenten wird durchquert und
die verbundenen Komponenten werden danach zusammen gemischt um Kästen mit
Text zu bilden.
-
Der
Bildprozessor 120 bezeichnet die erste verbundene Komponente,
die verbundene Komponente (1), als den ersten Kasten und
auch als den ersten oder aktuellen Kasten für Analyse. Der Bildprozessor 120 testet
jede nachfolgende verbundene Komponente (i) um zu sehen, ob das
unterste Pixel innerhalb einer vorbestimmten akzeptierbaren Pixelreihenschwelle
von dem untersten Pixel des aktuellen Textkastens liegt. Wenn die
verbundene Komponente (i) innerhalb einer Reihen (beispielsweise,
2 Reihen) des aktuellen Kastens liegt, gibt es eine gute Möglichkeit,
dass der aktuelle Textkasten und die verbundene Komponente (i) zu
derselben Textzeile gehören.
Die Reihenunterschiedsschwelle kann fest oder variabel sein, wie
erforderlich. So kann beispielsweise die Schwelle ein Bruchteil
der Höhe
des aktuellen Textkastens sein.
-
Um
ein Vermischen von verbundenen Komponenten, die durch einen zu großen Abstand
in dem Bild getrennt sind, zu vermeiden, wird ein zweiter test durchge führt, um
zu sehen, ob der Spaltenabstand zwischen der verbundenen Komponente
(i) und den Textkästen
kleiner ist als eine Spaltenschwelle. Diese variable Schwelle ist
ein Vielfaches der Breite der verbundenen Komponente (i). Der Bildprozessor 120 mischt
die verbundene Komponente (i) mit dem aktuellen Textkasten, wenn
der Textkasten und die verbundene Komponente (i) dicht beisammen
liegen. Wenn die verbundene Komponente (i) den Kriterien zum Vermischen
mit dem aktuellen Textkasten nicht entspricht, wird ein neuer Textkasten
mit der verbundenen Komponente (i) als erste Komponente gestartet
und die Durchquerung wird fortgesetzt. Dieser Prozess kann zu vielen
Textkästen
für eine
einzige Textzeile in dem Bild führen.
-
Der
Bildprozessor 120 führt
für jeden
der Textkästen,
die von dem Anfangszeichenmischprozess geschaffen wurden, einen
zweiten Mischpegel durch. Dies vermischt Textkästen, die irrtümlicherweise
als einzelne Textzeilen interpretiert sein könnten, entweder durch strikte
verbundene Komponentenvermischungskriterien, oder durch eine zu schlechte
Randdetektion, wodurch mehrere verbundene Komponenten für dasselbe
Zeichen resultieren.
-
Der
Bildprozessor 120 vergleicht jeden Kasten mit den Textkästen, die
folgen für
einen Satz von Bedingungen. Die vielen Testbedingungen für zwei Textkästen sind:
- a) Der Boden des einen Kastens liegt innerhalb der
Reihendifferenzschwelle des anderen. Auch der Abstand in der horizontalen
Richtung zwischen den zwei Kästen
ist kleiner als eine variable Schwelle auf Basis der mittleren Breite
von Zeichen in dem ersten Kasten.
- b) Die Mitte jedes der Kästen
liegt innerhalb des Gebietes des anderen Textkastens, oder
- c) die Textkästen überlappen
sich.
-
Wenn
eine der oben stehenden Bedingungen erfüllt wird, löscht der Bildprozessor 120 den zweiten
Kasten aus der Liste mit Textkästen
und vermischt diesen in den ersten Kasten. Der Bildprozessor 120 wiederholt
den Prozess, bis alle Textkästen untereinander
getestet und möglichst
miteinander kombiniert worden sind.
-
Textzeilendetektion und
Verbesserung (Prozessschritt 235):
-
Der
Bildprozessor 120 akzeptiert die Textkästen, erhalten aus dem Schritt 235 als
Textzeilen, wenn sie mit den Beschränkungen des Gebietes, der Breite
und der Höhe übereinstimmen.
Für jeden
der Textkästen
extrahiert der Bildprozessor 120 das Subbild entsprechend
dem Textkasten aus dem ursprünglichen
Bild. Der Bildprozessor 120 modifi ziert danach das extrahierte
Subbild, so dass der Text als schwarz mit einem weißen Hintergrund
in dem Vordergrund erscheint. Diese Modifikation ist erforderlich,
so dass das Ausgangssignal dieser Stufe mit Hilfe eines OCR-Applikationsprogramms
verarbeitet werden kann.
-
Der
Bildprozessor 120 modifiziert das Textkastenbild durch
Berechnung des mittleren Grauskalenwertes der Pixel in dem Textkasten
(AvgFG). Der mittlere Grauskalenwert eines Gebietes (beispielsweise
5 Pixel) um den Textkasten wird auch berechnet (AvgBG). Innerhalb
des Textkastens markiert der Bildprozessor 120 alles über AvgFG
als Weiß und markiert
alles unterhalb AvgFG als Schwarz. Der Mittelwert für die als
Weiß markierten
Pixel, Avg1, wird zusammen mit dem Mittelwert für die als Schwarz markierten
Pixel, Avg2.
-
Wenn
der Textkasten einmal in ein Schwarz und Weiß (binäres) Bild umgewandelt worden
ist, vergleicht der Bildprozessor 120 Avg1 und Avg2 mit AvgBG.
Das Gebiet, das einen Mittelwert hat, der näher bei AvgBG liegt, wird als
Hintergrund bezeichnet und das andere Gebiet wird als Vordergrund
(oder Text) bezeichnet . Wenn beispielsweise der Mittelwert des
schwarzen Gebietes näher
bei AvgBG liegt, wird das schwarze Gebiet in Weiß umgesetzt und umgekehrt.
Dies gewährleistet,
dass der Text immer in Schwarz ist und zur Eingabe in ein OCR-Programm
konsistent ist.
-
Der
Bildprozessor 120 speichert daraufhin den extrahierten
Frametext in Bildtextarbeitsraum 132 und der Prozess fährt mit
dem nächsten
Frame beim Prozessschritt 205 fort. Die Sequenz setzt sich fort,
bis Text von allen Frames des selektierten Videoclips extrahiert
worden ist. Wenn der Videobildtext einmal erkannt und extrahiert
worden ist, kann der Bildprozessor 120 weiterhin den extrahierten
Text auf Basis systemselektierter oder benutzerselektierter Textattribute
isolieren und analysieren. Videosequenzen oder Clips können auf
Basis des Textes, der sich in einem Frame oder einer Gruppe von
Frames ermittelt oder indiziert werden. So kann beispielsweise das Vorhandensein
des Wortes "Hotel" in einem Frame eine
hohe Wahrscheinlichkeit einer Hotelszene in dem aktuellen und nachfolgenden
Frames angeben. Das Vorhandensein von Straßennamen und Nummern gibt die
Möglichkeit
von Stadtszenen an. Identifikation von Werbetexten kann hilfsreich
sein beim Ermitteln von Frames mit Autobahnszenen.
-
Wiedergabeschirm
ist auch möglich,
Text zum Analysieren und Etikettieren bestimmter Videoframes zu
verwenden. So kann beispielsweise der Bildprozessor 120 ak tuelle
Nachrichten identifizieren und extrahieren, die als Teil eines bestimmten
Nachrichtenprogramms gesendet wurden oder von einem bestimmten Berichterstatter
gegeben wurden. Der Bildprozessor 120 kann dies dadurch
machen, das in einem Bildtext nach Stichwörtern wie "LIVE",
dem Programmnamen (beispielsweise "NEWS4 AT NITE") oder dem Namen des Berichterstatters
(beispielsweise "Carol
Jones") gesucht
wird.
-
Durch
Erkennung des Textkastens kann der Bildprozessor 120 Videoframes
und Clips indizieren, und zwar auf Basis des Namens des Programms, des
Gastgebers, des Produzenten, des Regisseurs, oder eines beliebigen
anderen Namens. Dies umfasst die Identifikation und die Klassifizierung
von Bildern of Basis der Namen von Musikgruppen (beispielsweise
MTV und VH-1 Videoclips), Talk Show-Gastgebern oder Gästen, usw.
Weiterhin können
Sportprogramme ermittelt werden durch Extraktion von Kastenergebnissen,
die oft am Schirm erscheinen. So kann beispielsweise der Bildprozessor 120 nach
Ergebnissen, Mannschaftsnamen, Spielernamen und dergleichen suchen.
Börseninformation kann
extrahiert und indiziert werden. Wetterinformation kann auch extrahiert
und indiziert werden, und zwar auf Basis der am Schirm vorhandenen
Textinformation.
-
Der
laufende "Ticker", der bei Spielen,
Talk Shows, Nachrichten und dergleichen läuft, kann durch Untersuchung
von Bildtext in Bezug auf selektierte Attribute erkannt werden.
Schirmticker liefern Information über das aktuelle Wetter, über Börsenlagen
und andere Information, die durch Attributanalyse identifiziert
und benannt und für
künftige
Verwendung ermittelt werden kann. Extrahierte Tickerinformation
kann als unabhängig
von dem gesendeten Programm betrachtet werden, da e keine Beziehung mit
dem Programm hat, bei dem sie erscheint.
-
Die
Analyse überlagerten
Textes in Bezug auf den Inhalt des restlichen Teils des Frames kann hilfsreich
sein, wenn es erforderlich ist, dass Schlüsselframes eines Videosegmentes
identifiziert werden. Eine derartige überlagerte Information ist
komplementär
zu der Video-, Audio- und Transskriptionsinformation. Dieser Text
kann im Zusammenhang mit Schußdetektionsalgorithmen
für Videoindizierung verwendet
werden um Schlüsselframes
mit Text zu erzeugen. Die Schlüsselframes
mit text sind bedeutungsvoller und repräsentativer für die Videosequenz als
diejenigen ohne Text. So ist beispielsweise ein Schlüsselframe
mit einem Ergebnis eines Fußballwettkampfes
nützlicher
als ein ohne Ergebnis. Weiterhin kann die Detektion der Lage und
der Größe von Text
in Werbesendungen im Zusammenhang mit anderen Attributen für eine zuverlässige Detektion von
Werbesendungen verwendet werden.
-
Weiterhin
schafft Videotextanalyse neue Möglichkeiten
zum Analysieren und Kategorisieren von Videoinhalt des restlichen
Teils des Bildes. Szenentext und die Attribute schaffen Hinweise
auf den Videoinhalt. Dies bietet mehrere Vorteile, einschließlich der
Tatsache, dass dazu viel weniger Computerspeicherraum und Zeit erforderlich
ist um Text zu analysieren, stattdessen, dass der sichtbare Inhalt des
Videos analysiert werden muss. So kann beispielsweise die Detektion
von laufendem Text den Anfang oder das Ende eines Programms identifizieren.
Auf diese Weise kann dieses Attribut behilflich sein, wenn es notwendig
ist, die Grenzen des Programms innerhalb eines Videos mit einer
Gruppierung vieler Programme zu finden.
-
3A und 3B zeigen
Beispiele von Videoframes 305 und 350 mit Bildtext
mit selektierten Attributen, die von der Videoverarbeitungsanordnung 110 in 1 identifiziert
werden können.
Der Bildtext in den Videoframes 305 und 350 erscheint
nicht unbedingt gleichzeitig am Schirm während jedes beliebigen Videoclips.
Die Videoframes 305 und 350 werden angeboten um
selektierte Attribute des Bildtextes zu illustrieren, wie laufende
Bewegung, Lage, Schwund, kurze Dauer und Stichwörter. Der Kürze und der Deutlichkeit in
der Erläuterung
der Wirkungsweise der vorliegenden Erfindung wegen, wird Bildtext
von verschiedenen Programmtypen zu Videoframes 305 und 350 kombiniert.
-
Das
Videoframe 305 stellt Text dar, extrahiert aus einem Videoframe
eines Fernsehprogramms. In diesem Fall hat das System/der Benutzer
Attribute zum Isolieren horizontal oder vertikal laufenden Textes,
wie eines Textes assoziiert mit Programmabspann- oder Teckerzeileninformation
auf der Unterseite des Frames selektiert. Ein laufendes Attribut wird
durch Identifikation von Text detektiert, der in einer Sequenz von
Frames identisch ist, ausgenommen, es sei denn, dass die Lage des
Textes sich von Frame zu Frame leicht verschiebt. Weiterhin kann der
Bildprozessor, sogar für
Programmabspanninformation, die nicht läuft, Programminformation identifizieren
durch Identifikation einer Sequenz von Textnachrichten, die nur
kurz am Schirm erscheinen und ggf. durch weitere Identifikation
von Stichwörtern
in dem Text, wie "Produzent", "Regie", "Mitwirkende" und dergleichen.
-
Unter
Verwendung selektierter vertikal laufender Attribute hat der Bildprozessor 120 Abspanntextzeilen 310 isoliert,
was ein aufwärts
laufendes Textgebiet ist, wie durch das punktierte Rechteck angegeben.
Unter Verwendung selektierter horizontal laufender Attribute hat
der Bildprozessor 120 auf der Unterseite des Frames eine
laufende Warnungstextnachricht 315 isoliert, wobei es sich
um eine Wetternachricht in dem angegebenen Rechteck handelt, wobei
der Text für
den Zuschauer von rechts nach links läuft.
-
Das
Videoframe 350 enthält
andere Beispiele von Bildtext mit speziellen Attributen, die in
einem Videoframe einfach identifiziert werden können. So schafft beispielsweise
der Kasten mit Ergebnistext 355 in der oberen linken Ecke
des Videoframes 350 drei Textzeilen. Die erste Zeile identifiziert
den Sender oder das Netzwerk, und die restlichen zwei Zeilen geben
ein Spielergebnis wieder. Der Bildprozessor 120 kann Sportprogramme
identifizieren durch Identifikation von Sportergebnisse im Schirm
mit Attributen ähnlich
dem Kastenergebnistext 255. Die meisten Ergebnisse werden
typischerweise in einer Ecke des Schirms präsentiert und numerische Daten
(d.h. die gesamten Punkte jeder Mannschaft) erscheint vertikal ausgerichtet
in dem Kasten Ergebnisse.
-
Auf
gleiche Weise hat der Werbetext 360 die Stichwortattribute
einer Telefonnummer, assoziiert mit einem Inserenten (beispielsweise "1–800–") und Werbetext 365 hat die
Stichwortattribute einer Internetadresse, assoziiert mit dem Inserenten
(beispielsweise: "www.[Firmenname].com" . Weiterhin haben der
Werbetext 360 und der Werbetext 365 einer des anderen
Attribut, das zum identifizieren einer Werbeanzeige verwendet werden
kann, und zwar liegen beide in der Nähe der Mitte des Videobildes 350.
Die meisten anderen Texttypen befinden sich unten am Schirm oder
in der Ecke desselben. Zum Schluss hat das Textgebiet 370 ein
Schlüsselwortattribut
(und zwar "Nachrichten"), das das Frame
als Teil eines Nachrichtenprogramms identifiziert. Das Textgebiet 375 hat
ein anderes Schlüsselwortattribut
(und zwar "Live"), das angibt, dass
das wiedergegebene Textframe ein Teil eines Nachrichtenprogramms
ist.
-
4 zeigt
ein Beispiel einer Bildtextattributtabelle 400 in dem Speicher 140,
der systemdefinierte und benutzerdefinierte Bildtextattribute nach
einer Ausführungsform
der vorliegenden Erfindung aufweist. Jede system-/benutzerdefinierte
Attributklassifizierung in der Tabelle 400 entspricht einer
Datei von Attributen, die fest oder variabel sein kann, wie durch die
spezielle Implementierung des Bildtextanalysensystem nach 1 bestimmt.
-
Kommerzielle
Attribute 405 stellen Kennzeichen eines kommerziellen Werbetextes
dar, die in einer Datei zum Anschauen extrahiert werden können. Attribute,
assozi iert mit kommerziellem Inhalt können Text innerhalb einer bestimmten
Größe oder
Lagenbeschränkungen,
Text von kurzer Dauer, Wiedergabe von Telefonnummern, E-Mail-adressen, Internetadressen
und Schlüsselwörtern innerhalb
der Werbetexte, wie "Ausverkauf', "Preisnachlass" oder dergleichen
enthalten.
-
Programmnameattribute 410 versehen
dem System/Benutzer mit Mitteln zum Isolieren eines Videoclips,
in dem Text erscheint, der ein bestimmtes Programm angibt. Auch
hier können
Programmnameattribute 410 Attribute, wie Größe und Lage
sowie einen wirklichen Programmnamen, wie "Seinfeld" enthalten. Programmnameattribute 410 können angeben,
dass der Bildprozessor 120 nur nach einem identifizierten
Segment des Videoclips (wie dem Anfang) für den Programmnamen schauen
soll, damit Werbesendungen für
das Programm eliminiert werden, die während anderer Programme erscheinen.
-
Programmtypattribute 415 umfassen Textattribute,
die einen speziellen Programmtyp identifizieren (Sport, Nachrichten,
Musikvideo usw.), Diese Programmtypen können identifiziert werden,
wie oben beschrieben, indem nach dem Kasten Ergebnisse Attribute
gesucht wird, die Sportliga-Schlüsselwörter enthalten
(beispielsweise NBA, NHL), Nachrichtenprogramm-Schlüsselwörter (beispielsweise "Nachrichten", "Wetter", "Live"), oder Musikvideo-Schlüsselwörter (beispielsweise "Produzent", "aufgezeichnet von").
-
Personennamenattribute 420 umfassen Text,
der eine bestimmte Person identifiziert ("John Smith") und können im Zusammenhang mit anderen Textattributen
(wie Nachrichtenprogrammname, Sportorganisationsname, usw.) verwendet
werden. Firmennamenattribute 425 schaffen Mittel zum Untersuchen
eines Videoclips aus das Vorhandensein eines spezifischen Firmennamens.
So kann beispielsweise der Bildprozessor 120 einen bestimmten Firmennamen
auf Werbeplakaten, die einen Fußballplatz
umrahmen, identifizieren. Die Attributselektion kann oben beschriebene
Textmerkmale, Identifikation von Programmtypen, die auf Firmennamen
untersucht werden, Identifikation von spezifischen Firmennamen zur
Wiedergabe, Firmennamen auf Produkten innerhalb einer Nachrichtensendung
usw. umfassen.
-
Ereignisattribute 430 referieren
an Textattribute bestimmter Ereignistypen, wie den "Super Bowl" oder "White House Briefing". In dieser Hinsicht
können
Ereignisattribute 430 den Pogrammattributen oder Personenattributen
sehr ähnlich
sein.
-
Texteffektattribute 435 schaffen
eine Gruppe von Standardtextcharakteristiken, die für lektions- und
Wiedergabezwecke verfügbar
sind. Texteffektattribute 435 können Texteffekte umfassen,
wie horizontales und vertikales Laufendes Zooming (d.h. Heranzoomen
oder Wegzoomen), Blitzen, Welle (oder Welligkeit), Schälen, Verwürfeln, "Flying", Animation und Szenentext.
-
Netzwerklogoattribute 440 beziehen
sich auf Textattribute, assoziiert mit Netzwerkidentifikationslogos.
Diese umfassen Netzwerknamen und Logos zur Verwendung, wenn Text
und Primärframegebiete
miteinander übereinstimmen,
wo Logos höchstwahrscheinlich
angebracht werden sollen. Es ist üblich, dass Netzwerke einen
verblassten Umriss (oder ein Wasserzeichen) ihres Logos über das
Schirmbild des Programms überlagern.
-
Texterscheinungsattribute 445 beziehen
sich auf ein oder mehrere bestimmte Merkmale des Bildtextes, wie
eine bestimmte Textfarbe, Zeichentyp, Texthöhe, Textbreite, oder Textlage.
Im Falle von Texthöhe,
Textbreite oder Textlage kann die Größe oder die Lage in absoluten
Termen gegeben werden (beispielsweise eine bestimmte Anzahl oder
ein bestimmter Bereich von Pixeln) oder in relativen Termen (beispielsweise
einen bestimmten Prozentsatz oder ein Prozentsatzbereich der Schirmgröße).
-
5 zeigt
ein Flussdiagramm 500, das einen Bildtextattributanalysenvorgang
eines Ausführungsbeispiels
einer Videoverarbeitungsanordnung 110 nach einer Ausführungsform
der vorliegenden Erfindung illustriert. Eine Gruppe von Standardtextattributen
kann in dem Speicher 140 durch den Textanalysencontroller 134 zum
Zeitpunkt der Systeminitialisierung gespeichert werden und/oder
modifiziert oder über
Benutzeranordnungen 190 eingegeben werden. Auf diese Weise
kann der Bildprozessor 120 selektierte Textattribute standardmäßig aus
dem Speicher 140 oder durch spezifische Eingabe aus Benutzeranordnungen 190 (Prozessschritt 505) empfangen.
-
Wenn
die Videotextanalyse aktiviert wird, detektiert, extrahiert und
speichert der Bildprozessor 120 Text aus den selektierten
Videoframes, wie in 2 detailliert beschrieben (Prozessschritt 510). Die
Textattribute des extrahierten Textes werden ermittelt und in dem
Bildarbeitsraum 132 gespeichert. Der extrahierte Bildtext
wird danach mit den selektierten Attributen verglichen und das Ergebnis
wird in dem Bildarbeitsraum 132 und/oder dem Speicher 140 gespeichert,
wie erforderlich (Prozessschritt 515).
-
Je
nach der betreffenden Applikation kann der Videobildtext, der mit
den selektierten Attributen übereinstimmt,
mit Hilfe bekannter Editierungsprozesse in Reaktion auf Benutzerbefehle
modifiziert werden (Prozessschritt 520). Das Editieren
kann beispielsweise das Entfernen aller Werbesendungen, oder auf
alternative Weise das Beibehalten nur der Werbesendungen und das
Löschen
des Programms umfassen. Die resultierende Videodatei und der assoziierte
analysierte Text kann für
Erfassungszwecke benannt, in dem Speicher 140 gespeichert,
und/oder zur späteren
Verwendung zu einem internen oder externen Speicher weiter geleitet
werden (Prozessschritt 525).
-
Obschon
die vorliegende Erfindung detailliert beschrieben worden ist, dürfte es
dem Fachmann einleuchten, dass dieser im Rahmen der vorliegenden
Erfindung, wie in den beiliegenden Patentansprüchen definiert, mehrere Änderungen,
Abwandlungen und Modifikationen durchführen kann.
-
Text in der
Zeichnung
-
- Fig.
1
-
- 110
- Videoverarbeitungsanordnung
- 120
- Bildprozessor
- 132
- Bildtextarbeitsraum
- 134
- Textanalysencontroller
- 140
- Speicher
- 170
- I/O
Puffer
- 160
- Videokarte
- 150
- Benutzer
I/O Karte
- 180
- Videoquelle
(Antenne, Kabel, VTR, DVD, CD, usw.)
- 190
- Benutzeranordnungen
- Fig.
2
-
- 205
- Kanaltrennung
durchführen
- 210
- Bildverbesserung
durchführen
- 215
- Randdetektion
durchführen
- 220
- Randfilterung
durchführen
- 225
- Zeichendetektion
durchführen
- 230
- Textkastendetektion
durchführen
- 235
- Textzeilendetektion
durchführen
-
- zum
nächsten
Frame
- Fig.
3A
-
- 310
- Produzent...
- 315
- Warnung
vor heftigen Stürmen
- Fig.
4
-
- 400
- Bildtextattributsystem/benutzerdefiniert
- 405
- Werbungsattribute
- 410
- Programmnameattribute
- 415
- Programmtypattribute
- 420
- Personnameattribute
- 425
- Firmennameattribute
- 430
- Ereignisattribute
- 435
- Texteffektattribute
- 440
- Netzwerklogoattribute
- 445
- Texterscheinungsattribute
- Fig.
5
-
- 505
- Empfang
selektierter Textattribute
- 510
- Durchführung von
Bildtextextraktion und Erkennung in Quellenvideostrom
- 515
- Ermittlung
extrahierter Bildtextattribute und Vergleich mit selektierten Bildtextattributen
- 520
- ggf.
Videoeditierung entsprechend Benutzerbefehlen
- 525
- Speicherung/Beförderung/Benennung der
Videodatei.
- Ende
-