DE112021006157T5 - Videocodieren durch nicht-salienz-komprimierung für live-streaming von hochauflösenden videos in einer übertragung niedriger bandbreite - Google Patents

Videocodieren durch nicht-salienz-komprimierung für live-streaming von hochauflösenden videos in einer übertragung niedriger bandbreite Download PDF

Info

Publication number
DE112021006157T5
DE112021006157T5 DE112021006157.7T DE112021006157T DE112021006157T5 DE 112021006157 T5 DE112021006157 T5 DE 112021006157T5 DE 112021006157 T DE112021006157 T DE 112021006157T DE 112021006157 T5 DE112021006157 T5 DE 112021006157T5
Authority
DE
Germany
Prior art keywords
data
salient
salient data
video
machine learning
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
DE112021006157.7T
Other languages
English (en)
Inventor
Umar Asif
Lenin Mehedy
Jianbin Tang
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 DE112021006157T5 publication Critical patent/DE112021006157T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234318Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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/816Monomedia components thereof involving special video data, e.g 3D video
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Ein computerumgesetztes Verfahren zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite enthält ein Identifizieren von salienten Daten und nicht salienten Daten in einem hochauflösenden Videostream. Die salienten Daten und die nicht salienten Daten werden segmentiert. Die nicht salienten Daten werden in eine niedrigere Auflösung komprimiert. Die salienten Daten und die komprimierten nicht salienten Daten werden in einer Übertragung mit niedriger Bandbreite übertragen.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Die vorliegende Offenbarung bezieht sich allgemein auf Videokomprimierung und genauer auf die Techniken zur Videoverbesserung in Anwendungen von Übertragung niedriger Bandbreite.
  • Beschreibung des Standes der Technik
  • Es gab einen rasanten Anstieg in der Menge von hochauflösenden Videodaten im Internet, insbesondere mit den verringerten Kosten leistungsstärkerer Einheiten und dem Wachstum von Anwendungen zum Erzeugen, Betrachten und Übertragen von Inhalt. Es wird geschätzt, dass die Anzahl von Menschen, die hochauflösende Videodaten übertragen, die 100 Millionen Menschen übersteigt, große Bandbreitenkosten mit sich bringt. Insbesondere, da ständig ansteigende Zahlen von Benutzern gleichzeitig Live-Ereignisse betrachten, wachsen die Bandbreitenkosten zum Bereitstellen eines guten Dienstes für so viele Benutzer weiter.
  • Derzeit wurden effiziente auf Videocodec beruhende Decodiertechniken in einem Versuch erzeugt, Bandbreitenkosten zu verringern. Zum Beispiel können Videocodier/-decodiertechniken wie beispielsweise H.264 eine Videogröße für Videos mit einer signifikanten Menge von zeitlicher Redundanz effektiv komprimieren. Es gibt jedoch Probleme mit solchen Typen von Videocodier/-decodiertechniken, mit verlorenen Informationen die während der Komprimierungs-Dekomprimierungs-Prozesse auftreten, welche die Qualität des Videos verringern. Ein weiteres Problem mit solchen Typen von Videocodier/-decodiertechniken ist ihre rechentechnische Komplexität. Leistungsstarke Hardware wird einbezogen, um solche Videocodier/-decodiertechniken umzusetzen, was ein Problem hinsichtlich der Umsetzung auf Einheiten wie beispielsweise Mobiltelefonen darstellt.
  • Manche Versuche beim Lösen des Bandbreitenkostenproblems enthalten eine adaptive Videokomprimierung einer grafischen Benutzeroberfläche unter Verwendung der Anwendungsmetadaten. Ein struktureller Abschnitt oder semantischer Abschnitt eines Videosignals ist die Aufgabe einer adaptiven Codiereinheit einer identifizierten Bildregion. Diese Protokoll erfordert noch Endeinheiten, die fähig sind, eine komplexe Dekomprimierung und Glättung gemäß der Analyse der Anwendungsmetadaten durchzuführen.
  • Andere Versuche enthalten ein Datenbeschneiden für die Videokomprimierung unter Verwendung beispielgestützter Superauflösung. Video-Patches werden aus einem Eingangsvideo extrahiert, in einem Clustering-Verfahren gruppiert, und repräsentative Patches werden in Patch-Einzelbilder gepackt. Das ursprüngliche Video wird verkleinert und zusammen oder zusätzlich zu Patch-Einzelbildern gesendet. An dem Decodierende werden reguläre Videoeinzelbilder vergrößert und die Patches mit niedriger Auflösung werden durch Patches aus einer Patch-Bibliothek ersetzt. Die Ersetzung wird nur vorgenommen, wenn ein geeignetes Patch verfügbar ist.
  • Es gab auch Versuche, künstliche Intelligenz (KI) zu verwenden, um Probleme bei der Videoverbesserung und -übertragung zu lösen. Zum Beispiel wurde Dezimierung in hochauflösendem Video an einem Videoquellenende ausgeführt, um ein niedrigauflösendes Video zu erhalten. Das niedrigauflösende Video wird in einem bestehenden Videocodiermodus komprimiert und übertragen, was den Videodatenverkehr in hohem Maße verringert. An einem Empfangsende empfängt und rekonstruiert der Benutzer das niedrigauflösende Video durch Anwenden von tiefem Lernen auf ein superauflösendes Bildrekonstruktionsverfahren, um das niedrigauflösende Video in ein hochauflösendes Video mit einer Verringerung der Videoübertragungs-Bandbreitenkosten von 50 % wiederherzustellen. Somit wird die Komprimierung und Rekonstruktion an einem gesamten Video ohne Kenntnis von salienten und nicht salienten Informationen durchgeführt.
  • Es bleibt ein Bedarf, Videokomprimierungs/-codierungs- und -verbesserungstechniken in Übertragungsanwendungen mit niedriger Bandbreite zu entwickeln.
  • KURZDARSTELLUNG
  • Gemäß einer bestimmten Ausführungsform wird ein computerumgesetztes Verfahren zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite vorgestellt; das Verfahren weist ein Identifizieren von salienten Daten und nicht salienten Daten in einem hochauflösenden Videostream. Die salienten Daten und die nicht salienten Daten werden segmentiert, und die nicht salienten Daten werden in eine niedrigere Auflösung komprimiert. Die salienten Daten und die komprimierten nicht salienten Daten werden in einer Übertragung mit niedriger Bandbreite übertragen. Das computerumgesetzte Verfahren gestattet vorteilhaft die Übertragung hochauflösender Daten in einer Übertragung mit niedriger Bandbreite mit einem weniger komplizierten Prozess, der die nicht salienten Daten komprimiert.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Codieren der nicht salienten Daten vor einem Durchführen der Komprimierung der nicht salienten Daten. Das Codieren setzt die Daten in ein Format, das zur Übertragung in der niedrigen Bandbreite geeignet ist.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner die salienten Daten bei einem geringeren Komprimierungsverhältnis als die nicht salienten Daten vor dem Übertragen der salienten Daten und der komprimierten nicht salienten Daten. Die salienten Daten sind oft die am genausten beobachteten Daten, und falls sie aufgrund von Bandbreitenproblemen nicht in ihrer hochauflösenden Form übertragen werden, kann eine Komprimierung, die geringer als die nicht salienten Daten ist, eine Rekonstruktion an dem Empfangsende erleichtern.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Identifizieren mindestens eines der nicht salienten Daten und der salienten Daten in dem Videostream durch ein Maschinenlernmodell. Die Verwendung des Maschinenlernmodells bringt eine erhöhte Effizienz und ein Identifizieren von salienten Daten und nicht salienten Daten unter Verwendung von Domänenwissen.
  • In einer bestimmten Ausführungsform ist das Maschinenlernmodell ein Generative Adversarial Network (GAN), und das computerumgesetzte Verfahren enthält ferner ein Trainieren des GAN-Maschinenlernmodells, um ein Identifizieren der nicht salienten Daten mit Daten von nicht salienten Merkmalen aus zuvor aufgezeichneten Videostreams durchzuführen. Das GAN-Maschinenlernmodell ist besonders effektiv beim Durchführen einer genauen Identifikation der salienten und nicht salienten Daten.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Bereitstellen des GAN-Maschinenlernmodells für eine Benutzereinheit vor dem Übertragen der salienten Daten und der komprimierten nicht salienten Daten des Videostreams an die Benutzereinheit. Der Benutzer erhält Zugang zu dem GAN-Modell, um einen Vorteil beim Rekonstruieren der niedrigauflösenden nicht salienten Daten in hochauflösende nicht saliente Daten zu haben und zum Kombinieren mit den salienten Daten, um das hochauflösende Video zu rekonstruieren.
  • In einer bestimmten Ausführungsform enthält das Identifizieren der salienten Daten ein Identifizieren domänenspezifischer Eigenschaften von Objekten in dem Videostream. Die Eigenschaften bestimmter Objekte können die Geschwindigkeit und Genauigkeit des Identifizierens salienter Daten erhöhen.
  • In einer bestimmten Ausführungsform enthält das Identifizieren der salienten Daten ein Anwenden eines domänenspezifischen Modells künstlicher Intelligenz (KI) für eines oder mehrere von Gesichtserkennung oder Objekterkennung. Das KI-Modell für Gesichtserkennung erhöht die Effizienz und Geschwindigkeit des Identifikationsvorgangs der salienten und nicht salienten Daten.
  • In einer bestimmten Ausführungsform enthält das Anwenden des domänenspezifischen Kl-Modells ein Identifizieren eines Restes der Informationen des Videostreams als die nicht salienten Daten.
  • In einer bestimmten Ausführungsform wird eine Mehrzahl von Videostreams mit jeweils unterschiedliche Ansichten eines oder mehrerer Objekte empfangen, und das Identifizieren und Segmentieren der salienten Daten und nicht salienten Daten wird einzeln für mindestens zwei jeweils unterschiedliche Ansichten durchgeführt, die übertragen werden. Die unterschiedlichen Kameraansichten bringen Benutzeransichten eine größere Flexibilität, und das Durchführen eines einzelnen Identifizierens und Segmentierens der Videodaten erhöht die Effizienz und die Auswahl einer bestimmten Ansicht.
  • In einer Ausführungsform enthält ein computerumgesetztes Verfahren zum Decodieren von Videodaten in mehrere Auflösungsformate ein Empfangen eines Videostreams mit salienten Daten und nicht salienten Daten. Die salienten Daten befinden sich in einem Format mit höherer Auflösung als die nicht salienten Daten. Eine Rekonstruktion wird an den nicht salienten Daten durchgeführt, um das Auflösungsformat zu vergrößern. Die salienten Daten und die rekonstruierten nicht salienten Daten werden rekombiniert, um einen Videostream in dem Format mit höherer Auflösung der salienten Daten zu bilden. Das Decodieren gestattet es den empfangenen komprimierten nicht salienten Daten, ihre Auflösung zu vergrößern, um mit den salienten Daten in einem hochauflösenden Video kombiniert zu werden.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Empfangen eines oder mehrerer von einer Verknüpfung zum Zugriff oder ausführbarem Code zum Laden eines Maschinenlernmodells eines Generative Adversarial Network (GAN), das trainiert ist, um nicht saliente Merkmale beruhend auf zuvor aufgezeichneten Videostreams zu identifizieren. Die nicht salienten Daten werden bei einer erhöhten Auflösung unter Verwendung des GAN-Maschinenlernmodells rekonstruiert, und das GAN-Maschinenlernmodell hat erhöhte Effizienzen beim Rekonstruieren des Videos in eine hochauflösende Auflösung.
  • In einer bestimmten Ausführungsform enthält der empfangene Videostream saliente Daten und nicht saliente Daten, die aus mehreren Ansichtspunkten erfasst werden, und das GAN-Maschinenlernmodell wird trainiert, um die salienten Daten auf Grundlage der mehreren Ansichtspunkte zu identifizieren. Die nicht salienten Daten werden in die höhere Auflösung der salienten Daten unter Verwendung des GAN-Maschinenlernmodells rekonstruiert, das an den mehreren Ansichtspunkten trainiert wird. Es gibt Vorteile, in der Lage zu sein, mehrere Ansichtspunkte zu besitzen, insbesondere bei Sportereignissen, und das GAN-Maschinenlernmodell erhöht die Effizienz eines Unterscheidens zwischen den salienten und nicht salienten Daten.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Empfangen mehrerer Übertragungen der salienten Daten und der nicht salienten Daten für jeden jeweiligen Ansichtspunkt, indem ein bestimmter Ansichtspunkt zur Anzeige als Reaktion auf eine Auswahl rekonstruiert wird. Die Auswählbarkeit unterschiedlicher Ansichtspunkte sorgt für eine erhöhte Nützlichkeit eines Datenbetrachtens.
  • In einer bestimmten Ausführungsform enthält das computerumgesetzte Verfahren ferner ein Teilen von Standortinformationen mit einem oder mehreren registrierten Benutzern; und ein Empfangen auswählbarer Ansichten der salienten Daten und der nicht salienten Daten, die durch den einen oder die mehreren registrierten Benutzter erfasst werden. Die Benutzer können vorteilhaft Ansichten unter sich aus unterschiedlichen Positionen in einer Arena, einem Theater usw. teilen.
  • In einer Ausführungsform enthält eine Datenverarbeitungseinheit zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite einen Prozessor, einen mit dem Prozessor gekoppelten Arbeitsspeicher, wobei der Arbeitsspeicher Anweisungen speichert, um den Prozessor zu veranlassen, Handlungen durchzuführen, einschließlich eines Identifizierens von salienten Daten und nicht salienten Daten in einem Videostream und eines Segmentierens des Videostreams in saliente Daten und die nicht salienten Daten. Die nicht salienten Daten werden codiert und komprimiert, und die salienten Daten und die komprimierten nicht salienten Daten werden übertragen. Die Computereinheit gestattet vorteilhaft die Übertragung hochauflösender Daten in einer Übertragung mit niedriger Bandbreite mit einem weniger komplizierten Vorgang, die nicht salienten Daten zu komprimieren. Es kann Einsparungen bei der Verarbeitungsleistung oder der erforderlichen Bandbreite zur Übertragung geben.
  • In einer bestimmten Ausführungsform enthält die Datenverarbeitungseinheit ein Maschinenlernmodell eines Generative Adversarial Network (GAN) in Kommunikation mit dem Arbeitsspeicher, und die Anweisungen veranlassen den Prozessor, zusätzliche Handlungen durchzuführen, einschließlich Trainieren des GAN-Maschinenlernmodells mit Trainingsdaten nicht salienter Merkmale auf Grundlage zuvor aufgezeichneter Videostreams, um das Identifizieren von mindestens den nicht salienten Daten durchzuführen. Das GAN-Maschinenlernmodell sorgt für einen effizienteren Betrieb mit verringerten Verarbeitungs- und Leistungsanforderungen.
  • In einer bestimmten Ausführungsform veranlasst die Datenverarbeitungseinheit den Prozessor, zusätzliche Handlungen durchzuführen, einschließlich eines Identifizierens der salienten Daten, was ein Anwenden eines domänenspezifischen Modells künstlicher Intelligenz (KI) für eines oder mehrere von Gesichtserkennung oder Objekterkennung aufweist. Die Verwendung von KI bei Gesichts- oder Objekterkennung stellt eine erhöhte Genauigkeit und Effizienz beim Identifizieren der salienten und nicht salienten Daten bereit.
  • In einer bestimmten Ausführungsform enthält die Datenverarbeitungseinheit zusätzliche Anweisungen, um den Prozessor zu veranlassen, zusätzliche Handlungen durchzuführen, einschließlich Übertragen unterschiedlicher Kameraansichten der salienten Daten und der nicht salienten Daten an jeweilige Empfangseinheiten. Die unterschiedlichen Kameraansichten erhöhen die Effektivität jeder zugeordneten Benutzereinheit durch Bereitstellen der unterschiedlichen Ansichten eines erfassten Ereignisses.
  • Diese und weitere Merkmale werden anhand der folgenden detaillierten Beschreibung veranschaulichender Ausführungsformen davon ersichtlich, die in Verbindung mit den begleitenden Zeichnungen zu lesen ist.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Zeichnungen sind veranschaulichende Ausführungsformen. Sie veranschaulichen nicht alle Ausführungsformen. Andere Ausführungsformen können zusätzlich oder stattdessen verwendet werden. Details, die ersichtlich oder unnötig sein können, können weggelassen sein, um Platz zu sparen oder für eine effektivere Veranschaulichung. Manche Ausführungsformen können mit zusätzlichen Komponenten oder Schritten und/oder ohne alle Komponenten oder Schritte, die veranschaulicht sind, ausgeführt werden. Wenn dieselbe Zahl in unterschiedlichen Zeichnungen erscheint, bezieht sie sich auf dieselben oder ähnliche Komponenten oder Schritte.
    • 1 stellt konsistent mit einer veranschaulichenden Ausführungsform einen architektonischen Überblick eines Systems zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite bereit.
    • 2 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Datensegmentierungsvorgang des Videos eines ersten Sportereignisses, bei dem saliente Daten identifiziert werden.
    • 3 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Datensegmentierungsvorgang des Videos eines zweiten Sportereignisses, bei dem saliente Daten identifiziert werden.
    • 4A veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Vorgang eines Erkennens salienter Daten aus mehreren Ansichtspunkten.
    • 4B veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform das Decodieren und die Rekonstruktion der mehreren Ansichtspunkte salienter Daten, die in 4A erkannt wurden.
    • 5 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform ein Benutzerenddecodieren, das eine Salienzverbesserung mit mehreren Ansichten enthält.
    • 6 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan, der ein computerumgesetztes Verfahren zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite veranschaulicht.
    • 7 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan, der die Verwendung von Maschinenlernmodellen für ein computerumgesetztes Verfahren zum Codieren von Videostreams für hochauflösendes Video in einer Übertragung mit niedriger Bandbreite veranschaulicht.
    • 8 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan, der Vorgänge zum Decodieren und die Rekonstruktion veranschaulicht.
    • 9 ist konsistent mit einer veranschaulichenden Ausführungsform eine funktionelle Blockschaubildveranschaulichung einer Computerhardwareplattform, die mit Agenten beim Durchführen einer gemeinschaftlichen Aufgabe Daten austauschen kann.
    • 10 stellt konsistent mit einer veranschaulichenden Ausführungsform eine veranschaulichende Cloud-Computing-Umgebung dar.
    • 11 stellt konsistent mit einer veranschaulichenden Ausführungsform einen Satz funktioneller Abstraktionsschichten dar, die durch eine Cloud-Computing-Umgebung bereitgestellt werden.
  • DETAILLIERTE BESCHREIBUNG
  • Überblick
  • In der folgenden detaillierten Beschreibung werden mittels Beispielen zahlreiche spezifische Details dargelegt, um ein umfassendes Verständnis der relevanten Lehren zu ermöglichen. Es sollte sich jedoch verstehen, dass die vorliegenden Lehren ohne solche Details ausgeführt werden können. In anderen Fällen wurden allgemein bekannte Verfahren, Prozeduren, Komponenten und/oder Schaltkreise auf einer relativ hohem Ebene ohne Detail beschrieben, um ein unnötiges Verunklaren von Aspekten der vorliegenden Lehren zu vermeiden.
  • In der vorliegenden Offenbarung entspricht der Begriff einer „niedrigen Bandbreite“ einer drahtlosen Datenübertragung bei etwa 2 kbit/s (z.B. 1G). Ein „Bereich hoher Bandbreite“ entspricht einer drahtgebundenen/drahtlosen Datenübertragung bis zu 1 Gbit/s oder höher (z.B. Ethernet oder 5G). Bezugnahmen hierin auf Videoauflösungen entsprechen QVGA (240 x 320 Pixel) für niedrige Auflösung und 4K (3840 x 2160 Pixel) für hohe Auflösung.
  • Das computerumgesetzte Verfahren und die Einheit der vorliegenden Offenbarung stellen eine Verbesserung auf den Gebieten der Bildverarbeitung und Videoübertragung bereit, insbesondere durch Übertragen des salienten Datenabschnitts von hochauflösenden Videodaten über eine Übertragung mit niedriger Bandbreite ohne Komprimieren der salienten Daten und ohne zu einem Verlust an Qualität bei einem Benutzerende zu führen. Durch Komprimieren der nicht salienten Daten und Belassen der salienten Daten für die Übertragung in ihrer hochauflösenden Form, werden die Effizienz und Qualität der Videodaten erhöht. Das System und das Verfahren der vorliegenden Offenbarung sind weniger kompliziert, was verglichen mit einem Komprimieren gesamter Videostreams zur Übertragung zu einem verringerten Leistungsverbrauch und verringerter erforderlicher Verarbeitungsfähigkeit führt. Die Videoqualität leidet unter einem Verlust nicht auf die Weise wie dies eine herkömmliche Komprimierung des gesamten Videostreams tun würde. Es wird unter Verwendung der Lehren der vorliegenden Offenbarung auch eine Zeiteinsparung realisiert, da weniger Daten komprimiert und dekomprimiert werden.
  • Zum Beispiel sind in bestimmten veranschaulichenden Ausführungsformen der vorliegenden Offenbarung die domänenspezifischen Informationen (z.B. salienten Informationen) höchst relevant für den Endbenutzer und werden daher in ihrer ursprünglichen Auflösung belassen. Die anderen Informationen aus dem Video werden komprimiert, übertragen und an dem Benutzerende rekonstruiert. Die vorliegende Offenbarung ist eine Verbesserung gegenüber Verfahren, die ohne Domänenkenntnis Patches extrahieren und verwendet diese Patches um eine Abtastratenerhöhung an dem Video durchzuführen.
  • Beispielarchitektur
  • 1 stellt konsistent mit einer veranschaulichenden Ausführungsform einen architektonischen Überblick 100 eines Systems zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite bereit.
  • 1 zeigt gemäß der vorliegenden Offenbarung ein Serverende 105, das die hochauflösenden Daten für eine Übertragung mit niedriger Bandbreite codiert. Die hochauflösende Videoerfassung 110 ist typischerweise eine Kamera, aber wenn das Ereignis zuvor aufgezeichnet wäre, könnte das erfasste Video durch eine Speicherungseinheit oder eine Videowiedergabevorrichtung bereitgestellt werden. Bei 115 findet eine Datensegmentierung statt, um die Daten in saliente Daten 120 und nicht saliente Daten 125 zu segmentieren. Saliente Daten können domänenrelevante Daten enthalten, wie beispielsweise Objekte von Interesse oder benutzermarkierte Regionen von Interesse. Saliente Daten können auch Objekte in Bewegung sein. Zum Beispiel würden in einem Fußballspiel mindestens die Spieler und der Ball als saliente Daten betrachtet werden, wohingegen die Menge und die Arena als nicht saliente Daten betrachtet werden würden. Nicht saliente Daten sind Daten mit wenig Bedeutung, wie beispielsweise, ohne Einschränkung, statische Informationen in Videoeinzelbildern, Massenszenen, Hintergründe usw. Ein Codierer 130 ist so konfiguriert, dass er ein Codieren und eine Komprimierung an den nicht salienten Daten durchführt.
  • Das Ergebnis ist, dass die codierten und komprimierten nicht salienten Daten nun niedrigauflösende nicht saliente Daten sind, insbesondere aufgrund des Komprimierungsprozesses. Die salienten Daten in dieser veranschaulichenden Ausführungsform bleiben in der Form von hochauflösenden salienten Daten. Somit leiden die salienten Daten nicht unter Komprimierungsverlusten, die auftreten, wenn Daten komprimiert werden, und die wahrgenommene Qualität des Videos bleibt hoch, da Betrachter typischerweise die salienten Daten beobachten und sich oft nicht auf die Hintergrunddaten konzentrieren. Durch Komprimieren der nicht salienten Daten ist die Verringerung ausreichend, um das Video unter Verwendung von Streaming mit niedriger Bandbreite zu übertragen. Da darüber hinaus die nicht salienten Daten oft dazu neigen, einen Großteil der Sichtfläche einzunehmen (wie in 2 und 3 gezeigt), stellt das Servercodieren und die Serverkomprimierung der vorliegenden Offenbarung, wie beispielsweise in 1 gezeigt, eine effiziente Weise bereit, hochauflösendes Video durch Streaming mit niedriger Bandbreite zu übertragen. Das Server-Endcodieren und die Server-Endkomprimierung, wie hierin erörtert, erfordert nicht die großen Rechenressourcen, die für herkömmliche Komprimierung von hochauflösendem Video erforderlich sind.
  • Noch Bezug nehmend auf 1 empfängt das Benutzerende 155 die Übertragung mit niedriger Bandbreite 140 und führt ein Decodieren und eine Rekonstruktion durch. In einer Übertragung mit einer einzelnen Ansicht, die mit einer einzelnen Kamera 160 erfasst wurde, decodiert die Benutzerendeinheit den Videostream in die nicht salienten Daten in einem Format mit niedrigerer Auflösung und die salienten Daten in das Format mit höherer Auflösung (annehmend, dass die salienten Daten für die Übertragung codiert, aber nicht komprimiert wurden). Die nicht salienten Daten werden in das Format mit höherer Auflösung der salienten Daten rekonstruiert. Die salienten Daten und die rekonstruierten nicht salienten Daten werden kombiniert, um einen Videostream 185 in dem Format mit höherer Auflösung der salienten Daten zu bilden, der ausgegeben wird.
  • In bestimmten veranschaulichenden Ausführungsformen spielt künstliche Intelligenz eine Rolle am Serverende und/oder am Benutzerende. Am Serverende wird ein Maschinenlernmodell trainiert, um saliente Daten und nicht saliente Daten zu identifizieren (z.B. Datensegmentierung). Das Maschinenlernmodell kann mit zuvor aufgezeichneten Videos/Bildern nicht salienter Informationen trainiert werden. Zum Beispiel kann im Falle, dass ein Fußballspiel gestreamt wird, ein vorheriges Aufzeichnen der Menge, der Arena, des Feldes usw. verwendet werden, um das Maschinenlernmodell dahingehend zu trainieren, welche erfassten Videodaten nicht saliente Daten sind, sowie Trainieren des Maschinenlernmodells, um die salienten Daten zu identifizieren. Ein bestimmter Weg zum Erkennen salienter Daten ist das Erkennen von Bewegung. Zum Beispiel sind in einem Fußballspiel die Spieler, der Fußball und die Schiedsrichter üblicherweise in Bewegung.
  • Die salienten Daten entsprechen domänenspezifischen Eigenschaften (z.B. Spieler in einem Fußballspiel), die dem System durch eine Benutzerschnittstelle bereitgestellt werden können (z.B. Höhepunkte/Anmerkungen zu dem Video), oder sie können automatisch durch domänenspezifische KI-Modelle für Gesichts-/Objekterkennung erkannt werden. Die verbleibenden Informationen in dem Video werden als nicht salient oder Hintergrund angesehen. Insbesondere am Serverende wird ein Maschinenlernmodell eines Generative Adversarial Network (GAN) trainiert, um nicht saliente Merkmale zu erkennen (z.B. eine Menge in der Arena).
  • Mit weiterer Hinsicht auf das Benutzerende 155 sendet in einer veranschaulichenden Ausführungsform, wenn sich ein Benutzer bei dem System registriert, das System das trainierte Modell (GAN) an den Benutzer, sodass anschließend die nicht salienten Merkmale rekonstruiert werden können. Ein weiterer Weg wie der Benutzer auf das GAN zugreifen kann, ist durch eine Verknüpfung, da das Benutzerende 155 möglicherweise nicht den Speicherplatz oder die Verarbeitungsleistung besitzt, um das GAN zu empfangen und zu betreiben.
  • Mit fortgesetzter Bezugnahme auf 1 wird gezeigt, dass mehrere Kameras 160 für eine Salienzverbesserung mit mehreren Ansichten 165 in Verbindung mit einem Prozess tiefen Lernens 170 verwendet werden können. Die Vielfachansichten-Salienz-Verbesserungen 165 wird durch ein Kombinieren der salienten Informationen der mehreren Ansichtspunkte mit dem Trainieren eines KI-Modells (Deep Leanring Model 170) erreicht, um die Bildqualität der salienten Daten zu verbessern. Zusätzlich können die aus mehreren Ansichtspunkten von den Kameras 180 gesammelten Daten auch zusammen kombiniert werden, um das Modell tiefen Lernens 170 zu trainieren, um die Rekonstruktion des Bildes von niedriger Auflösung zu hoher Auflösung zu verbessern.
  • 2 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Datensegmentierungsvorgang 200 des Videos eines ersten Sportereignisses, bei dem saliente Daten identifiziert werden. 2 zeigt ein Bild 205 eines Fußballspiels mit zur Einfachheit des Verständnisses eingekreisten Spielern 215. In diesem Fall sind die Spieler die salienten Daten, und die Hintergrundmenge 225 in der Arena (sowie alle Flaggen und Zeichen) sind nicht saliente Daten. Wie in dem ausgewaschenen Bild 255 gezeigt, werden die salienten Daten 260 zur Datensegmentierung identifiziert. Gemäß der Beschreibung in 1 werden die salienten Daten zur Übertragung in ihrem hochauflösenden Format extrahiert, wohingegen die Hintergrunddaten einem Codieren und einer Komprimierung unterzogen werden. Die salienten und nicht salienten Daten werden über eine Übertragung mit niedriger Bandbreite an eine oder mehrere Benutzereinheiten übertragen. Hier ist zu sehen, dass die nicht salienten Daten 225 die große Mehrheit des Bildes verglichen mit den Spielern 215 (den salienten Daten) sind, sodass das Codieren und die Komprimierung der nicht salienten Daten zu einer signifikanten Verringerung der Datengröße des Bildes führen.
  • 3 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Datensegmentierungsvorgang 300 des Videos eines zweiten Sportereignisses, bei dem saliente Daten identifiziert werden. 3 zeigt in 305 ein Tennisspiel mit den zwei eingekreisten Spielern 315. In dem ausgewaschenen Bild 355 sind die zwei Spieler die salienten Daten, die zur Übertragung mit einer Änderung der Formatierung extrahiert werden, wohingegen der Rest des Bildes nicht saliente Daten 365 sind. Die nicht salienten Daten werden zur Übertragung mit einer niedriger Übertragungsbandbreite codiert und komprimiert.
  • 4 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform einen Vorgang eines Erkennens salienter Daten aus mehreren Ansichtspunkten 400A. Es wird gezeigt, dass es drei Ansichtspunkte gibt, den ersten Ansichtspunkt 405, den zweiten Ansichtspunkt 410 und den dritten Ansichtspunkt 415. Der erste Ansichtspunkt 405 erscheint in einem Winkel von etwa 45 Grad relativ zu dem zweiten Ansichtspunkt 410, und der dritte Ansichtspunkt 415 erscheint in einem Winkel von etwa 90 Grad relativ zu dem zweiten Ansichtspunkt 410. Jeweilige Kameras 406, 407, 408 erfassten jeweils einen Ansichtspunkt 405, 410, 415. Die salienten Daten für jeden Ansichtspunkt sind eingekreist. Unten in 435, 445 und 450 sind die nicht salienten Daten, die komprimiert sind.
  • 4B veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform das Benutzerenddecodieren und die Rekonstruktion 400B der mehreren Ansichtspunkte salienter Daten, die in 4A erkannt wurden. Die salienten Punkte 455 sind in 4B gezeigt. Es ist zu sehen, dass die Menge an salienten Daten 455 (sechs Objekte in dem Beispiel von 4B) dieselbe ist wie in 4A gezeigt. Die Salienzverbesserung mit mehreren Ansichten tritt durch Trainieren eines Kl-Modells (z.B. tiefes Lernen 460) mit den salienten Daten auf, und es ist gezeigt, dass unterschiedliche Ansichten 465 des Objekts ausgegeben werden. 4B zeigt auch, wie das tiefe Lernen 460 für eine Hintergrundrekonstruktion mit mehreren Ansichten verwendet wird. Ansichten 470, 475, 480 werden in das tiefe Lernen 460 eingegeben, und ein resultierendes Bild 485 auf Grundlage der Rekonstruktion ist gezeigt.
  • 5 veranschaulicht konsistent mit einer veranschaulichenden Ausführungsform ein Benutzerenddecodieren, das eine Salienzverbesserung mit mehreren Ansichten enthält. 5 ist eine veranschaulichende Ausführungsform, die für eine Übertragung und ein Teilen mit mehreren Kameraansichten konfiguriert ist. Es sind ein Server 505 und drei Benutzerendeinheiten 510, 515 und 520 gezeigt. Es sollte verstanden werden, dass die Anzahl von Benutzerendeinheiten 510, 515, 520 mehr oder weniger als gezeigt sein können. Die Benutzerendeinheiten können sich während desselben Ereignisses an unterschiedlichen Standorten befinden. Jede der Benutzerendeinheiten 510, 515, 520 kann mit dem Server 505 sowie miteinander Daten austauschen. In dieser veranschaulichenden Ausführungsform können die Benutzerendeinheiten 510, 515, 520 WLAN oder Bluetooth verwenden, um miteinander Daten auszutauschen, und Mobilfunk (4G), um mit dem Server 505 Daten auszutauschen. In 5 sendet der Server 505 eine oder mehrere Ansichten an jeden Benutzer, und die Benutzerendeinheiten teilen mehrere Ansichten lokal, um die Rekonstruktion des Videos zu verbessern. Von mehreren Kameraansichtspunkten gesammelte Daten können kombiniert werden, um ein KI-Modell zu trainieren, um die Rekonstruktion eines nicht salienten Bildes von niedriger Auflösung zu hoher Auflösung zu verbessern. Zudem kann bei einem salienten Bild seine Qualität verbessert werden, indem saliente Informationen von unterschiedlichen Kameraansichtspunkten kombiniert und ein KI-Modell trainiert werden, um die Bildqualität der salienten Daten zu verbessern.
  • Die Benutzerendeinheiten 510, 515, 520 können einander erkennen und einen Kanal einrichten, der in einem Netzwerk mit hoher Bandbreite durch Aushandeln verfügbar ist (z.B. WLAN, Bluetooth). Zusätzlich können die Benutzerendeinheiten jede Ansicht anzeigen, z.B. kann ein Benutzer in geografischer Nähe eines Standorts jede Kamera der anderen Benutzerendeinheiten wählen und jede gewünschte Ansicht genießen. Der Server kann dynamisch Benutzergruppen auf Grundlage der Mobilität der Benutzer und der Netzwerkbandbreitenverfügbarkeit erzeugen.
  • Beispielprozess
  • Mit dem vorhergehenden Überblick der Beispielarchitektur kann es nun hilfreich sein, eine übergeordnete Erörterung eines Beispielprozesses zu betrachten. Zu diesem Zweck stellen 6, 7 und 8 in Verbindung mit 1 bis 5 Ablaufpläne 600, 700 und 800 dar, die verschiedene Aspekte eines computerumgesetzten Verfahrens konsistent mit einer veranschaulichenden Ausführungsform veranschaulichen. Die Prozesse 600, 700 und 800 sind jeweils als eine Sammlung von Blöcken in einer logischen Reihenfolge veranschaulicht, die eine Folge von Vorgängen darstellt, die in Hardware, Software oder einer Kombination davon umgesetzt werden können. Im Kontext von Software stellen die Blöcke computerausführbare Anweisungen dar, die bei Ausführen durch einen oder mehrere Prozessoren die vorgetragenen Vorgänge durchführen. Allgemein können computerausführbare Anweisungen Routinen, Programme, Objekte, Komponenten, Datenstrukturen und so weiter enthalten, die Funktionen durchführen oder abstrakte Datentypen umsetzen. In jedem Prozess soll die Reihenfolge, in der die Vorgänge beschrieben sind, nicht als eine Einschränkung aufgefasst werden, und jede Anzahl der beschriebenen Blöcke kann in jeder Reihenfolge kombiniert und/oder parallel durchgeführt werden, um den Prozess umzusetzen.
  • 6 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan 600, der ein computerumgesetztes Verfahren zum Codieren von Videostreams für Übertragungen mit niedriger Bandbreite veranschaulicht. Bei Vorgang 605 werden saliente Daten in einem Videostream mit hoher Auflösung identifiziert. Wie in 1, 2 und 3 gezeigt, enthält das Video mit hoher Auflösung ein Sportereignis, ein Musicalereignis usw., ist jedoch nicht darauf beschränkt.
  • Bei Vorgang 610 wird eine Datensegmentierung der salienten Daten und der nicht salienten Daten durchgeführt. Ein KI-Modell kann verwendet werden, um die Objekte in dem Bild zu identifizieren, die saliente Daten bilden. Mittels eines nicht einschränkenden Beispiels könnten die salienten Daten Personen, Orte, Objekte usw. sein, wie in Hinblick auf 2 und 3 erörtert.
  • Bei Vorgang 615 werden die nicht salienten Daten in eine niedrigere Auflösung codiert und komprimiert als in dem erfassten hochauflösenden Video. Die salienten Daten werden nicht komprimiert und können codiert werden. Bei Szenarios mit äußerst niedriger Bandbreite (z.B. eine Videofernüberwachung von Personen oder Fahrzeugen unter Verwendung drahtloser Datenübertragung bei Bandbreiten von 2 kbit/s oder weniger) könnten die salienten Daten ebenfalls komprimiert werden, aber mit einer niedrigeren Komprimierungsrate als die nicht salienten Daten. Die Komprimierung kann die Bildqualität beeinflussen, was der Grund ist, warum in dieser veranschaulichenden Ausführungsform die nicht salienten Daten komprimiert werden, während die salienten Daten nicht komprimiert werden.
  • Bei 620 werden die komprimierten nicht salienten Daten und die salienten Daten an eine Benutzereinheit übertragen. 1 stellt auch einen Überblick eines Beispielserverendprozesses bereit.
  • 7 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan, der die Verwendung von Maschinenlernmodellen für ein computerumgesetztes Verfahren zum Codieren von Videostreams für hochauflösendes Video in einer Übertragung mit niedriger Bandbreite veranschaulicht.
  • Bei Vorgang 705 wird ein Maschinenlernmodell eines Generative Adversarial Network (GAN) mit Daten von nicht salienten Merkmalen trainiert, die zuvor aufgezeichnet wurden, um bei der Identifikation der nicht salienten Informationen zu unterstützen. Die nicht salienten Informationen können Hintergrundinformationen und/oder statische Informationen enthalten.
  • Bei Vorgang 710 wird ein domänenspezifisches Maschinenlernmodell für eines oder mehrere von einer Gesichtserkennung oder Objekterkennung auf die Videodaten angewendet, um saliente Daten zu identifizieren. Die Gesichtserkennung kann zum Beispiel verwendet werden, um Tennisspieler in einem Tennisspiel zu identifizieren. Die Objekterkennung kann die Tennisschläger und ein Tennisball sein.
  • Bei Vorgang 720 werden eines der nicht salienten Daten oder der salienten Daten in dem Videostream durch Betrieb eines jeweiligen Maschinenlernmodells identifiziert. Die nicht salienten Daten können codiert und komprimiert werden, und die salienten Daten können für die Übertragung bereit gemacht werden.
  • 8 ist konsistent mit einer veranschaulichenden Ausführungsform ein Ablaufplan, der Vorgänge zum Decodieren und die Rekonstruktion veranschaulicht.
  • Bei Vorgang 805 empfängt eine Benutzereinheit (siehe 1) einen Videodatenstream, der saliente Daten in einem hochauflösenden Format und nicht saliente Daten in einem niedrigauflösenden Format enthält.
  • Bei Vorgang 810 wird der Videostream decodiert und dekomprimiert, und die Videodaten werden in nicht saliente Daten und saliente Daten segmentiert. Ein KI-Modell, wie beispielsweise ein GAN-Modell, oder tiefes Lernen können verwendet werden, um die Daten zu identifizieren und segmentieren.
  • Bei Vorgang 815 werden die nicht salienten Daten in das Format mit höherer Auflösung der salienten Daten rekonstruiert. Erneut kann die Benutzereinheit tiefes Lernen oder ein GAN verwenden, um bei diesem Prozess zu unterstützen. Es kann mehrere Kameraansichten geben, ohne dass dies der Fall sein muss, die durch das Modell tiefen Lernens verwendet werden können, um bei der Rekonstruktion zu unterstützen.
  • Bei Vorgang 820 werden die salienten Daten und die rekonstruierten nicht salienten Daten rekombiniert, um einen Videostream in dem Format mit höherer Auflösung der salienten Daten zu bilden. Somit können die hochauflösenden salienten Videodaten durch das Benutzerende unter Verwendung einer niedrigen Bandbreite empfangen werden, ohne komprimiert zu werden, da die nicht salienten Informationen codiert und komprimiert werden.
  • 9 stellt eine funktionelle Blockschaubildveranschaulichung 900 einer Computerhardwareplattform bereit. Insbesondere veranschaulicht 9 ein besonders konfiguriertes Netzwerk oder eine Hostcomputerplattform 900, wie es/sie verwendet werden kann, um die in 6, 7 und 8 gezeigten Verfahren umzusetzen.
  • Die Computerplattform 900 kann eine Zentraleinheit (central processing unit (CPU)) 904, ein Festplattenlaufwerk (hard disk drive (HDD)) 908, einen Direktzugriffsspeicher (random access memory (RAM)) und/oder einen Nur-Lese-Speicher (read-only memory (ROM)) 908 und eine Datenübertragungsschnittstelle 916 enthalten, die mit einem Systembus 902 verbunden sind. Das HDD 906 kann Datenspeicher enthalten.
  • In einer bestimmten Ausführungsform besitzt das HDD 906 Fähigkeiten, die ein Speichern eines Programms enthalten, das verschiedene Prozesse ausführen kann, wie beispielsweise ein Codiermodul 920 für die Übertragung mit niedriger Bandbreite, wie in einer hierin vorstehend beschriebenen Weise erörtert, und ist so konfiguriert, dass es den Gesamtprozess verwaltet.
  • Das Datensegmentierungsmodul 925 ist so konfiguriert, dass es identifizierte saliente und nicht saliente Daten in hochauflösende Videos segmentiert. Das Datensegmentierungsmodul kann ein Maschinenlernmodell enthalten, wie beispielsweise ein Maschinenlernmodell eines Generative Adversarial Network (GAN).
  • Das Komprimierungsmodul 930 komprimiert die identifizierten nicht salienten Daten zur Übertragung mit den salienten Daten. Die salienten Daten können in ihrer hochauflösenden Form bleiben, und sowohl die salienten als auch die nicht salienten Daten können zusammen an einen oder mehrere Benutzer übertragen werden. Die Komprimierung der nicht salienten Daten verringert die Auflösung der nicht salienten Daten zu einer niedrigeren Auflösung. Da es oft vorkommt, dass es signifikant mehr nicht saliente Daten als saliente Daten gibt, verringert das Komprimieren nur der nicht salienten Daten die Größe der Videodaten, sodass eine Übertragung mit niedriger Bandbreite auftreten kann. Die salienten Daten können jedoch auch durch das Komprimierungsmodul 930 auf dasselbe Komprimierungsverhältnis oder ein niedrigeres Komprimierungsverhältnis als die nicht salienten Daten komprimiert werden.
  • Das Maschinenlernmodell-Modul (MLM-Modul) 935 ist so konfiguriert, dass es die salienten Daten und/oder die nicht salienten Daten identifiziert. Während die vorliegende Offenbarung auf Maschinenlernmodule vielfältiger Typen anwendbar ist, wie hierin vorstehend erörtert, wird konsistent mit einer veranschaulichenden Ausführungsform ein Maschinenlernmodell eines Generative Adversarial Network (GAN) verwendet. Das Training des MLM-Moduls 935 kann mit Trainingsdaten 945 zuvor aufgezeichneter Szenen durchgeführt werden, in denen es nicht saliente Daten ähnlich einem Videostream gibt. Zum Beispiel können beim Streaming von Live-Sportereignissen vorherige Bilder von Mengen bei Fußballspielen, Basketballspielen, Tennisspielen verwendet werden, um das Maschinenlernmodell zu trainieren. Zum Beispiel wären bei einem Tennisspiel die salienten Daten mindestens die zwei Spieler und ihre Schläger, der Tennisball und möglicherweise das Netz. Der Rest kann nicht saliente Daten sein, die zur Übertragung in einer Übertragung mit niedriger Bandbreite in eine niedrigere Auflösung komprimiert werden können. Es muss verstanden werden, dass auch andere Typen von Maschinenlernen, wie beispielsweise tiefes Lernen, verwendet werden können, um empfangene Streams von Bildern an einem Benutzerende zurück zu hoher Auflösung zu rekonstruieren.
  • Das Decodiermodul 940 ist so konfiguriert, dass es den Videostream in die nicht salienten Daten in einem Format mit niedrigerer Auflösung und die salienten Daten in dem Format mit höherer Auflösung decodiert.
  • Das Rekonstruktionsmodul 950 ist so konfiguriert, dass es die nicht salienten Daten in das Format mit höherer Auflösung der salienten Daten rekonstruiert und die salienten Daten und die rekonstruierten nicht salienten Daten kombiniert, um einen Videostream in dem Format mit höherer Auflösung der salienten Daten zu bilden. Maschinenlernen wird in einer veranschaulichenden Ausführungsform verwendet, um die nicht salienten Daten in die höhere Auflösung der salienten Daten zu rekonstruieren und die rekonstruierten nicht salienten Daten mit den salienten Daten zu kombinieren. Im Falle mehrerer Kameraansichten werden für jeden jeweiligen Ansichtspunkt mehrere Übertragungen der salienten Daten und der nicht salienten Daten empfangen. Nach dem Decodieren rekonstruiert das Rekonstruktionsmodul 950 einen bestimmten Ansichtspunkt oder bestimmte Ansichtspunkte zur Anzeige. Die Konstruktion eines bestimmten Ansichtspunktes kann als Reaktion auf eine Auswahl durchgeführt werden. Die Ansichtspunkte werden bei der Rekonstruktion möglicherweise nicht angezeigt und können zur zukünftigen Auswahl gespeichert werden.
  • Beispiel-Cloud-Plattform
  • Wie vorstehend erörtert können Funktionen bezüglich der Übertragung mit niedriger Bandbreite von hochauflösendem Video eine Cloud enthalten. Es sei von vornherein klargestellt, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing aufweist. Vielmehr können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Arbeitsspeicher, Speicherung, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle aufweisen.
  • Bei den Eigenschaften handelt es sich um die Folgenden:
  • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicherung sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
  • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
  • Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
  • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
  • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicherung, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Die Nutzung von Ressourcen kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
  • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicherung bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
  • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicherung, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
  • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicherung, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicherung, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
  • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann in den eigenen Räumen oder fremden Räumen stehen.
  • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
  • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Herzen von Cloud-Computing liegt eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten aufweist.
  • Unter Bezugnahme auf 10 ist nun eine veranschaulichende Cloud-Computing-Umgebung 1000 dargestellt. Wie gezeigt ist, enthält die Cloud-Computing-Umgebung 1000 eine Cloud 1050 mit einem oder mehreren Cloud-Computing-Knoten 1010, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie zum Beispiel ein persönlicher digitaler Assistent (PDA, personal digital assistant) oder ein Mobiltelefon 1054A, ein Desktop-Computer 1054B, ein Laptop-Computer 1054C und/oder ein Automobil-Computer-System 1054N Daten austauschen können. Die Knoten 1010 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie hierin vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 1010, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 10 gezeigten Datenverarbeitungseinheiten 1054A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 1010 und die Cloud-Computing-Umgebung 1050 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 11 wird nun ein Satz von funktionalen Abstraktionsschichten 1100 gezeigt, die durch die Cloud-Computing-Umgebung 1000 ( 10) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 11 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Offenbarung nicht darauf beschränkt sind. Wie dargestellt ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 1160 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 1161; auf der RISC- (Reduced Instruction Set Computer) Architektur beruhende Server 1162; Server 1163; Blade-Server 1164; Speicherungseinheiten 1165; und Netzwerke sowie Netzwerkkomponenten 1166. In manchen Ausführungsformen enthalten Software-Komponenten eine Netzwerk-Anwendungsserver-Software 1167 und eine Datenbank-Software 1168.
  • Eine Virtualisierungsschicht 1170 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 1171, virtuelle Speicherung 1172, virtuelle Netzwerke 1173, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 1174; und virtuelle Clients 1175.
  • In einem Beispiel kann eine Verwaltungsschicht 1180 die nachfolgend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 1181 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung benutzt werden. Ein Messen und eine Preisfindung 1182 stellen eine Kostenverfolgung beim Benutzen von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie eine Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen enthalten. Eine Sicherheit stellt eine Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 1183 stellt Nutzern und Systemadministratoren einen Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung der Dienstgüte 1184 stellt eine Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zur Dienstgüte (SLA, Service Level Agreement) 1185 stellt eine Anordnung vorab und eine Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einer SLA bereit.
  • Eine Arbeitslastenschicht 1190 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung benutzt werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 1191; Software-Entwicklung und Lebenszyklusverwaltung 1192; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 1193; Datenanalytikverarbeitung 1194; Transaktionsverarbeitung 1195; und ein Datenidentifikations- und -codiermodul 1196 das so konfiguriert ist, dass es saliente und nicht saliente Daten identifiziert und hochauflösendes Video für die Übertragung mit niedriger Bandbreite codiert, wie hierin erörtert.
  • Fazit
  • Die Beschreibungen der vielfältigen Ausführungsformen der vorliegenden Lehren wurden zu Zwecken der Veranschaulichung vorgelegt, sind jedoch nicht als erschöpfend oder auf die offenbarten Ausführungsformen beschränkt beabsichtigt. Viele Modifikationen und Variationen sind für den Fachmann ersichtlich, ohne vom Umfang der beschriebenen Ausführungsformen abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber auf dem Markt anzutreffenden Technologien am besten zu erklären oder um es anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.
  • Während das Vorhergehende beschrieben hat, was als der beste Zustand und/oder andere Beispiele betrachtet wird, versteht es sich, dass vielfältige Modifikationen darin vorgenommen werden können und dass der hierin offenbarte Gegenstand in vielfältigen Formen und Beispielen umgesetzt werden kann und dass die Lehren in zahlreichen Anwendungen angewendet werden können, von denen nur manche hierin beschrieben wurden. Es ist durch die folgenden Ansprüche beabsichtigt, jede und alle Anwendungen, Modifikationen und Variationen zu beanspruchen, die in den wahren Umfang der vorliegenden Lehren fallen.
  • Die Komponenten, Schritte, Merkmale, Aufgaben, Nutzen und Vorteile, die hierin erörtert worden sind, sind lediglich veranschaulichend. Keines davon, noch die diesbezüglichen Erörterungen, sollen den Schutzumfang einschränken. Während hierin vielfältige Vorteile erörtert worden sind, versteht es sich, dass nicht alle Ausführungsformen notwendigerweise alle Vorteile enthalten. Sofern nicht anders angegeben, sind alle Messungen, Werte, Bewertungen, Positionen, Größenordnungen, Größen und andere Spezifikationen, die in dieser Patentschrift dargelegt werden, einschließlich der Ansprüche, die folgen, näherungsweise, nicht exakt. Sie sollen einen vernünftigen Bereich besitzen, der mit Funktionen konsistent ist, auf die sie sich beziehen und was auf dem Gebiet gebräuchlich ist, dem sie angehören.
  • Zahlreiche andere Ausführungsformen werden ebenfalls betrachtet. Diese schließen Ausführungsformen ein, die weniger, zusätzliche und/oder andere Komponenten, Schritte, Merkmale, Aufgaben, Nutzen und Vorteile besitzen. Diese schließen auch Ausführungsformen ein, bei denen Komponenten und/oder schritte anders angeordnet und oder geordnet sind.
  • Die Ablaufpläne und die Darstellungen in den Figuren hierin veranschaulichen die Architektur, Funktionalität und die Arbeitsweise möglicher Umsetzungen gemäß vielfältigen Ausführungsformen der vorliegenden Offenbarung.
  • Während das Vorhergehende in Verbindung mit beispielhaften Ausführungsformen beschrieben worden ist, versteht es sich, dass der Begriff „beispielhaft“ lediglich vielmehr als ein Beispiel gedacht ist, statt als das Beste oder Optimale. Außer wenn unmittelbar vorstehend angegeben, ist nichts, das angegeben oder veranschaulicht ist, beabsichtigt, dass es eine Freigabe einer Komponente, eines Schrittes, Merkmals, einer Aufgabe, eines Nutzens, Vorteils oder äquivalent für die Öffentlichkeit bewirkt oder so interpretiert werden sollte, unabhängig davon, ob es in den Ansprüchen angegeben ist.
  • Es wird verstanden, dass die hierin verwendeten Begriffe und Ausdrücke die gewöhnliche Bedeutung haben, wie sie solchen Begriffen und Ausdrücken in Bezug auf ihre entsprechenden Forschungs- und Studiengebiete zugewiesen ist, außer wenn spezifische Bedeutungen hierin anders dargelegt werden. Beziehungsorientierte Begriffe wie erstes und zweites und dergleichen können allein verwendet werden, um eine Entität oder Handlung von einer anderen zu unterscheiden, ohne dass notwendigerweise eine solche tatsächliche Beziehung oder Reihenfolge zwischen solchen Entitäten oder Handlungen erfordert oder impliziert wird. Die Begriffe „weist auf“, „aufweisend“ oder jede andere Variation davon sind so beabsichtigt, dass sie eine nicht exklusive Einschließung abdecken, sodass ein Prozess, Verfahren, Artikel oder eine Vorrichtung, der/das/die eine Liste von Elementen aufweist, nicht nur diese Elemente enthält, sondern andere Elemente enthalten kann, die nicht ausdrücklich aufgelistet sind oder für einen solchen Prozess, Verfahren, Artikel oder Vorrichtung inhärent sind. Ein Element, dem „ein“ oder „eine“ vorangeht, schließt ohne weitere Beschränkungen das Vorhandensein zusätzlicher identischer Elemente in dem Prozess, Verfahren, Artikel oder der Vorrichtung, der/das/die das Element aufweist, nicht aus,
  • Die Zusammenfassung der Offenbarung wird bereitgestellt, um es dem Leser zu erlauben, die Natur der technischen Offenbarung rasch festzustellen. Sie wird im Verständnis übermittelt, dass sie nicht verwendet wird, um den Umfang oder die Bedeutung der Ansprüche zu interpretieren oder einzuschränken. Zusätzlich ist in der vorhergehenden detaillierten Beschreibung zu sehen, dass zum Zwecke einer Verschlankung der Offenbarung vielfältige Merkmale in vielfältigen Ausführungsformen gruppiert sind. Dieses Offenbarungsverfahren ist nicht so zu interpretieren, dass eine Absicht wiedergegeben wird, dass die beanspruchten Ausführungsformen mehr Merkmale besitzen als ausdrücklich in jedem Anspruch vorgetragen. Wie in den folgenden Ansprüchen widergespiegelt wird, liegt der erfindungsgemäße Gegenstand vielmehr in weniger als allen Merkmalen einer einzelnen offenbarten Ausführungsform. Somit werden die folgenden Ansprüche hiermit in die detaillierte Beschreibung mit aufgenommen, wobei jeder Anspruch für sich selbst als separat beanspruchter Gegenstand steht.

