DE112020002858T5 - Synchronisierte tonerzeugung aus videos - Google Patents

Synchronisierte tonerzeugung aus videos Download PDF

Info

Publication number
DE112020002858T5
DE112020002858T5 DE112020002858.5T DE112020002858T DE112020002858T5 DE 112020002858 T5 DE112020002858 T5 DE 112020002858T5 DE 112020002858 T DE112020002858 T DE 112020002858T DE 112020002858 T5 DE112020002858 T5 DE 112020002858T5
Authority
DE
Germany
Prior art keywords
video
visual features
spectrogram
video feed
predicted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020002858.5T
Other languages
English (en)
Inventor
Yang Zhang
Chuang Gan
Sijia Liu
Dakuo Wang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020002858T5 publication Critical patent/DE112020002858T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/57Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for processing of video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26603Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

Eine Rechenvorrichtung empfängt ein Videofeed. Das Videofeed wird in eine Reihenfolge von Videosegmenten aufgeteilt. Für jedes Videosegment werden visuelle Merkmale des Videosegments extrahiert. Auf Grundlage der extrahierten visuellen Merkmale wird ein vorhergesagtes Spektrogramm erzeugt. Aus dem vorhergesagten Spektrogramm wird eine synthetische Audiowellenform erzeugt. Alle synthetischen Audiowellenformen des Videofeeds werden verkettet, um einen synthetischen Soundtrack zu erzeugen, der mit dem Videofeed synchronisiert ist.

Description

  • TECHNISCHES BEREICH
  • Die vorliegende Offenlegung bezieht sich im Allgemeinen auf Computer und Computeranwendungen und im Besonderen auf die automatische Tonerzeugung aus Videos.
  • BESCHREIBUNG DES VERWANDTEN STANDES DER TECHNIK
  • In den letzten Jahren sind Medieninhalte insofern allgegenwärtig geworden, als sie auf verschiedenen Plattformen und aus einer zunehmenden Zahl von Quellen verfügbar sind. Die verschiedenen Plattformen können beispielsweise das Internet, Kino, Fernsehen, Radio, Smartphones, Audio-CDs, Bücher, E-Books, Zeitschriften und Live-Events wie Reden, Konferenzen und Bühnenauftritte beinhalten. Bei Medieninhalten, die auf Videoinhalten basieren, fehlen oft bestimmte Teile der dazugehörigen Audioinhalte. Beispielsweise kann es sein, dass der Datensatz nicht mit einem geeigneten Mikrofon aufgezeichnet wurde, wobei Teile oder der gesamte Ton aus dem Videoinhalt fehlen.
  • KURZDARSTELLUNG
  • Gemäß verschiedenen Ausführungsformen sind eine Rechenvorrichtung, ein nicht flüchtiges, computerlesbares Speichermedium und ein Verfahren vorgesehen, mit denen ein Videostream so angepasst werden kann, dass er einen synthetischen Audiostream beinhaltet. Ein Videofeed wird empfangen und in eine Reihenfolge von Videosegmenten aufgeteilt. Für jedes Videosegment werden visuelle Merkmale extrahiert. Basierend auf den extrahierten visuellen Merkmalen wird ein vorhergesagtes Spektrogramm erzeugt. Aus dem vorhergesagten Spektrogramm wird eine synthetische Audiowellenform erzeugt. Alle synthetischen Audiowellenformen des Videofeeds werden verkettet, um eine synthetische Tonspur zu erzeugen, die mit dem Videofeed synchronisiert ist.
  • In einer Ausführungsform ist jedes Videosegment ein Videorahmen.
  • In einer Ausführungsform umfasst das Extrahieren visueller Merkmale in dem Videosegment das Ermitteln eines oder mehrerer Themen des Videosegments.
  • In einer Ausführungsform beinhalten die visuellen Merkmale des Videosegments ein dominantes visuelles Merkmal und ein oder mehrere nicht-dominante visuelle Merkmale. Eine synthetische Audiowellenform, die mit dem dominanten Merkmal verknüpft ist, kann hervorgehoben (emphasized) werden, während jede synthetische Audiowellenform, die mit einem oder mehreren nicht-dominanten visuellen Merkmalen verknüpft ist, abgeschwächt (de-emphasized) werden kann.
  • In einer Ausführungsform wird die Ermittlung im Wesentlichen in Echtzeit ausgeführt.
  • In einer Ausführungsform beinhaltet die Erzeugung eines vorhergesagten Spektrogramms das Bereitstellen der extrahierten visuellen Merkmale in einem Generator, der das vorhergesagte Spektrogramm auf Grundlage der extrahierten visuellen Merkmale erzeugt. Das Netzwerk des Generators kann während einer Trainingsphase trainiert werden, die Folgendes beinhaltet: Empfangen historischer Daten, einschließlich eines oder mehrerer historischer Videofeeds; für jeden historischen Videofeed Aufteilen des historischen Videofeeds in eine Reihenfolge von Videosegmenten. Für jedes Videosegment eines historischen Videofeeds werden visuelle Merkmale in dem Videosegment extrahiert. Auf Grundlage der extrahierten visuellen Merkmale wird ein vorhergesagtes Spektrogramm erzeugt. Ein reales Spektrogramm wird mit dem vorhergesagten Spektrogramm durch ein Diskriminator-Netzwerk verglichen, um einen Ähnlichkeitsgrad zu erkennen. Nach der Ermittlung, dass der Ähnlichkeitsgrad über einem vorbestimmten Schwellenwert liegt, wird das vorhergesagte Spektrogramm als eine gültige Darstellung der extrahierten visuellen Merkmale erkannt.
  • In einer Ausführungsform ist die Rechenvorrichtung eine Benutzereinheit. Es gibt eine Kamera, die mit dem Prozessor gekoppelt ist, und der Videofeed wird von der Kamera empfangen.
  • Diese und andere Merkmale werden aus der folgenden detaillierten Beschreibung illustrativer Ausführungsformen ersichtlich, die in Verbindung mit den beigefügten Zeichnungen zu lesen ist.
  • Figurenliste
  • Die Zeichnungen veranschaulichen die Ausführungsformen. Sie veranschaulichen nicht alle Ausführungsformen. Andere Ausführungsformen können zusätzlich oder stattdessen verwendet werden. Details, die offensichtlich oder unnötig sind, können weggelassen werden, um Platz zu sparen oder um die Effizienz zu veranschaulichen. Einige Ausführungsformen können mit zusätzlichen Komponenten oder Schritten und/oder ohne alle der veranschaulichten Komponenten oder Schritte ausgeführt werden. Wenn dasselbe Bezugszeichen in verschiedenen Zeichnungen erscheint, bezieht es sich auf die gleichen oder ähnliche Komponenten oder Schritte.
    • 1 ist gemäß einer veranschaulichenden Ausführungsform ein Beispiel für die Architektur eines Systems, das automatisch eine synthetische Audiospur für einen Videostream erzeugt.
    • 2 ist gemäß einer veranschaulichenden Ausführungsform ein Blockdiagramm, das verschiedene Komponenten einer beispielhaften Einheit auf hohem Niveau zeigt.
    • 3 veranschaulicht gemäß einer veranschaulichenden Ausführungsform ein vereinfachtes konzeptionelles Blockdiagramm zur Erzeugung von Rohton aus einem Videostrom.
    • 4A und 4B sind Beispiele für Blockdiagramme von diskriminierenden bzw. erzeugenden Architekturen.
    • 5 ist gemäß einer veranschaulichenden Ausführungsform ein konzeptionelles Blockdiagramm eines Beispiels für ein neuronales Netzwerk, das ein erzeugendes gegnerisches Netzwerk (generative adversarial network) umfasst, das mit einem Diskriminator-Netzwerk interagiert.
    • 6 ist gemäß einer veranschaulichenden Ausführungsform ein konzeptionelles Blockdiagramm eines Bild-zu-Ton-Systems.
    • 7 veranschaulicht einen Prozess zur automatischen Anpassung von Videoinhalten, der einen im Wesentlichen dazu synchronisierten synthetischen Audiostream beinhaltet.
    • 8 veranschaulicht einen Prozess für eine iterative Trainingsphase.
    • 9 ist ein funktionelles Blockdiagramm, das eine Computer-Hardware-Plattform veranschaulicht, die einen Ton-Engine-Server von 1 implementieren kann.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Überblick
  • In der folgenden detaillierten Beschreibung werden zahlreiche spezifische Details anhand von Beispielen dargelegt, um ein umfassendes Verständnis der relevanten Lehren bereitzustellen. Es sollte jedoch klar sein, dass die vorliegende Lehre auch ohne solche Details praktiziert werden kann. In anderen Fällen wurden bekannte Verfahren, Prozeduren, Komponenten und/oder Schaltkreise auf einer relativ hohen Ebene und ohne Details beschrieben, um zu vermeiden, dass Aspekte der vorliegenden Lehre unnötig verdeckt werden.
  • Die vorliegende Offenlegung bezieht sich im Allgemeinen auf die automatische Anpassung von Videoinhalten, die einen synthetischen, im Wesentlichen dazu synchronisierten Audiostream beinhalten. Heutzutage werden Videoinhalte von verschiedenen Quellen bereitgestellt, einschließlich Rundfunk oder Multicast von einem Inhaltsanbieter, wie z. B. einem Fernsehsender, sozialen Medien, gespeicherten Medien, tragbaren Einheiten mit einer Kamera und dergleichen. In einigen Szenarien können solche Videoinhalte keine Teile von Audioinhalten beinhalten. Beispielsweise kann der Videoinhalt durch Hintergrundgeräusche überlagert werden, Verzerrungen beinhalten und/oder der Audioteil einfach fehlen, z. B. wenn er aus großer Entfernung oder ohne ein geeignetes Mikrofon aufgenommen wurde. Obwohl es in letzter Zeit Versuche gegeben hat, Audioinhalte in Videos einzufügen, nachdem das Video aufgenommen wurde, entspricht der Ton typischerweise nicht ausreichend dem Inhalt des Videofeeds oder ist möglicherweise nicht synchron dazu, was zu einer schlechten Benutzererfahrung führt.
  • Dementsprechend werden hier Verfahren und Vorrichtungen bereitgestellt, die so konfiguriert sind, dass sie visuelle Merkmale aus einem Videoinhalt extrahieren und einen synthetischen Audiostream erzeugen, der nicht nur eine genaue klangliche Darstellung des Videoinhalts liefert, sondern im Wesentlichen auch synchron dazu ist. Zu diesem Zweck kann maschinelles Lernen verwendet werden, um die Beziehung zwischen Bild und Ton für verschiedene Sachverhalte zu untersuchen, z. B. ein weinendes Kind, ein bellender Hund, ein Wasserfall, ein vorbeifahrendes Auto, eine Explosion usw. Modelle des Verhältnisses zwischen Bild und Ton können für zahlreiche Anwendungen eingesetzt werden, z. B. für die Kombination von Videos mit automatisch erzeugten Umgebungsgeräuschen, um fehlende Audioinhalte bereitzustellen und/oder das Erlebnis des Eintauchens in die virtuelle Realität zu verbessern. Das automatische Hinzufügen von Toneffekten zu Videoinhalten kann ein audiovisuelles Erlebnis unmittelbar verbessern oder es einer sehbehinderten Person ermöglichen, eine visuelle Umgebung über eine Darstellung mittels Tons zu erleben. Die hier beschriebenen Techniken können auf verschiedene Weise implementiert werden. Beispielhafte Implementierungen werden im Folgenden unter Bezugnahme auf die folgenden Figuren bereitgestellt.
  • Beispielhafte Architektur
  • 1 veranschaulicht gemäß einer Ausführungsform ein Beispiel für die Architektur 100 eines Systems, das automatisch eine synthetische Audiospur für einen Videostream erzeugt. Die Architektur 100 kann einen Speicher für historische Daten 112, einen Speicher für Videoinhalte 110 und einen Ton-Engine-Server 120 beinhalten, der eine Ton-Engine 132 hostet. Es gibt ein Netzwerk 106, das es der Ton-Engine 132 ermöglicht, mit verschiedenen Ressourcen zu kommunizieren, die mit dem Netzwerk 106 verbunden sind, wie z. B. dem Speicher für historische Daten 112, dem Speicher für Videoinhalte 110 und den Einheiten 102(1) bis 102(N). Das Netzwerk 106 kann ohne Einschränkung ein lokales Netzwerk („LAN“), ein virtuelles privates Netzwerk („VPN“), ein zellulares Netzwerk, das Internet oder eine Kombination davon sein. Beispielsweise kann das Netzwerk 106 ein mobiles Netzwerk beinhalten, das kommunikativ mit einem privaten Netzwerk gekoppelt ist, das manchmal auch als Intranet bezeichnet wird und verschiedene Zusatzdienste bereitstellt, wie z. B. die Kommunikation mit der Ton-Engine 132, um synthetische Audioströme für die von der Datenbank für Videoinhalte 110 oder den Benutzereinheiten 101(1) bis 101(N) empfangenen Videoinhalte zu addieren.
  • Zu Diskussionszwecken sind in der Zeichnung verschiedene Benutzereinheiten 102(1) bis 102(N) dargestellt, um einige Beispiele für Client-Einheiten zu zeigen, die zur Aufnahme von Videoinhalten verwendet werden können, die dann so geeignet sind, dass sie synthetische Audioströme umfassen, die synchron zu den aufgenommenen Videoinhalten sind. Der synthetische Audiostrom kann von einer Ton-Engine erzeugt werden, die sich auf der Einheit des Benutzers befindet (z. B. 122 oder 128), oder von einer entfernten Ton-Engine 132, die von dem Ton-Engine-Server 120 gehostet wird. Das heißt, in einigen Ausführungsformen kann die Benutzereinheit unabhängig vom Netzwerk 106 und/oder dem Ton-Engine-Server 120 sein, indem sie den Medieninhalt in ihrem Speicher (z. B. Festplatte, RAM, ROM, DVD, Videoband, Flash-Laufwerk usw.) oder in einer Hardwarekomponente gespeichert hat.
  • Während die Funktionen der Ton-Engines 122 und 128 hier manchmal im Zusammenhang mit der Integration in Einheiten des Benutzers erörtert werden, können die Funktionen der Ton-Engine auch aus der Ferne ausgeführt werden (z. B. durch einen entfernten Ton-Engine-Server 120). Zum Beispiel kann es einen Ton-Engine-Server 120 geben, der über eine Ton-Engine 132 verfügt, die ähnliche Merkmale aufweist wie die Ton-Engine 128 der Benutzereinheit 102(n). Auf diese Weise können im Wesentlichen ähnliche Funktionen wie die der Ton-Engines 122 und 128 aus der Ferne über ein Netzwerk 106 ausgeführt werden. Dies ist besonders nützlich, wenn eine Benutzereinheit nicht über ausreichende Computer-Ressourcen verfügt (z. B. nicht genügend Rechenleistung) und/oder um die Leistung der Benutzereinheit zu sichern. In einem Aspekt wird die Rechentechnik durch die vorliegenden Konzepte also dadurch verbessert, dass eine Rechenvorrichtung entlastet werden kann, indem eine oder mehrere Medienfunktionen aus der Ferne ausgeführt werden. Heutzutage haben Benutzereinheiten typischerweise die Form von tragbaren Handgeräten, Smartphones, Tablet-Computern, Personal Digital Assistants (PDAs) und Smartwatches, obwohl sie auch in anderen Formfaktoren implementiert sein können, einschließlich elektronischer Einheiten für Verbraucher, Medizin und Unternehmen.
  • Der Speicher für historische Daten 112 ist so konfiguriert, dass er einen großen Satz historischer Daten 113 speichert und pflegt, die sich auf Videoinhalte mit einem entsprechenden Audioinhalt beziehen. Zum Beispiel können die historischen Daten 113 Videoinhalte mit erkannten visuellen Merkmalen beinhalten. In verschiedenen Ausführungsformen können diese visuellen Merkmale von der Ton-Engine (z. B. 122, 128 und/oder 132) verwendet werden, um ein Referenzspektrogramm zu erstellen, das hier manchmal als reales Spektrogramm bezeichnet wird und die „Basiswahrheit“ für spätere Vergleichszwecke durch ein Diskriminator-Netzwerk darstellt. In einigen Ausführungsformen beinhaltet der historische Datenspeicher 112 das reale Spektrogramm zusammen mit den visuellen Merkmalen. In einer Ausführungsform wird maschinelles Lernen verwendet, um Algorithmen zu konstruieren, die aus den im historischen Datenspeicher 112 gespeicherten Daten lernen und auf dieser Grundlage Vorhersagen treffen können. Solche Algorithmen arbeiten, indem sie ein Modell aus gespeicherten früheren Eingaben oder Basislinien erstellen, um datengesteuerte Vorhersagen oder Entscheidungen zu treffen. Auf Grundlage des maschinellen Lernens werden Muster und Trends erkannt, und Ausreißer werden als nicht zu einem Cluster gehörend erkannt. Zum Beispiel kann maschinelles Lernen verwendet werden, um die visuellen Merkmale eines Frames des Videoinhalts zu erkennen, ein vorhergesagtes Spektrogramm auf Grundlage der visuellen Merkmale eines Frames des Videoinhalts zu erzeugen sowie eine Tonwellenform auf Grundlage des vorhergesagten Spektrogramms zu erzeugen. In verschiedenen Ausführungsformen können die Maschinenmodelle für jede dieser Funktionen separat trainiert werden.
  • Wie hier verwendet, bezieht sich ein visuelles Merkmal auf den Gegenstand einer Szene, z. B. einen bellenden Hund, ein weinendes Baby, eine Baustelle usw. In einigen Ausführungsformen können die visuellen Merkmale ein dominantes Merkmal zusammen mit ergänzenden (z. B. nicht dominanten) Merkmalen beinhalten. Ein Beispiel: Ein Rahmen kann ein Auto beinhalten, das neben einem Feuerwehrauto fährt. In diesem Szenario ist das Auto ein untergeordnetes Merkmal, während das dominante Merkmal das Feuerwehrauto ist. Dementsprechend wird die synthetische Audiowellenform, die mit dem dominanten Merkmal verknüpft ist (d. h. in diesem Beispiel das Feuerwehrauto), hervorgehoben, während die Nebenmerkmale abgeschwächt (z. B. abgeschwächt oder sogar stummgeschaltet) werden, wodurch die Komplexität der Berechnung vereinfacht und die klangliche Betonung des Themas verbessert wird.
  • In verschiedenen Ausführungsformen kann das hier erörterte maschinelle Lernen überwacht oder unüberwacht sein. Beim überwachten Lernen können der Ton-Engine (z. B. 122, 128 und/oder 132) während einer Trainingsphase historische Daten 113 aus dem historischen Datenspeicher 112 als Daten vorgelegt werden, die sich jeweils auf verschiedene Kategorien (z. B. Merkmale) beziehen. Anders ausgedrückt: Der historische Datenspeicher 112 fungiert als Lehrer für die Ton-Engine 132. Beim unüberwachten Lernen stellt der historische Datenspeicher 112 keine Kennzeichnungen bereit, was akzeptabel ist, sondern verwendet einfach historische Daten 113 für den Ton-Engine-Server 120, der seine eigene Struktur in den Daten finden kann, um ein Spektrogramm vorherzusagen, zu ermitteln, ob das vorhergesagte Spektrogramm eine ausreichend genaue Darstellung der visuellen Merkmale des Videoinhalts ist, und eine synthetische Audiowellenform aus dem vorhergesagten Spektrogramm zu erstellen. In verschiedenen Ausführungsformen kann das maschinelle Lernen Techniken wie überwachtes Lernen, unüberwachtes Lernen, halbüberwachtes Lernen, naive Bayes, Bayes'sche Netzwerke, Entscheidungsbäume, neuronale Netzwerke, Fuzzy-Logik-Modelle und/oder probabilistische Klassifikationsmodelle verwenden.
  • So werden während einer Trainingsphase ein oder mehrere Modelle durch maschinelles Lernen erstellt, wobei die Modelle die visuellen Merkmale erkennen, ein vorhergesagtes Spektrogramm auf Grundlage der visuellen Merkmale bereitstellen, ermitteln, ob das vorhergesagte Spektrogramm eine gültige Darstellung der visuellen Merkmale ist, und schließlich eine synthetische Audiowellenform auf Grundlage der visuellen Merkmale bereitstellen können. Diese Modelle können dann während einer aktiven Phase verwendet werden, die in der Lage sein kann, einen Videostream zu verarbeiten, um einen synthetischen Audiostream bereitzustellen, der anschließend oder im Wesentlichen in Echtzeit mit diesem synchronisiert wird.
  • In verschiedenen Ausführungsformen kann der Videofeed 111 von einer Datenbank für Videoinhalte 110 bereitgestellt oder von den Benutzereinheiten 102(1) bis 102(N) mit Hilfe von darin eingebetteten Kameras erstellt werden. Ein Beispiel für eine Benutzereinheit wird später im Detail besprochen. So kann eine Benutzereinheit in einigen Szenarien insofern unabhängig sein, als sie nicht nur einen Videoinhalt aufnehmen, sondern ihn auch unabhängig verarbeiten kann, um ihm mit Hilfe einer lokalen Inhalts-Engine (z. B. 122) eine geeignete synthetische Tonspur zu addieren. Eine solche Unabhängigkeit kann insbesondere bei Anwendungen nützlich sein, die es Sehbehinderten ermöglichen, eine visuelle Umgebung über eine Tondarstellung zu erleben.
  • Während der historische Datenspeicher 112, die Datenbank für Videoinhalte 110 und der Ton-Engine-Server 120 in verschiedenen Ausführungsformen auf unterschiedlichen Computerplattformen veranschaulicht sind, können diese Plattformen in verschiedenen Kombinationen kombiniert werden. In anderen Ausführungsformen können eine oder mehrere dieser Rechenplattformen durch virtuelle Rechenvorrichtungen in Form von virtuellen Maschinen oder Softwarecontainern implementiert werden, die in der Cloud 120 gehostet werden, wodurch eine elastische Architektur für die Verarbeitung und Speicherung bereitgestellt wird.
  • Beispielhafte Benutzereinheit
  • Wie im Zusammenhang mit 1 erläutert, kann die Erzeugung einer synthetischen Tonspur für einen Videostream verschiedene Typen von Benutzereinheiten umfassen. Zu diesem Zweck veranschaulicht 2 ein Blockdiagramm, das verschiedene Komponenten einer illustrativen Benutzereinheit 200 auf einem hohen Niveau zeigt. Zu Diskussionszwecken wird die Benutzereinheit 200 in Form einer drahtlosen Rechenvorrichtung veranschaulicht, wobei selbstverständlich auch andere Rechenvorrichtungen in Frage kommen.
  • Die Benutzereinheit 200 kann eine oder mehrere Antennen 202, einen Transceiver 204 für Mobilfunk, Wi-Fi-Kommunikation, Kurzstrecken-Kommunikationstechnologie und/oder drahtgebundene Kommunikation, eine Benutzerschnittstelle 206, einen oder mehrere Prozessoren 208, Hardware 210 und einen Speicher 230 umfassen. In einigen Ausführungsformen können die Antennen 202 eine Uplink-Antenne beinhalten, die Funksignale an eine Basisstation sendet, und eine Downlink-Antenne, die Funksignale von der Basisstation empfängt. In einigen anderen Ausführungsformen kann eine einzige Antenne sowohl Funksignale senden als auch empfangen. Die gleichen oder andere Antennen können für die Wi-Fi-Kommunikation verwendet werden. Diese Signale können vom Transceiver 204 verarbeitet werden, der manchmal auch als Netzwerk-Schnittstelle bezeichnet wird und so konfiguriert ist, dass er digitale Daten empfängt und sendet. In einer Ausführungsform beinhaltet die Benutzereinheit 200 keine Antenne 202 und die Kommunikation mit externen Komponenten erfolgt über eine drahtgebundene Kommunikation.
  • In einer Ausführungsform beinhaltet die Benutzereinheit 200 eine oder mehrere Benutzerschnittstelle(n) 206, die es einem Benutzer ermöglicht, Eingaben bereitzustellen und Ausgaben von der Benutzereinheit 200 zu empfangen. Zum Beispiel kann die Benutzereinheit 206 eine Datenausgabeeinheit (z.B. visuelle Anzeige(n), Audio-Lautsprecher, haptische Einheit usw.) beinhalten, die verwendet werden kann, um visuelle Inhalte mit einem synthetischen Tonfluss bereitzustellen, der im Wesentlichen mit diesem synchronisiert ist.
  • Die Benutzerschnittstelle(n) 206 kann/können auch eine oder mehrere Dateneingabe-Einheiten beinhalten. Die Dateneingabeeinheiten können Kombinationen aus einem oder mehreren Tastenfeldern, Knöpfen/Bedienelementen, Tastaturen, Berührungsbildschirmen, Spracherkennungspaketen und anderen geeigneten Einheiten oder anderen elektronischen/Software-Auswahlschnittstellen beinhalten, sind aber nicht darauf beschränkt.
  • Die Benutzereinheit 200 kann einen oder mehrere Prozessoren 208 umfassen, bei denen es sich um einen Single-Core-Prozessor, einen Multi-Core-Prozessor, einen CISC-Prozessor (Complex Instruction Set Computing), einen Spieleprozessor oder jeden anderen Typ eines geeigneten Prozessors handeln kann.
  • Die Hardware 210 kann eine Stromquelle und digitale Signalprozessoren (DSPs) beinhalten, die Single-Core- oder Multiple-Core-Prozessoren umfassen können. Die Hardware 210 kann auch Netzwerkprozessoren beinhalten, die Hochgeschwindigkeits-Kommunikationsschnittstellen verwalten, einschließlich Kommunikationsschnittstellen, die mit peripheren Komponenten interagieren. Die Netzwerkprozessoren und die peripheren Komponenten können über eine Switching-Fabric verbunden sein. Die Hardware 210 kann Hardware-Decoder und -Encoder, eine Netzwerk-Schnittstellen-Steuereinheit und/oder eine USB-Steuereinheit beinhalten.
  • Die Hardware 210 kann verschiedene Sensoren beinhalten, die verwendet werden können, um Video- und/oder Audioinformationen zu erfassen. Zum Beispiel können ein oder mehrere Mikrofone 214 verwendet werden, um Audioinhalte zu erfassen, und eine Kamera 218, um Videoinhalte zu erfassen. Diese Videoinhalte können dann durch die Ton-Engine 242 lokal oder durch eine entfernte Ton-Engine, ähnlich der des Ton-Engine-Servers 120 von 1, wie hier beschrieben, verbessert werden.
  • Die Benutzereinheit 200 umfasst einen Speicher 230, der unter Verwendung von computerlesbaren Medien, wie z. B. Computerspeichermedien, implementiert werden kann. Speichermedien beinhalten flüchtige und nicht-flüchtige, entfernbare und nicht-entfernbare Medien, die in einem beliebigen Verfahren oder einer Technologie zur Speicherung von Informationen wie computer-implementierten Anweisungen, Datenstrukturen, Programm-Modulen oder anderen Daten implementiert sind. Computerspeichermedien beinhalten unter anderem RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechnologien, CD-ROM, Digital Versatile Disks (DVD), High-Definition-Video-Speicherplatten oder andere optische Speicher, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichergeräte oder jedes andere nicht übertragbare Medium, das zur Speicherung von Informationen für den Zugriff durch eine Rechenvorrichtung verwendet werden kann.
  • Der Speicher 230 kann verschiedene Softwarekomponenten oder -module speichern, die von dem/den Prozessor(en) 208 und der/den Steuereinheit(en) der Benutzereinheit 200 ausgeführt werden können oder auf die diese zugreifen. Die verschiedenen Komponenten des Speichers 230 können Software 232 und ein Betriebssystem 270 beinhalten. Die Software 232 kann verschiedene Anwendungen 240 beinhalten, wie z. B. eine Ton-Engine 242 mit mehreren Modulen, von denen jedes so konfiguriert ist, dass es einen anderen Aspekt der automatischen Anpassung von Videoinhalten steuert, um einen synthetischen Audiostream zu umfassen, der im Wesentlichen damit synchronisiert ist. Jedes Modul kann Routinen, Programmanweisungen, Objekte und/oder Datenstrukturen beinhalten, die Aufgaben ausführen oder abstrakte Datentypen implementieren, auf die später im Detail eingegangen wird.
  • In einer Ausführungsform umfasst die Ton-Engine 242 ein Modul 244 für visuelle Merkmale, das so konfiguriert ist, dass es visuelle Merkmale aus einem Segment (z. B. einem Frame) eines Videofeeds extrahiert. Es gibt ein Encoder/Decoder-Modul 246, das auf Grundlage der visuellen Merkmale, die aus einem Frame eines Videofeeds extrahiert werden, ein vorhergesagtes Spektrogramm erstellt. Es gibt einen Vocoder 248, der das vorhergesagte Spektrogramm verwendet, um daraus ein synthetisches Audio-Inhaltssegment zu erzeugen. Es gibt ein Diskriminator-Modul 250, das ermittelt, ob das vorhergesagte Spektrogramm eine genaue Darstellung der visuellen Merkmale des Videorahmens ist. Während die Module der Ton-Engine 242 oben im Zusammenhang mit einer Software-Anwendung beschrieben wurden, ist zu beachten, dass eine oder mehrere Funktionen auch in der Hardware 210 ausgeführt werden können.
  • Das Betriebssystem 270 kann Komponenten beinhalten, die es der Benutzereinheit 200 ermöglichen, Daten über verschiedene Schnittstellen zu empfangen und zu übertragen (z. B. Benutzerkontrollen, Kommunikationsschnittstelle und/oder Speicher-Eingabe/Ausgabegeräte) sowie Daten unter Verwendung des/der Prozessors/Prozessoren 208 zu verarbeiten, um eine Ausgabe zu erzeugen. Das Betriebssystem 270 kann eine Präsentationskomponente beinhalten, die die Ausgabe präsentiert (z.B. Anzeige mindestens eines Teils des Medieninhalts auf einer elektronischen Anzeige der Benutzereinheit 200, Speichern der Daten im Speicher 230, Übertragen der Daten an eine andere elektronische Einheit usw.). Zusätzlich kann das Betriebssystem 270 andere Komponenten umfassen, die verschiedene zusätzliche Funktionen ausführen, die allgemein mit einem Betriebssystem 270 verknüpft sind. Aufgrund der Hard- und Software der Benutzereinheit 200 kann ein Videofeed geeignet sein, einen dazu synchronen synthetischen Audiostream zu umfassen.
  • Beispielhaftes Blockdiagramm
  • 3 veranschaulicht ein vereinfachtes konzeptionelles Blockdiagramm 300 der Erzeugung von Rohton 306 aus einem Videofeed. Ein Videofeed 302, der eine Reihe von Bildern umfasst, wird von einer Ton-Engine empfangen. Die Ton-Engine kann den Videofeed 302 in Videosegmente aufteilen, bis hin zu einer Granularität von Einzelbildern. Anders ausgedrückt: Jedes Einzelbild kann unabhängig analysiert werden, um ein hohes Maß an Granularität und Synchronisation bereitzustellen. In einer Ausführungsform wird zur Verringerung des Rechenaufwands eine vorbestimmte Anzahl von Einzelbildern übersprungen. Die verwendeten Frames werden hier als „relevante Frames“ bezeichnet. In einigen Ausführungsformen ist jeder Frame relevant.
  • Ein Modell 304 wird auf die Frames angewendet, um einen Ton zu erzeugen, der im Wesentlichen mit dem Videofeed 302 synchronisiert ist. Zu diesem Zweck ist das Modell 304 so konfiguriert, dass es für jedes relevante Einzelbild ein Spektrogramm mit Hilfe eines Encoder-Decoders erstellt. Die Reihe der Spektrogramme wird dann von dem Modell verwendet, um den synchronisierten Ton 306 für den Videofeed 302 zu erzeugen. Im Gegensatz zu bekannten Herangehensweisen, die eine Tonwellenform 306 auf Grundlage des rohen Videofeeds erzeugen, wodurch die Synchronisation zwischen dem visuellen Inhalt und dem erzeugten Ton beeinträchtigt wird, erreicht die hier bereitgestellte Herangehensweise eine wesentliche Synchronisation zwischen dem Videofeed 302 und dem erzeugten Ton 306 durch Verwendung eines vorhergesagten Spektrogramms für jedes Segment eines Videofeeds 302. Die Erstellung des Modells bzw. der Modelle 304, die während einer Trainingsphase ausgeführt wird, wird im Folgenden im Detail besprochen.
  • Beispielhafte künstliche Intelligenztechniken
  • Wie bereits erwähnt, können verschiedene Techniken der künstlichen Intelligenz verwendet werden, um synthetische Teile des Audioinhalts auf der Grundlage des vorhergesagten Spektrogramms verschiedener Segmente eines Videofeeds bereitzustellen. Ein Spektrogramm ist eine zweidimensionale visuelle Darstellung des Frequenzspektrums eines Signals, wie es sich mit der Zeit verändert. Wie hier verwendet, ist es ein Visualisierungswerkzeug, das die Anzeige von Rohwellenformen für einzelne Merkmale ermöglicht, die aus Frames eines Videostreams extrahiert wurden. Anders ausgedrückt, es ist ein Bild des Tons. Es zeigt zum Beispiel die Frequenzen, aus denen sich der Ton zusammensetzt, von niedrig bis hoch, und wie er sich im Laufe der Zeit verändert, von links nach rechts.
  • In einigen Ausführungsformen können erzeugende gegnerische Netzwerke (GANs) und/oder diskriminierende Herangehensweisen verwendet werden, um die Modelle zu trainieren, um den synthetischen Audioinhalt für einen Videofeed zu erzeugen bzw. um zu ermitteln, ob der erzeugte synthetische Audioinhalt eine gültige Darstellung des Videofeeds ist. In diesem Zusammenhang sind die 4A und 4B Beispiel-Blockdiagramme von diskriminativen und erzeugenden Architekturen, die verwendet werden können, um synthetische Audioinhalte für einen Videofeed zu erzeugen und/oder zu ermitteln, ob der erzeugte Videofeed eine gültige Darstellung des Videofeeds ist.
  • Diskriminator-Netzwerke 404 können ermitteln, ob das vorhergesagte Spektrogramm eines Videofeeds, das zur Erstellung eines synthetischen Audioinhalts verwendet werden kann, eine gültige Darstellung eines Videofeeds ist, indem sie das vorhergesagte Spektrogramm mit einem realen Spektrogramm vergleichen, das die Grundwahrheit darstellt. Auf diese Weise kann das vorhergesagte Spektrogramm als „echt“ oder „gefälscht“ bezeichnet werden (408). Liegt die Ähnlichkeit des vorhergesagten Spektrogramms über einem vorbestimmten Schwellenwert, erkennt das Diskriminator-Netzwerk es als hinreichend „echt“, was es dem Diskriminator-Netzwerk ermöglicht, einem Vocoder anzugeben, das vorhergesagte Spektrogramm bei der Erstellung eines synthetischen Audioinhalts zu verwenden, worauf später noch näher eingegangen wird.
  • Mathematisch ausgedrückt, wird ein Label als y und die Merkmale als x dargestellt. Der Ausdruck p(y|x) bezieht sich auf „die Wahrscheinlichkeit von y bei x“. Im vorliegenden Beispiel bezieht sich der Ausdruck auf die Wahrscheinlichkeit, dass der durch ein vorhergesagtes Spektrogramm bereitgestellte Inhalt eine gültige Darstellung eines Videofeeds ist. Auf diese Weise können diskriminierende Algorithmen die Merkmale eines vorhergesagten Spektrogramms eines Frames (z. B. einer Szene) auf ein Label (d. h. „echt“ oder „gefälscht“) abbilden.
  • Bei den GANs, die in 4B durch das Generator-Netzwerk 424 dargestellt sind, handelt es sich um tiefe neuronale Netzarchitekturen, die zwei Netze beinhalten, die gegeneinander antreten (daher auch der Begriff „ gegnerisch“). GANs haben die Ressource, zu lernen, eine beliebige Datenverteilung nachzuahmen. Dementsprechend kann ein Generator-Netzwerk 424, das hier manchmal auch als Encoder-Decoder bezeichnet wird, ein Spektrogramm auf Grundlage visueller Merkmale eines Bildes eines Videofeeds erzeugen, das durch den Daten-/Feature-Block 422 dargestellt wird. Anders ausgedrückt: Anstatt ein Label bei bestimmten Merkmalen vorherzusagen (wie in diskriminativen Architekturen), kann das Generator-Netzwerk 424 Merkmale bei einem bestimmten Label vorhersagen. Wenn zum Beispiel visuelle Merkmale in einem Frame eines Videofeeds erkannt werden, kann das Generator-Netzwerk 424 die visuellen Merkmale verwenden, um ein Spektrogramm zu erzeugen. Das Generator-Netzwerk 424 ist also so konfiguriert, dass es ein vorhergesagtes Spektrogramm erzeugt, während das Diskriminator-Netzwerk 404 die Daten auf ihre Authentizität hin überprüft.
  • Mit dem vorangegangenen Überblick über ein Generator- und Diskriminator-Netzwerk wird nun auf 5 verwiesen, die ein konzeptionelles Blockdiagramm eines Beispiels für ein neuronales Netzwerk 500 beinhaltet, das ein Generator-Netzwerk 524 in Wechselwirkung mit einem Diskriminator-Netzwerk 506 umfasst. Zum Beispiel kann das Generator-Netzwerk 524 ein vorhergesagtes Spektrogramm 528 aus visuellen Merkmalen eines Videorahmens 520 erzeugen. Das vorhergesagte Spektrogramm kann zur Erstellung synthetischer Audioinhalte 530 verwendet werden.
  • In einer Ausführungsform wird vor der Erstellung des synthetischen Audioinhalts 530 ermittelt, ob das vorhergesagte Spektrogramm 528 eine gültige Darstellung der visuellen Merkmale des Videorahmens 520 ist. Zu diesem Zweck ermittelt das Diskriminator-Netzwerk 506, ob das vorhergesagte Spektrogramm 528 dem realen Inhalt 502 hinreichend ähnelt. Der reale Inhalt 502 stellt die Grundwahrheit dar, die als Datenkorpus verwendet werden kann, aus dem das Diskriminator-Netzwerk 506 lernen kann. Bei der Überprüfung des vorhergesagten Spektrogramms 528 kann das Diskriminator-Netzwerk 506 auf Grundlage des realen Referenzinhalts 502 eine Bewertung (z. B. von 0 bis 1, wobei 1 die höchste Wahrscheinlichkeit darstellt) bereitstellen, die angibt, ob das vom Generator-Netzwerk 524 erzeugte vorhergesagte Spektrogramm 528 ausreicht, um Teil einer vorbestimmten Kennzeichnung/Klassifizierung 510 zu sein, die die Ausgangsebene darstellt. Wenn ja, dann kann der synthetische Audioinhalt 530 aus dem vorhergesagten Inhalt 528 erstellt werden. Dementsprechend sind sowohl das Generator-Netzwerk 524 als auch das Diskriminator-Netzwerk 506 ständig am Lernen, optimieren aber entgegengesetzte Zielfunktionen (d.h. Verlustfunktionen).
  • 6 ist ein konzeptionelles Blockdiagramm des Bild-Ton-Systems 600, das mit einer veranschaulichenden Ausführungsform übereinstimmt. Es gibt Videoinhalte 602, die von einer Rechenvorrichtung erzeugt oder von einem Speicher für Videoinhalte empfangen werden können. Zum Beispiel kann der Videoinhalt 602 ein Videofeed sein, der eine Reihe von Segmenten umfasst. Jedes Segment kann eine vorbestimmte Länge haben oder so kurz wie ein einzelner Videorahmen sein. Es gibt ein visuelles Merkmalsmodul 608, das die visuellen Merkmale eines jeden Segments (z. B. eines Frames) extrahiert. Die visuellen Merkmale können z. B. spielende Kinder, einen bellenden Hund, einen Presslufthammer, einen laufenden Motor, eine Klimaanlage, einen Krankenwagen, ein Feuer usw. beinhalten. Diese visuellen Merkmale eines Segments werden von einem Encoder 610 - Decoder 612 verwendet, der ein Generator-Netzwerk darstellt, um ein vorhergesagtes Spektrogramm 616 bereitzustellen. Das vorhergesagte Spektrogramm 616 kann wiederum von einem Vocoder 620 verwendet werden, um eine synthetische Audiowellenform 622 für das vorhergesagte Spektrogramm zu erzeugen.
  • In einer Ausführungsform gibt es ein Diskriminator-Modul 630, das so konfiguriert ist, dass es ermittelt, ob das vorhergesagte Spektrogramm eine gültige Darstellung der visuellen Merkmale 608 des Videosegments ist. In einer Ausführungsform wird diese Ermittlung ausgeführt, bevor die synthetische Audiowellenform 622 durch den Vocoder 620 erzeugt wird. Zu diesem Zweck werden die visuellen Merkmale 608 zusammen mit dem vorhergesagten Spektrogramm 616 mit einem realen Spektrogramm 640 verglichen, das ähnliche visuelle Merkmale aufweist, um zu ermitteln, ob das vorhergesagte Spektrogramm 616 eine Ähnlichkeit mit dem realen Spektrogramm 640 aufweist, die über einem vorbestimmten Schwellenwert liegt. Dementsprechend stellt das reale Spektrogramm 640 die Grundwahrheit des Inhalts dar. Wenn festgestellt wird, dass die Ähnlichkeit über dem vorbestimmten Schwellenwert liegt, kann der Vocoder 620 das vorhergesagte Spektrogramm 616 verwenden, um daraus die synthetische Audiowellenform 622 zu erzeugen.
  • In einer Ausführungsform wird ein Vocoder mit einer PixelCNN-Architektur, wie WaveNet, verwendet. Ein solches erzeugendes Modell ist zum Beispiel in der Lage, verschiedene Klänge zu erzeugen, einschließlich Sprache, die verschiedene Arten von Klängen, einschließlich menschlicher Sprache, imitieren kann. Zum Beispiel werden während einer Trainingsphase historische Daten, die reale Soundtracks mit verschiedenen visuellen Merkmalen umfassen, verwendet, um den Vocoder 620 zu trainieren. Nach Abschluss des Trainings kann der Vocoder verwendet werden, um eine realistisch klingende synthetische Audiowellenform 622 zu erzeugen. Nachdem die synthetischen Audiowellenformen 622 für jedes Segment des Videoinhalts 602 erzeugt wurden, kann jedes dieser Segmente in Serie verkettet werden, um eine Tonspur bereitzustellen, die mit dem Videofeed 602 synchronisiert ist.
  • Beispielhafter Prozess
  • Nach dem vorangegangenen Überblick über die Architektur 100, die beispielhafte Benutzereinheit 200, die beispielhaften Techniken der künstlichen Intelligenz 400A/B und 500 sowie das konzeptionelle Blockdiagramm eines Bild-zu-Ton-Systems 600 kann es hilfreich sein, nun auf hohem Niveau eine Diskussion über beispielhafte Anrufprozesse zu führen. Zu diesem Zweck ist in 7 ein veranschaulichter Prozess 700 für eine automatische Anpassung von Videoinhalten dargestellt, der einen synthetischen, im Wesentlichen dazu synchronisierten Audiostream umfasst. Prozess 800 veranschaulicht eine Trainingsphase, wobei Modelle für das Generator-Netzwerk trainiert werden können, das hier manchmal als Encoder/Decoder bezeichnet wird. Die Prozesse 700 und 800 sind jeweils als eine Ansammlung von Blöcken in einem Prozess veranschaulicht, die eine Reihenfolge von Operationen darstellen, die in Hardware, Software oder einer Kombination davon implementiert werden können. Im Zusammenhang mit Software stellen die Blöcke computerausführbare Anweisungen dar, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, die erwähnten Operationen ausführen. Im Allgemeinen können computerausführbare Anweisungen Routinen, Programme, Objekte, Komponenten, Datenstrukturen und dergleichen umfassen, die bestimmte Funktionen ausführen oder bestimmte abstrakte Typen von Daten implementieren. Die Reihenfolge, in der die Operationen beschrieben werden, ist nicht als Einschränkung zu verstehen, und eine beliebige Anzahl der beschriebenen Blöcke kann in beliebiger Reihenfolge kombiniert und/oder parallel ausgeführt werden, um den Prozess zu implementieren. Zu Diskussionszwecken werden die Prozesse 700 und 800 unter Bezugnahme auf die Architektur 100 von 1 beschrieben. Insbesondere wird davon ausgegangen, dass die Ton-Engine 132 von einem Ton-Engine-Server 120 gehostet wird, während es sich versteht, dass in anderen Ausführungsformen die Ton-Engine Teil einer Benutzereinheit sein kann (z. B. 102(1) bis 102(N)).
  • In Block 702 wird ein Videofeed von derTon-Engine 132 empfangen. In verschiedenen Ausführungsformen kann der Videoinhalt von einem Speicher für Videoinhalte 110 oder einer Benutzereinheit (z. B. 102(1) bis 102(N)) empfangen werden.
  • In Block 704 wird der Videofeed von der Ton-Engine 132 in eine Reihenfolge von Videosegmenten aufgeteilt. In einer Ausführungsform ist ein Videosegment ein einzelner Videorahmen, wodurch eine sehr feine Granularität bereitgestellt wird.
  • In Block 706 werden für jedes Videosegment die visuellen Merkmale des Videosegments extrahiert. Zum Beispiel werden ein oder mehrere Themen des Videosegments erkannt. In einigen Szenarien kann ein Videosegment ein dominantes Thema und ein oder mehrere nicht-dominante Themen beinhalten. Letztere können in der synthetischen Tonwellenform von der Ton-Engine 132 abgeschwächt werden.
  • In Block 708 wird auf Grundlage der extrahierten visuellen Merkmale ein vorhergesagtes Spektrogramm erzeugt.
  • In Block 710 wird auf Grundlage des vorhergesagten Spektrogramms von der Ton-Engine 132 eine synthetische Audiowellenform erzeugt. Zu diesem Zweck kann ein Vocoder, wie z. B. ein WaveNet-Vocoder, verwendet werden. Der Vocoder kann in einer Trainingsphase trainiert werden, indem historische Daten bereitgestellt werden, aus denen er lernen kann.
  • In Block 712 werden alle synthetischen Tonwellenformen in Serie verkettet, um eine synthetische Tonspur zu erzeugen, die mit dem Videofeed synchron ist.
  • Es wird nun auf 8 verwiesen, die ein Beispiel für eine iterative Trainingsphase beschreibt. In Block 802 empfängt die Ton-Engine 132 historische Daten 113, die einen oder mehrere Videofeeds umfassen, aus dem Speicher für historische Daten 112.
  • In Block 804 wird jeder Videofeed von der Ton-Engine 132 in eine Reihenfolge von Videosegmenten aufgeteilt.
  • In Block 806 werden für jedes Videosegment eines Videofeeds visuelle Merkmale des Videosegments von der Ton-Engine 132 extrahiert.
  • In Block 808 erzeugt die Ton-Engine 132 ein vorhergesagtes Spektrogramm auf Grundlage der extrahierten visuellen Merkmale.
  • In Block 810 wird ein reales Spektrogramm, das die Grundwahrheit darstellt, mit dem vorhergesagten Spektrogramm durch ein Diskriminator-Netzwerk der Ton-Engine 132 verglichen, um einen Grad der Ähnlichkeit zwischen den beiden Spektrogrammen zu erkennen.
  • Wenn in Block 812 ermittelt wird, dass der Ähnlichkeitsgrad über einem vorbestimmten Schwellenwert liegt (d. h. „JA“ in Bestimmungsblock 812), wird das vorhergesagte Spektrogramm als eine gültige Darstellung der extrahierten visuellen Merkmale erkannt. Das Spektrogramm kann dann verwendet werden, um synthetischen Ton für das Segment zu erzeugen (d. h. Block 824). Wird jedoch ermittelt, dass der Ähnlichkeitsgrad nicht über dem vorbestimmten Schwellenwert liegt (d. h. „NEIN“ im Bestimmungsblock 812), wird der Prozess mit Block 816 fortgesetzt, wobei das vorhergesagte Spektrogramm als falsche Darstellung erkannt und daher zurückgewiesen wird. Der iterative Prozess kann dann mit Block 808 fortgesetzt werden, wobei ein neues vorhergesagtes Spektrogramm erzeugt wird. Je mehr Training bereitgestellt wird, desto genauer werden die hier besprochenen Modelle.
  • Beispielhafte Rechenplattform
  • Wie oben besprochen, können Funktionen, die sich auf die automatische Anpassung eines Videostreams beziehen, um einen synthetischen Tonfluss einzuschließen, der im Wesentlichen dazu synchronisiert ist, unter Verwendung einer oder mehrerer Rechenvorrichtungen ausgeführt werden, die zur Datenkommunikation über drahtlose oder drahtgebundene Kommunikation verbunden sind, wie in 1 gezeigt. Eine beispielhafte Benutzereinheit 200 in Form einer mobilen Einheit wurde im Zusammenhang mit 2 erörtert. 9 veranschaulicht als funktionales Blockdiagramm eine Computer-Hardwareplattform, wie z. B. eine Benutzereinheit oder einen Ton-Engine-Server 120, der mit verschiedenen Netzwerkkomponenten kommunizieren kann.
  • Die Computerplattform 900 kann eine Zentralverarbeitungseinheit (CPU) 904, ein Festplattenlaufwerk (HDD) 906, einen Direktzugriffspeicher (RAM) und/oder einen Nur-LeseSpeicher (ROM) 908, eine Tastatur 910, eine Maus 912, eine Anzeige 914 und eine Kommunikationsschnittstelle 916 beinhalten, die mit einem Systembus 902 verbunden sind.
  • In einer Ausführungsform hat die Festplatte 906 Ressourcen, die das Speichern eines Programms beinhalten, das verschiedene Prozesse, wie die Ton-Engine 940, in der hier beschriebenen Weise ausführen kann. Die Ton-Engine 940 kann aus verschiedenen Modulen bestehen, die so konfiguriert sind, dass sie unterschiedliche Funktionen ausführen. Zum Beispiel kann es ein Modul 942 für visuelle Merkmale geben, das so konfiguriert ist, dass es visuelle Merkmale aus einem Segment (z. B. einem Frame) eines Videofeeds extrahiert. Es gibt ein Encoder/Decoder-Modul 944, das auf Grundlage der visuellen Merkmale, die aus einem Frame eines Videofeeds extrahiert wurden, ein vorhergesagtes Spektrogramm erstellt. Es gibt ein Vocoder-Modul 946, das das vorhergesagte Spektrogramm verwendet, um daraus ein synthetisches Audio-Inhaltssegment zu erzeugen. Es gibt ein Diskriminator-Modul 948, das ermittelt, ob das vorhergesagte Spektrogramm eine genaue Darstellung der visuellen Merkmale des Videorahmens ist. Es kann ein Interaktionsmodul 956 vorhanden sein, das mit einer oder mehreren Rechenvorrichtungen und Datenbanken interagiert, z. B. dem Speicher für Videoinhalte 110, dem Speicher für historische Daten 112 und den Benutzereinheiten 102(1) bis 102(N). Während die Module der Ton-Engine 940 oben im Zusammenhang mit der Festplatte 906 beschrieben wurden, ist zu beachten, dass eine oder mehrere Funktionen in Hardware ausgeführt werden können.
  • In einer Ausführungsform kann ein Programm, wie z. B. Apache™, zum Betrieb des Systems als Webserver gespeichert werden. In einer Ausführungsform kann auf der Festplatte 906 eine ausführende Anwendung gespeichert werden, die ein oder mehrere Bibliotheks-Softwaremodule beinhaltet, wie z. B. diejenigen für das Java™ Runtime Environment-Programm zur Verwirklichung einer JVM (Java™ Virtual Machine).
  • Zusammenfassung
  • Die hier dargestellten Komponenten, Schritte, Merkmale, Gegenstände, Nutzen und Vorteile sind lediglich veranschaulichend. Weder sie noch die diesbezüglichen Erörterungen sind dazu bestimmt, den Schutzumfang einzuschränken. Obwohl hier verschiedene Vorteile erörtert wurden, umfassen nicht alle Ausführungsformen notwendigerweise alle Vorteile. Sofern nicht anders angegeben, sind alle Messungen, Werte, Nennwerte, Positionen, Stärken, Größen und andere Spezifikationen, die in dieser Spezifikation, einschließlich der folgenden Ansprüche, aufgeführt sind, nicht exakt, sondern nur annähernd. Sie sollen einen angemessenen Bereich haben, der mit den Funktionen, auf die sie sich beziehen, und mit dem, was auf dem Gebiet, auf das sie sich beziehen, üblich ist, übereinstimmt.
  • Es sind auch zahlreiche andere Ausführungsformen denkbar. Diese beinhalten Ausführungsformen, die weniger, zusätzliche und/oder andere Komponenten, Schritte, Merkmale, Gegenstände, Nutzen und Vorteile aufweisen. Dies beinhaltet auch Ausführungsformen, bei denen die Komponenten und/oder Schritte anders angeordnet und/oder geordnet sind.
  • Aspekte der vorliegenden Offenlegung werden hier unter Bezugnahme auf Ablaufdiagramme und/oder Blockdiagramme eines Verfahrens, einer Vorrichtung (eines Systems) und von Computerprogrammprodukten gemäß den Ausführungsformen der vorliegenden Offenlegung beschrieben. Es versteht sich, dass jeder Schritt der veranschaulichten Ablaufdiagramme und/oder Blockdiagramme und Kombinationen von Blöcken in den Anrufablaufdiagrammen und/oder Blockdiagrammen durch computerlesbare Programmanweisungen implementiert werden kann.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Computers, eines Spezial-Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Anweisungen, die über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zur Implementierung der im Anrufablaufdiagramm-Prozess und/oder im Blockdiagramm-Block oder in den Blöcken angegebenen Funktionen/Arbeiten schaffen. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Vorrichtungen anweisen kann, in einer bestimmten Weise zu funktionieren, so dass das computerlesbare Speichermedium mit den darin gespeicherten Anweisungen einen Herstellungsgegenstand umfasst, der Anweisungen beinhaltet, die Aspekte der Funktion/des Vorgangs implementieren, die in dem Anrufablaufdiagramm- und/oder Blockdiagrammblock oder den Blocks angegeben sind.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Vorrichtung geladen werden, um zu bewirken, dass eine Reihe von Betriebsschritten auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführt wird, um einen computerimplementierten Prozess zu erzeugen, so dass die Anweisungen, die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführt werden, die Funktionen/Abläufe implementieren, die im Ablaufdiagramm des Anrufs und/oder im Blockdiagrammblock oder in den Blocks angegeben sind.
  • Die Flussdiagramme und Blockdiagramme in den Figuren veranschaulichen die Architektur, Funktionalität und Operation möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Offenlegung. In dieser Hinsicht kann jeder Block in den Ablaufdiagrammen oder Blockdiagrammen ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Implementierung der angegebenen logischen Funktion(en) umfassen. In einigen alternativen Implementierungen können die in den Blöcken angegebenen Funktionen in einer anderen als der in den Figuren zu beachtenden Reihenfolge erfolgen. So können beispielsweise zwei nacheinander gezeigte Blöcke in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, je nach der betreffenden Funktionalität. Es ist auch zu beachten, dass jeder Block in den Ablaufdiagrammen und/oder der Ablaufdiagramm-Darstellung sowie die Kombinationen von Blöcken in den Ablaufdiagrammen und/oder der Ablaufdiagramm-Darstellung durch Spezial-Computerbasierte Systeme implementiert werden können, die die angegebenen Funktionen oder Vorgänge ausführen oder Kombinationen von Spezial-Computern und Anweisungen ausführen.