Claims (21)

  1. Computerumgesetztes Verfahren zum Codieren eines Videostreams für hochauflösendes Video in einer Übertragung mit niedriger Bandbreite, wobei das Verfahren aufweist: Identifizieren salienter Daten und nicht salienter Daten in einem hochauflösenden Videostream; Segmentieren der salienten Daten und der nicht salienten Daten; Komprimieren der nicht salienten Daten in eine niedrigere Auflösung; und Übertragen der salienten Daten und der komprimierten nicht salienten Daten.
  2. Computerumgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Codieren der nicht salienten Daten vor einem Durchführen der Komprimierung der nicht salienten Daten.
  3. Computerumgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Komprimieren der salienten Daten bei einem geringeren Komprimierungsverhältnis als die nicht salienten Daten vor dem Übertragen der salienten Daten und der komprimierten nicht salienten Daten.
  4. Computerumgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Identifizieren mindestens eines der nicht salienten Daten und der salienten Daten in dem Videostream durch ein Maschinenlernmodell.
  5. Computerumgesetztes Verfahren nach Anspruch 4, wobei das Maschinenlernmodell ein Maschinenlernmodell eines Generative Adversarial Network (GAN) aufweist; und ferner aufweisend: Trainieren des GAN-Maschinenlernmodells mit Daten von einem oder mehreren nicht salienten Merkmalen aus zuvor aufgezeichneten Videostreams, um die nicht salienten Daten zu identifizieren.
  6. Computerumgesetztes Verfahren nach Anspruch 5, ferner aufweisend ein Bereitstellen für eine Benutzereinheit von einem oder mehreren von einer Verknüpfung zum Zugang oder einem Code zum Ausführen des GAN-Maschinenlernmodells vor dem Übertragen der salienten Daten und der komprimierten nicht salienten Daten des Videostreams an die Benutzereinheit.
  7. Computerumgesetztes Verfahren nach Anspruch 1, wobei das Identifizieren der salienten Daten ein Identifizieren einer oder mehrerer domänenspezifischer Eigenschaften von Objekten in dem Videostream enthält.
  8. Computerumgesetztes Verfahren nach Anspruch 1, wobei das Identifizieren der salienten Daten ein Anwenden eines domänenspezifischen Modells künstlicher Intelligenz (KI) für eines oder mehrere von Gesichtserkennung oder Objekterkennung enthält.
  9. Computerumgesetztes Verfahren nach Anspruch 8, wobei das Anwenden des domänenspezifischen Kl-Modells ferner ein Identifizieren eines Restes der Informationen des Videostreams als die nicht salienten Daten enthält.
  10. Computerumgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Empfangen eine Mehrzahl von Videostreams, wobei jeder Videostream jeweils unterschiedliche Ansichten eines oder mehrerer Objekte besitzt, wobei das Identifizieren und Segmentieren der salienten Daten und nicht salienten Daten einzeln für mindestens zwei jeweils unterschiedliche Ansichten durchgeführt wird, die übertragen werden.
  11. Computerumgesetztes Verfahren zum Decodieren von Videodaten in mehrere Auflösungsformate, wobei das computerumgesetzte Verfahren aufweist: Empfangen eines codierten Videostreams, der saliente Daten und nicht saliente Daten aufweist, wobei die salienten Daten ein Format mit höherer Auflösung als die nicht salienten Daten besitzen; Decodieren des Videostreams in die nicht salienten Daten in einem Format mit niedrigerer Auflösung und die salienten Daten in dem Format mit höherer Auflösung; Rekonstruieren der nicht salienten Daten in ein Format mit höherer Auflösung; und Kombinieren der salienten Daten und der rekonstruierten nicht salienten Daten, um einen Videostream in dem Format mit höherer Auflösung der salienten Daten zu bilden.
  12. Computerumgesetztes Verfahren nach Anspruch 11, ferner aufweisend: Empfangen eines oder mehrerer von einer Verknüpfung zum Zugreifen auf einen Betrieb oder Laden von ausführbarem Code für ein Maschinenlernmodell eines Generative Adversarial Network (GAN), das trainiert ist, um nicht saliente Merkmale auf Grundlage von zuvor aufgezeichneten Videostreams zu identifizieren; und Rekonstruieren der nicht salienten Daten bei einer erhöhten Auflösung unter Verwendung des GAN-Maschinenlernmodells.
  13. Computerumgesetztes Verfahren nach Anspruch 12, wobei der empfangene Videostream saliente Daten und nicht saliente Daten aufweist, die aus mehreren Ansichtspunkten erfasst werden; wobei das computerumgesetzte Verfahren ferner aufweist: Trainieren des GAN-Maschinenlernmodells, um die salienten Daten auf Grundlage der mehreren Ansichtspunkte zu identifizieren; und Rekonstruieren der nicht salienten Daten in die höhere Auflösung der salienten Daten unter Verwendung des GAN-Maschinenlernmodells, das an den mehreren Ansichtspunkten trainiert wird.
  14. Computerumgesetztes Verfahren nach Anspruch 13, ferner aufweisend: Empfangen mehrerer Übertragungen der salienten Daten und der nicht salienten Daten jeweils für jeden Ansichtspunkt; und Rekonstruieren eines bestimmten Ansichtspunktes zur Anzeige als Reaktion auf eine Auswahl.
  15. Computerumgesetztes Verfahren nach Anspruch 14, ferner aufweisend: Teilen von Standortinformationen mit einem oder mehreren registrierten Benutzern; und Empfangen auswählbarer Ansichten der salienten Daten und der nicht salienten Daten, die durch den einen oder die mehreren registrierten Benutzer erfasst werden.
  16. Datenverarbeitungseinheit zum Codieren von Videostreams für hochauflösendes Video in einer Übertragung mit niedriger Bandbreite, wobei die Datenverarbeitungseinheit aufweist: einen Prozessor; einen mit dem Prozessor verbundenen Arbeitsspeicher, wobei der Arbeitsspeicher Anweisungen speichert, um den Prozessor zu veranlassen, Handlungen durchzuführen, aufweisend: Identifizieren salienter Daten und nicht salienter Daten in einem Videostream; Segmentieren der salienten Daten und der nicht salienten Daten; Codieren und Komprimieren der nicht salienten Daten; und Übertragen der salienten Daten und der komprimierten nicht salienten Daten.
  17. Datenverarbeitungseinheit nach Anspruch 16, ferner aufweisend: ein Maschinenlernmodell eines Generative Adversarial Network (GAN) in Datenaustausch mit dem Arbeitsspeicher; und wobei die Anweisungen den Prozessor veranlassen eine zusätzliche Handlung durchzuführen aufweisend Trainieren des GAN-Maschinenlernmodells mit Trainingsdaten nicht salienter Merkmale auf Grundlage zuvor aufgezeichneter Videostreams, um das Identifizieren von mindestens den nicht salienten Daten durchzuführen.
  18. Datenverarbeitungseinheit nach Anspruch 17, wobei die Anweisungen den Prozessor veranlassen, zusätzliche Handlungen durchzuführen, aufweisend: Empfangen verfeinerter Ergebnisse von den ausgewählten Agenten auf Grundlage der zusammengeführten Parameter; und Erzeugen eines globalen Trainingsmodells auf Grundlage der verfeinerten Ergebnisse.
  19. Datenverarbeitungseinheit nach Anspruch 16, wobei die Anweisungen den Prozessor veranlassen, eine zusätzliche Handlung durchzuführen, aufweisend: Anwenden eines domänenspezifischen Modells künstlicher Intelligenz (KI) aufweisend eines oder mehrere von Gesichtserkennung oder Objekterkennung, um die salienten Daten zu identifizieren.
  20. Datenverarbeitungseinheit nach Anspruch 16, wobei die Anweisungen den Prozessor veranlassen, eine zusätzliche Handlung durchzuführen, aufweisend ein Übertragen unterschiedlicher Kameraansichten der salienten Daten und der nicht salienten Daten an eine Mehrzahl von Empfangseinheiten.
  21. Computerprogramm, das Programmcode aufweist, der geeignet ist, die Verfahrensschritte nach einem der Ansprüche 1 bis 15 durchzuführen, wenn das Programm auf einem Computer ausgeführt wird.