Claims (11)

  1. Ein computer-implementiertes Verfahren, das folgende Schritte umfasst: Empfangen eines Videofeeds; Aufteilen des Videofeeds in eine Reihenfolge von Videosegmenten; für jedes Videosegment: Extrahieren visueller Merkmale des Videosegments; Erzeugen eines vorhergesagten Spektrogramms basierend auf den extrahierten visuellen Merkmalen; und Erzeugen einer synthetischen Audiowellenform aus dem vorhergesagten Spektrogramm; und Verketten aller synthetischen Audiowellenformen des Videofeeds, um eine synthetische Tonspur zu erzeugen, die mit dem Videofeed synchronisiert ist.
  2. Verfahren nach Anspruch 1, wobei jedes Videosegment ein Videorahmen ist.
  3. Verfahren nach Anspruch 1, wobei das Extrahieren visueller Merkmale in dem Videosegment das Ermitteln eines oder mehrerer Themen des Videosegments umfasst.
  4. Verfahren nach Anspruch 1, wobei die visuellen Merkmale des Videosegments ein dominantes visuelles Merkmal und ein oder mehrere nicht-dominante visuelle Merkmale umfassen.
  5. Verfahren nach Anspruch 4, wobei eine synthetische Audiowellenform, die mit dem dominanten Merkmal verknüpft ist, hervorgehoben wird, während jede synthetische Audiowellenform, die mit dem einen oder den mehreren nicht-dominanten visuellen Merkmalen verknüpft ist, abgeschwächt wird.
  6. Verfahren nach Anspruch 1, wobei die Ermittlung im Wesentlichen in Echtzeit ausgeführt wird.
  7. Verfahren nach Anspruch 1, wobei das Erzeugen eines vorhergesagten Spektrogramms Folgendes umfasst: Bereitstellen der extrahierten visuellen Merkmale in einem Generator, der in der Lage ist, das vorhergesagte Spektrogramm auf Grundlage der extrahierten visuellen Merkmale zu erzeugen.
  8. Verfahren nach Anspruch 7, wobei das Netzwerk des Generators während einer Trainingsphase trainiert wird, die Folgendes beinhaltet: Empfangen von historischen Daten, die ein oder mehrere historische Videofeeds umfassen; für jeden historischen Videofeed Aufteilen des Videofeeds in eine Reihenfolge von Videosegmenten; für jedes Videosegment eines historischen Videofeeds: Extrahieren visueller Merkmale in dem Videosegment; Erzeugen eines vorhergesagten Spektrogramms basierend auf den extrahierten visuellen Merkmalen; Vergleichen eines realen Spektrogramms mit dem vorhergesagten Spektrogramm durch ein Diskriminator-Netzwerk, um einen Grad der Ähnlichkeit zu ermitteln; und nach der Ermittlung, dass der Ähnlichkeitsgrad über einem vorbestimmten Schwellenwert liegt, Erkennen des vorhergesagten Spektrogramms als eine gültige Darstellung der extrahierten visuellen Merkmale.
  9. Verfahren nach Anspruch 1, wobei: das Verfahren auf einer Rechenvorrichtung implementiert wird, die ein Benutzereinheit ist; eine Kamera mit dem Prozessor verbunden ist; und der Videofeed von der Kamera empfangen wird.
  10. Rechenvorrichtung, die Mittel umfasst, die geeignet sind, alle Schritte des Verfahrens gemäß irgendeinem vorangehenden Anspruch auszuführen.
  11. Computerprogramm, das Anweisungen zum Ausführen aller Schritte des Verfahrens gemäß irgendeinem vorangehenden Anspruch des Verfahrens umfasst, wenn das Computerprogramm auf einem Computersystem ausgeführt wird.