DE112021006157.7T 2020-11-25 2021-10-19 Videocodieren durch nicht-salienz-komprimierung für live-streaming von hochauflösenden videos in einer übertragung niedriger bandbreite Pending DE112021006157T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/105,356 US11758182B2 (en) 2020-11-25 2020-11-25 Video encoding through non-saliency compression for live streaming of high definition videos in low-bandwidth transmission
US17/105,356 2020-11-25
PCT/CN2021/124733 WO2022111140A1 (en) 2020-11-25 2021-10-19 Video encoding through non-saliency compression for live streaming of high definition videos in low-bandwidth transmission

Publications (1)

Publication Number Publication Date
DE112021006157T5 true DE112021006157T5 (de) 2023-10-12

Family

ID=81657630

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021006157.7T Pending DE112021006157T5 (de) 2020-11-25 2021-10-19 Videocodieren durch nicht-salienz-komprimierung für live-streaming von hochauflösenden videos in einer übertragung niedriger bandbreite

Country Status (6)

Country Link
US (2) US11758182B2 (de)
JP (1) JP2023551158A (de)
CN (1) CN116457819A (de)
DE (1) DE112021006157T5 (de)
GB (1) GB2616998A (de)
WO (1) WO2022111140A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12058312B2 (en) * 2021-10-06 2024-08-06 Kwai Inc. Generative adversarial network for video compression
US11895344B1 (en) * 2022-12-09 2024-02-06 International Business Machines Corporation Distribution of media content enhancement with generative adversarial network migration
CN116781912B (zh) * 2023-08-17 2023-11-14 瀚博半导体(上海)有限公司 视频传输方法、装置、计算机设备及计算机可读存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7689033B2 (en) 2003-07-16 2010-03-30 Microsoft Corporation Robust multi-view face detection methods and apparatuses
US7548657B2 (en) 2005-06-25 2009-06-16 General Electric Company Adaptive video compression of graphical user interfaces using application metadata
EP1936566A1 (de) 2006-12-22 2008-06-25 Thomson Licensing Verfahren zum Erzeugen einer Karte mit den hervorstechenden Merkmalen eines Bildes und System zum Erzeugen von verkleinerten Bildern von Videoframes
US8339456B2 (en) * 2008-05-15 2012-12-25 Sri International Apparatus for intelligent and autonomous video content generation and streaming
US8605795B2 (en) * 2008-09-17 2013-12-10 Intel Corporation Video editing methods and systems
US8750645B2 (en) * 2009-12-10 2014-06-10 Microsoft Corporation Generating a composite image from video frames
CN102726044B (zh) 2010-01-22 2016-08-10 汤姆逊许可证公司 使用基于示例的超分辨率的用于视频压缩的数据剪切
US20120300048A1 (en) * 2011-05-25 2012-11-29 ISC8 Inc. Imaging Device and Method for Video Data Transmission Optimization
US9275300B2 (en) * 2012-02-24 2016-03-01 Canon Kabushiki Kaisha Method and apparatus for generating image description vector, image detection method and apparatus
WO2014008541A1 (en) 2012-07-09 2014-01-16 Smart Services Crc Pty Limited Video processing method and system
US8977582B2 (en) * 2012-07-12 2015-03-10 Brain Corporation Spiking neuron network sensory processing apparatus and methods
US20140177706A1 (en) * 2012-12-21 2014-06-26 Samsung Electronics Co., Ltd Method and system for providing super-resolution of quantized images and video
US9324161B2 (en) * 2013-03-13 2016-04-26 Disney Enterprises, Inc. Content-aware image compression method
US9440152B2 (en) * 2013-05-22 2016-09-13 Clip Engine LLC Fantasy sports integration with video content
US9807411B2 (en) * 2014-03-18 2017-10-31 Panasonic Intellectual Property Management Co., Ltd. Image coding apparatus, image decoding apparatus, image processing system, image coding method, and image decoding method
GB201603144D0 (en) 2016-02-23 2016-04-06 Magic Pony Technology Ltd Training end-to-end video processes
WO2017055609A1 (en) 2015-09-30 2017-04-06 Piksel, Inc Improved video stream delivery via adaptive quality enhancement using error correction models
CN105959705B (zh) 2016-05-10 2018-11-13 武汉大学 一种面向可穿戴设备的视频直播方法
CN106791927A (zh) 2016-12-23 2017-05-31 福建帝视信息科技有限公司 一种基于深度学习的视频增强与传输方法
US10163227B1 (en) * 2016-12-28 2018-12-25 Shutterstock, Inc. Image file compression using dummy data for non-salient portions of images
CN107423740A (zh) * 2017-05-12 2017-12-01 西安万像电子科技有限公司 图像显著区域的获取方法和装置
CN107194927A (zh) 2017-06-13 2017-09-22 天津大学 基于显著性区域的立体图像舒适度色度范围的测量方法
US10176405B1 (en) * 2018-06-18 2019-01-08 Inception Institute Of Artificial Intelligence Vehicle re-identification techniques using neural networks for image analysis, viewpoint-aware pattern recognition, and generation of multi- view vehicle representations
US11430084B2 (en) * 2018-09-05 2022-08-30 Toyota Research Institute, Inc. Systems and methods for saliency-based sampling layer for neural networks
US20210006730A1 (en) * 2019-07-07 2021-01-07 Tangible Play, Inc. Computing device

Also Published As

Publication number Publication date
US20240022759A1 (en) 2024-01-18
WO2022111140A1 (en) 2022-06-02
CN116457819A (zh) 2023-07-18
JP2023551158A (ja) 2023-12-07
GB2616998A (en) 2023-09-27
US20220167005A1 (en) 2022-05-26
US11758182B2 (en) 2023-09-12

Similar Documents

Publication Publication Date Title
DE112021006157T5 (de) Videocodieren durch nicht-salienz-komprimierung für live-streaming von hochauflösenden videos in einer übertragung niedriger bandbreite
DE102005007530B4 (de) Priorisierte Bildvisualisierung aus skalierbaren komprimierten Daten
KR102082816B1 (ko) 스트리밍 파일의 해상도 개선 방법
DE69831961T2 (de) Bildobjekterzeugungsverfahren für objektbasierte kodierungssysteme unter verwendung von masken und gerundeten mittelwerten
DE202016009101U1 (de) Online-Training von hierarchischen Algorithmen
DE112020005726B4 (de) Segmentieren von videos auf der grundlage eines gewichteten wissensgraphen
DE102013022256A1 (de) Verbesserung der Zuweisung eines Bitratensteuerungswerts für Video-Datenstromübertragung auf der Grundlage eines Aufmerksamkeitsbereichs eines Spielers
DE102006029326A1 (de) Adaptive Videokompression eines graphischen Nutzerinfaces unter Verwendung von Applikations-Metadaten
DE112017006406T5 (de) Intelligentes automatisches zuschneiden von bildern
DE112018002112T5 (de) Systeme und verfahren zum rendern & vorkodierte lastschätz-basierte codierer-ansprech-bezogene anwendungen
DE69732089T2 (de) Vorrichtung und verfahren zur zeitlichen und räumlichen integration und verwaltung einer vielzahl von videos sowie speichermedium zur speicherung eines programms dafür
DE112021002867T5 (de) Defektdetektion für eine leiterplattenbaugruppe
DE112016005809T5 (de) Lichtfeld-Rendering eines Bildes unter Verwendung variabler Rechenkomplexität
DE102019127726A1 (de) Für fernarbeitsplatz-anwendungen geeignetes streaming individueller anwendungsfenster
DE102013201664B4 (de) Vorausschauendes Zwischenspeichern bei Telekommunikationstürmen unter Verwendung der Weitergabe der Kennung von Elementen von Daten mit hohem Bedarf auf einer geographischen Ebene
DE202011110878U1 (de) Hierarchisches Weichzeichnen von Texturmaps
DE202016006110U1 (de) Erweiterung des Sichtfeldes von Fotografie
DE112020002798T5 (de) Kognitives kontrollieren von datenübermittlung
DE102023110001A1 (de) Anwenden eines objektbewussten Stiltransfers auf Digitalbilder
DE112020005732T5 (de) Erzeugen von trainingsdaten zur objekterkennung
DE112010004809T5 (de) Mehrfachgranulare Datenstromverarbeitung
DE112021001551T5 (de) Optimierte einrichtung von analysemodellen in einer netzwerkperipherietopologie
DE112019001822B4 (de) Änderung und Darstellung von Audio- und Video-Multimedia
DE102021109501A1 (de) Durch erzeugendes gegnerisches neuronales netzwerk unterstützte videorekonstruktion
DE102008005476A1 (de) Verfahren zur Bildkompression eines Bildes mit 3D Graphikinformation

Legal Events

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