DE112020002858.5T 2019-07-30 2020-07-14 Synchronisierte tonerzeugung aus videos Pending DE112020002858T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/526,990 2019-07-30
US16/526,990 US11276419B2 (en) 2019-07-30 2019-07-30 Synchronized sound generation from videos
PCT/IB2020/056602 WO2021019342A1 (en) 2019-07-30 2020-07-14 Synchronized sound generation from videos

Publications (1)

Publication Number Publication Date
DE112020002858T5 true DE112020002858T5 (de) 2022-03-24

Family

ID=74228548

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020002858.5T Pending DE112020002858T5 (de) 2019-07-30 2020-07-14 Synchronisierte tonerzeugung aus videos

Country Status (6)

Country Link
US (1) US11276419B2 (de)
JP (1) JP7475423B2 (de)
CN (1) CN114127847A (de)
DE (1) DE112020002858T5 (de)
GB (1) GB2600600B (de)
WO (1) WO2021019342A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11276419B2 (en) * 2019-07-30 2022-03-15 International Business Machines Corporation Synchronized sound generation from videos
US11358063B2 (en) * 2020-03-06 2022-06-14 International Business Machines Corporation Generation of audience appropriate content
US11381888B2 (en) * 2020-04-14 2022-07-05 Sony Interactive Entertainment Inc. AI-assisted sound effect generation for silent video
US11694084B2 (en) 2020-04-14 2023-07-04 Sony Interactive Entertainment Inc. Self-supervised AI-assisted sound effect recommendation for silent video
US11615312B2 (en) 2020-04-14 2023-03-28 Sony Interactive Entertainment Inc. Self-supervised AI-assisted sound effect generation for silent video using multimodal clustering
US11659217B1 (en) * 2021-03-29 2023-05-23 Amazon Technologies, Inc. Event based audio-video sync detection
CN112990356B (zh) * 2021-04-16 2021-08-03 广东众聚人工智能科技有限公司 一种视频实例分割***和方法
CN114189738B (zh) * 2021-12-17 2023-06-30 中国传媒大学 音效合成方法、装置、电子设备及存储介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657426A (en) * 1994-06-10 1997-08-12 Digital Equipment Corporation Method and apparatus for producing audio-visual synthetic speech
US6249292B1 (en) * 1998-05-04 2001-06-19 Compaq Computer Corporation Technique for controlling a presentation of a computer generated object having a plurality of movable components
US6631403B1 (en) * 1998-05-11 2003-10-07 At&T Corp. Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems
US6754389B1 (en) * 1999-12-01 2004-06-22 Koninklijke Philips Electronics N.V. Program classification using object tracking
US6539354B1 (en) * 2000-03-24 2003-03-25 Fluent Speech Technologies, Inc. Methods and devices for producing and using synthetic visual speech based on natural coarticulation
US20070250597A1 (en) * 2002-09-19 2007-10-25 Ambient Devices, Inc. Controller for modifying and supplementing program playback based on wirelessly transmitted data content and metadata
US20080138029A1 (en) * 2004-07-23 2008-06-12 Changsheng Xu System and Method For Replay Generation For Broadcast Video
US8879856B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
WO2008094882A2 (en) * 2007-01-30 2008-08-07 Mark Covelli Interactive baby timer system and method
US20080263612A1 (en) * 2007-04-18 2008-10-23 Cooper J Carl Audio Video Synchronization Stimulus and Measurement
JP4683116B2 (ja) * 2008-11-12 2011-05-11 ソニー株式会社 情報処理装置、情報処理方法、情報処理プログラムおよび撮像装置
EP2433229A4 (de) 2009-05-21 2016-11-30 Vijay Sathya System und verfahren zur ermöglichung der identifizierung eines richtigen eireignis-tons entsprechend einem stoss-bezogenen ereignis
JP5482042B2 (ja) * 2009-09-10 2014-04-23 富士通株式会社 合成音声テキスト入力装置及びプログラム
US20130124984A1 (en) * 2010-04-12 2013-05-16 David A. Kuspa Method and Apparatus for Providing Script Data
US9332319B2 (en) * 2010-09-27 2016-05-03 Unisys Corporation Amalgamating multimedia transcripts for closed captioning from a plurality of text to speech conversions
US9317500B2 (en) * 2012-05-30 2016-04-19 Audible, Inc. Synchronizing translated digital content
US11716300B2 (en) * 2013-02-13 2023-08-01 Guy Ravine Techniques for optimizing the display of videos
US9338420B2 (en) 2013-02-15 2016-05-10 Qualcomm Incorporated Video analysis assisted generation of multi-channel audio data
EP2899987A1 (de) * 2014-01-22 2015-07-29 Thomson Licensing Synchronisation einer Wiedergabe von Audio- oder Audio- und Videoinhalt
US9888296B2 (en) 2015-03-27 2018-02-06 Bygge Technologies Inc. Real-time wireless synchronization of live event audio stream with a video recording
WO2017079735A1 (en) 2015-11-05 2017-05-11 Video Pipe Inc. Method and device for capturing synchronized video and sound across multiple mobile devices
WO2017124871A1 (zh) 2016-01-22 2017-07-27 上海肇观电子科技有限公司 一种呈现多媒体信息的方法及装置
US10397516B2 (en) * 2016-04-29 2019-08-27 Ford Global Technologies, Llc Systems, methods, and devices for synchronization of vehicle data with recorded audio
WO2019008580A1 (en) 2017-07-03 2019-01-10 Yissum Research Development Company Of The Hebrew University Of Jerusalem Ltd. METHOD AND SYSTEM FOR IMPROVING A VOICE SIGNAL OF A HUMAN SPEAKER IN A VIDEO USING VISUAL INFORMATION
US10057537B1 (en) * 2017-08-18 2018-08-21 Prime Focus Technologies, Inc. System and method for source script and video synchronization interface
DE102017123068A1 (de) 2017-10-05 2019-04-11 Mathias Götz System zum Synchronisieren von Ton- oder Videoaufnahmen
CN108566558B (zh) 2018-04-24 2023-02-28 腾讯科技(深圳)有限公司 视频流处理方法、装置、计算机设备及存储介质
US10834295B2 (en) * 2018-08-29 2020-11-10 International Business Machines Corporation Attention mechanism for coping with acoustic-lips timing mismatch in audiovisual processing
CN109344780A (zh) * 2018-10-11 2019-02-15 上海极链网络科技有限公司 一种基于声音和视觉的多模态视频场景分割方法
US20200126583A1 (en) * 2018-10-19 2020-04-23 Reduct, Inc. Discovering highlights in transcribed source material for rapid multimedia production
CN109194899A (zh) 2018-11-22 2019-01-11 维沃移动通信有限公司 一种音视频同步的方法和终端
CN109635676B (zh) * 2018-11-23 2020-12-11 清华大学 一种从视频中定位音源的方法
US11218668B2 (en) * 2019-05-09 2022-01-04 Present Communications, Inc. Video conferencing method
US11276419B2 (en) * 2019-07-30 2022-03-15 International Business Machines Corporation Synchronized sound generation from videos

Also Published As

Publication number Publication date
JP2022543986A (ja) 2022-10-17
US20210035599A1 (en) 2021-02-04
JP7475423B2 (ja) 2024-04-26
WO2021019342A1 (en) 2021-02-04
US11276419B2 (en) 2022-03-15
GB2600600B (en) 2022-10-26
GB2600600A (en) 2022-05-04
CN114127847A (zh) 2022-03-01
GB202201198D0 (en) 2022-03-16

Similar Documents

Publication Publication Date Title
DE112020002858T5 (de) Synchronisierte tonerzeugung aus videos
DE202017106839U1 (de) Erzeugen von Präsentationsfolien mit destilliertem Inhalt
DE102017125396A1 (de) Abfrage-Endpunktbestimmung auf Basis der Lippenerkennung
DE112018006101T5 (de) Dynamische Anmeldung einer benutzerdefinierten Aufweck-Schlüsselphrase für ein sprachfähiges Computersystem
DE102019001775A1 (de) Nutzung von Maschinenlernmodellen zur Bestimmung von Mundbewegungen entsprechend Live-Sprache
DE112021004261T5 (de) Dualmodale beziehungsnetzwerke zur audiovisuellen ereignislokalisierung
CN106104674A (zh) 混合语音识别
DE112015004185T5 (de) Systeme und Verfahren zur Wiederherstellung von Sprachkomponenten
DE202017007529U1 (de) Differenzmetrik für auf maschinellem Lernen basierende Verarbeitungssysteme
DE112019007677T5 (de) Posenvorhersageverfahren, Modelltrainingsverfahren und Vorrichtung
DE102020100497A1 (de) Systeme und verfahren von fahrzeugbasierter echtzeitanalyse und verwendungen davon
DE102019104304B4 (de) Dynamische Anpassung von Sprachverständnissystemen an akustische Umgebungen
DE112018001711T5 (de) Generator von Unterrichtsnotizen auf Blickrichtungsgrundlage
DE112021002453T5 (de) Iteratives trainieren eines modells für maschinelles lernen
DE112021006096T5 (de) Verändern der benutzeroberfläche einer anwendung während einer aufzeichnungssitzung
DE102020007344A1 (de) Sicheres Audiowasserzeichenmarkieren auf Grundlage neuronaler Netzwerke
DE112016002055T5 (de) Vorabrufcodierung für anwendungs-streaming
DE102021125184A1 (de) Persönliche vortragsempfehlungen unter verwendung von zuhörerreaktionen
DE112019007274T5 (de) Automatisches untertiteln hörbarer teile von inhalten auf einem computergerät
DE102018131713A1 (de) Routing von Audioströmen basierend auf semantisch erzeugten Ergebnismengen
DE102022131824A1 (de) Visuelle Spracherkennung für Digitalvideos unter Einsatz generativ-adversativen Lernens
DE102014200570A1 (de) Verfahren und System zur Erzeugung eines Steuerungsbefehls
WO2022013045A1 (de) Verfahren zum automatischen lippenlesen mittels einer funktionskomponente und zum bereitstellen der funktionskomponente
DE102021116409A1 (de) Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke
DE112020005535T5 (de) Selbstüberwachter sequentieller Variations-Autocodierer für entflochtene Datenerzeugung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence