DE202016009102U1 - Verbesserung visueller Daten mittels gestufter Faltungen - Google Patents

Verbesserung visueller Daten mittels gestufter Faltungen Download PDF

Info

Publication number
DE202016009102U1
DE202016009102U1 DE202016009102.7U DE202016009102U DE202016009102U1 DE 202016009102 U1 DE202016009102 U1 DE 202016009102U1 DE 202016009102 U DE202016009102 U DE 202016009102U DE 202016009102 U1 DE202016009102 U1 DE 202016009102U1
Authority
DE
Germany
Prior art keywords
resolution
visual data
video
low
data
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.)
Active
Application number
DE202016009102.7U
Other languages
English (en)
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.)
Magic Pony Technology Ltd
Original Assignee
Magic Pony Technology Ltd
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
Priority claimed from GB201502753A external-priority patent/GB201502753D0/en
Priority claimed from GB201503427A external-priority patent/GB201503427D0/en
Priority claimed from GBGB1505544.5A external-priority patent/GB201505544D0/en
Priority claimed from GBGB1507141.8A external-priority patent/GB201507141D0/en
Priority claimed from GBGB1508742.2A external-priority patent/GB201508742D0/en
Priority claimed from GBGB1511231.1A external-priority patent/GB201511231D0/en
Priority claimed from GBGB1519425.1A external-priority patent/GB201519425D0/en
Application filed by Magic Pony Technology Ltd filed Critical Magic Pony Technology Ltd
Publication of DE202016009102U1 publication Critical patent/DE202016009102U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4046Scaling the whole image or part thereof using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4053Super resolution, i.e. output image resolution higher than sensor resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60
    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/179Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
    • 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
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • 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
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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
    • H04N19/36Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/87Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving scene cut or scene change detection in combination with video compression

Abstract

Vorrichtung, die einen oder mehrere Computer aufweist, wobei der eine oder die mehreren Computer ein neuronales Faltungsnetzwerk speichern und so konfiguriert sind, dass sie Operationen durchführen, die Folgendes aufweisen:
Empfangen eines Abschnitts von visuellen Daten mit niedriger Auflösung;
Anwenden des neuronalen Faltungsnetzwerks auf den empfangenen Abschnitt von visuellen Daten mit niedriger Auflösung, um den Abschnitt von visuellen Daten mit niedriger Auflösung auf einen Abschnitt von visuellen Daten mit hoher Auflösung hochzuskalieren; und
Ausgeben des Abschnitts der visuellen Daten mit hoher Auflösung,
wobei das neuronale Faltungsnetzwerk eine Vielzahl von Faltungsschichten aufweist, wobei die Vielzahl von Schichten aufweist:
eine anfängliche Merkmalskarten-Extraktionsschicht, die so konfiguriert ist, dass sie anfängliche niedrig aufgelöste Merkmalskarten aus dem Abschnitt von visuellen Daten mit niedriger Auflösung extrahiert;
eine oder mehrere aufeinanderfolgende weitere Merkmalskarten-Extraktionsschichten, die so konfiguriert sind, dass sie weitere niedrig aufgelöste Merkmalskarten erzeugen, wobei jede weitere Merkmalskarten-Extraktionsschicht als Eingabe niedrig aufgelöste Merkmalskarten empfängt, die von einer vorangehenden Merkmalskarten-Extraktionsschicht ausgegeben werden; und
im Anschluss an die eine oder die mehreren weiteren Merkmalskarten-Extraktionsschichten eine Subpixel-Faltungsschicht, die so konfiguriert ist, dass sie die weiteren niedrig aufgelösten Merkmalskarten hochskaliert, um den Abschnitt von visuellen Daten mit hoher Auflösung zu erzeugen, wobei die Hochskalierung der weiteren niedrig aufgelösten Merkmalskarten zur Erzeugung des Abschnitts von visuellen Daten mit hoher Auflösung Folgendes aufweist:
Anwenden eines Faltungsfilters der Größe nL-1 × rZC × kL × kL auf die weiteren Merkmalskarten, wobei nL-1 die Anzahl der weiteren Merkmalskarten ist, C eine Anzahl von Farbkanälen in dem Abschnitt der visuellen Daten mit niedriger Auflösung ist, rein Hochskalierungsverhältnis ist und kL eine Filtergröße ist; und
Anwenden eines periodischen Shuffling-Operators auf die Ausgabe des Faltungsfilters, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen.

Description

  • Nach den Bestimmungen des Gebrauchsmustergesetzes sind nur Vorrichtungen, wie sie in den beigefügten Schutzansprüchen definiert sind, schutzfähig und Gegenstand des Gebrauchsmusters, nicht aber Verfahren. Soweit in der nachfolgenden Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen nur der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen geschützten Vorrichtung(en).
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf die Verbesserung visueller Daten unter Verwendung eines hierarchischen Algorithmus. Insbesondere bezieht sich die vorliegende Erfindung auf die Verbesserung visueller Daten auf der Grundlage einer Teilmenge von Merkmalen, die aus visuellen Daten geringerer Qualität extrahiert wurden.
  • Hintergrund
  • Hintergrund - Qualitätssteigerung in der Video- und Anzeigetechnik
  • Entwicklungen in der Anzeigetechnologie haben zu erheblichen Verbesserungen bei der Auflösung geführt, die auf Anzeigegeräten wie Fernsehgeräten, Computermonitoren und Videoprojektoren angezeigt werden kann. So haben sich beispielsweise Fernsehbildschirme, die Inhalte in „High Definition“- oder „HD“-Auflösung (in der Regel mit einer Auflösung von 1920 x 1080 Pixeln) anzeigen können, bei den Verbrauchern weit verbreitet. In jüngster Zeit finden Fernsehbildschirme, die Inhalte in Ultra High Definition oder „Ultra HD“ Auflösung (in der Regel mit einer Auflösung von mehr als 3840 x 2160 Pixeln) darstellen können, immer mehr Verbreitung.
  • Im Gegensatz dazu werden Videoinhalte in HD-Auflösung erst jetzt alltäglich, und die meisten älteren Inhalte sind nur in der Auflösung von Digital Versatile Disc Video (oder „DVD-Video“) (typischerweise mit einer Auflösung von 720 x 586 Pixeln oder 720 x 480 Pixeln) oder in Standard-Definition oder „SD“ (wo der Videoinhalt nur eine Auflösung von 640 x 480 Pixeln hat) verfügbar. Einige Rundfunkkanäle sind auf SD-Auflösungen beschränkt. Videostreaming-Dienste können auf DVD-Video- oder SD-Auflösungen beschränkt werden, um Übertragungsprobleme zu verringern, wenn die Verbraucher nur eine begrenzte Bandbreite zur Verfügung haben oder es an älteren Inhalten mit höheren Auflösungen mangelt.
  • Infolgedessen kann es an ausreichend hochauflösenden Videoinhalten für die Anzeige auf HD- und Ultra HD-Fernsehbildschirmen mangeln, und zwar sowohl für aktuelle Videoinhalte als auch für ältere Videoinhalte und Video-Streaming-Dienste. Außerdem werden mit der Zeit mobile Geräte wie Mobiltelefone und Tablet-Computer mit immer größeren und höher auflösenden Bildschirmen hergestellt und von den Nutzern angenommen. Außerdem sind die derzeitigen Videoinhalte, die in HD-Auflösung ausgegeben werden, bereits deutlich niedriger aufgelöst als die neuesten Verbraucherbildschirme, die z. B. mit Ultra-HD-Auflösung arbeiten. Um ein ausreichend intensives Erlebnis der virtuellen Realität (oder „VR“) zu ermöglichen, muss die Bildschirmtechnologie auch bei kleineren Bildschirmgrößen eine ausreichend hohe Auflösung bieten.
  • Die Anzeige von Inhalten, die eine wesentlich geringere Auflösung haben als die Standardauflösung des Bildschirms/der Anzeige des Benutzers, ist nicht optimal.
  • Hintergrund - Zunahme der Datenübertragung und Netzbeschränkungen
  • Die Menge an visuellen Daten, die über Datennetze wie das Internet übertragen werden, hat im Laufe der Zeit stark zugenommen, und die Nachfrage der Verbraucher nach hochauflösenden, qualitativ hochwertigen und originalgetreuen visuellen Dateninhalten, wie z. B. Videostreaming, einschließlich Video in HD- und Ultra HD-Auflösung, steigt. Infolgedessen gibt es erhebliche Herausforderungen bei der Befriedigung dieser wachsenden Verbrauchernachfrage, und eine leistungsstarke Videokomprimierung ist erforderlich, um eine effiziente Nutzung der bestehenden Netzinfrastruktur und -kapazität zu ermöglichen.
  • Videodaten machen bereits einen beträchtlichen Teil des gesamten über das Internet übertragenen Datenverkehrs aus, und es wird prognostiziert, dass der Anteil mobiler Videos (d. h. Videos, die über drahtlose Datennetze wie UTMS/CDMA an und von mobilen Geräten übertragen werden) zwischen 2014 und 2019 um das 13-fache ansteigen und am Ende dieses Prognosezeitraums 72 % des gesamten mobilen Datenverkehrs ausmachen wird. Infolgedessen gibt es erhebliche Herausforderungen bei der Befriedigung dieser wachsenden Verbrauchernachfrage, und eine effizientere visuelle Datenübertragung ist erforderlich, um eine effiziente Nutzung der bestehenden Netzinfrastruktur und -kapazität zu ermöglichen.
  • Um Videos an Verbraucher zu streamen und dabei die verfügbare Streaming-Datenbandbreite zu nutzen, können Anbieter von Medieninhalten die Videoinhalte für die Übertragung über ein Netz mit einer oder mehreren Bitraten herunterrechnen oder transkodieren, so dass die Auflösung des Videos an die über jede Verbindung oder für jedes Gerät verfügbare Bitrate angepasst werden kann und die über das Netz übertragene Datenmenge besser auf die verfügbaren zuverlässigen Datenraten abgestimmt werden kann. So ist beispielsweise ein erheblicher Teil der derzeitigen Internetverbindungen für Verbraucher nicht in der Lage, das kontinuierliche Streaming von Videos in Ultra-HD-Auflösung zuverlässig zu unterstützen, so dass Videos mit einer niedrigeren Qualität oder Auflösung gestreamt werden müssen, um Pufferungsverzögerungen zu vermeiden.
  • Wenn außerdem ein Verbraucher Videoinhalte ausstrahlen oder übertragen möchte, beträgt die Uplink-Geschwindigkeit von Internetverbindungen für Verbraucher in der Regel nur einen Bruchteil der Download-Geschwindigkeit, so dass in der Regel nur Videos mit geringerer Qualität oder Auflösung übertragen werden können. Darüber hinaus sind die Datenübertragungsgeschwindigkeiten typischer drahtloser Verbrauchernetzwerke ein weiterer potenzieller Engpass beim Streaming von Videodaten für Videos mit höheren Auflösungen als HD-Auflösungen oder von Virtual-Reality-Daten und -Inhalten an/von modernen Virtual-Reality-Geräten. Ein Problem bei der Verringerung der Auflösung eines Videos bei der Übertragung über ein Netzwerk besteht darin, dass das Video mit der verringerten Auflösung möglicherweise nicht die gewünschte Wiedergabeauflösung hat, aber in einigen Fällen ist entweder nicht genügend Bandbreite vorhanden oder die verfügbare Bandbreite ist während der Spitzenzeiten für die Übertragung eines Videos mit einer hohen Auflösung nicht zuverlässig.
  • Aber auch ohne Reduzierung der ursprünglichen Videoauflösung kann das ursprüngliche Video eine geringere Auflösung haben als für die Wiedergabe gewünscht, so dass es bei der Anzeige auf Bildschirmen mit höherer Auflösung in suboptimaler Qualität erscheint.
  • Hintergrund - Videokomprimierungstechniken
  • Bestehende gängige Videokomprimierungsverfahren wie H.264 und VP8 sowie vorgeschlagene Verfahren wie H.265, HEVC und VP9 verwenden im Allgemeinen ähnliche Ansätze und Familien von Komprimierungsverfahren. Bei diesen Komprimierungstechniken wird bei der Inter- und Intra-Frame-Komprimierung ein Kompromiss zwischen der Qualität und der Bitrate von Videodatenströmen eingegangen, wobei der Umfang der möglichen Komprimierung weitgehend von der Bildauflösung der einzelnen Bilder und der Komplexität der Bildsequenzen abhängt.
  • Zur Veranschaulichung des Verhältnisses zwischen Bitrate und Auflösung und anderen Faktoren kann eine empirisch abgeleitete Formel verwendet werden, um zu zeigen, wie die Bitrate eines Videos, das z. B. mit dem H.264-Komprimierungsverfahren kodiert wurde, mit der Auflösung dieses Videos zusammenhängt: Bitrate Q × b × h × f × m
    Figure DE202016009102U1_0001
    wobei Q die Qualitätskonstante, w die Breite eines Videos, h die Höhe eines Videos, f die Bildwiederholrate eines Videos und m der Bewegungsrang ist, wobei m ∈ {1, ...,4} und ein höheres m wird für sich schnell ändernde, schwer vorhersehbare Inhalte verwendet.
  • Die obige Formel veranschaulicht die direkte Beziehung zwischen der Bitrate und der Qualitätskonstante Q. Ein typischer Wert, der für Q gewählt werden könnte, wäre beispielsweise 0,07 auf der Grundlage veröffentlichter empirischer Daten, aber ein erheblicher Teil der Forschung ist auf die Optimierung eines Wertes für Q ausgerichtet.
  • Die obige Formel veranschaulicht auch die direkte Beziehung zwischen der Bitrate und der Komplexität der Bildsequenzen, d. h. der Variablen m. Die oben erwähnten existierenden Videocodecs konzentrieren sich auf räumliche und zeitliche Kompressionstechniken. Die neueren vorgeschlagenen Videokomprimierungstechniken wie H.265, HEVC und VP9 versuchen, die Bewegungsvorhersage und die Intra-Frame-Komprimierung der früheren Techniken zu verbessern, d. h. einen Wert für m zu optimieren.
  • Die obige Formel veranschaulicht außerdem eine direkte Beziehung zwischen der Bitrate und der Auflösung des Videos, d. h. den Variablen w und h. Um die Auflösung des Videos zu verringern, gibt es verschiedene Techniken zur Herunterskalierung der Auflösung der Videodaten, um die Bitrate zu reduzieren.
  • Aufgrund der Nachteile der derzeitigen Komprimierungsverfahren werden die bestehende Netzinfrastruktur und die Videostreaming-Mechanismen zunehmend unzureichend, um große Mengen qualitativ hochwertiger Videoinhalte zu liefern und die ständig wachsende Nachfrage der Verbraucher nach dieser Art von Inhalten zu befriedigen. Dies kann unter bestimmten Umständen von besonderer Bedeutung sein, z. B. bei Live-Übertragungen, bei denen die Bandbreite oft begrenzt ist und eine umfangreiche Verarbeitung und Videokomprimierung am Ort der Live-Übertragung nicht ohne erhebliche Verzögerung erfolgen kann, weil dort keine ausreichenden Rechenressourcen zur Verfügung stehen.
  • Hintergrund - Video-Hochskalierunqstechniken
  • Um ein Video in einer höheren Auflösung wiederzugeben als der, in der es übertragen (z. B. von einem Streaming-Dienst oder Sender) oder bereitgestellt wurde (z. B. auf DVD oder über einen Video-Download-Anbieter), gibt es verschiedene „Upscaling“ (Hochskalierungs)-Techniken zur Erhöhung der Auflösung von Videodaten/- signalen, die die Bildqualität verbessern, wenn man von einem Bild oder Video mit niedrigerer Auflösung ausgeht, und die ein Bild oder Video mit höherer Auflösung erzeugen.
  • In 14 wird nun ein herkömmliches Hochskalierungsverfahren 1400 beschrieben.
  • Empfangene Videodaten 1410 werden in ein Decodersystem eingespeist und sind z. B. ein Video mit niedrigerer Auflösung, das in einem Standard-Videoformat kodiert ist, z. B. ein Video mit SD-Auflösung. Bei diesem Videoformat kann es sich um eine Vielzahl bekannter Videocodecs handeln, z. B. H.264 oder VP8, aber auch um beliebige Videodaten, die das System in Einzelbilder des Videos dekodieren kann.
  • Das System trennt dann in Schritt 1420 einen ersten Abschnitt der Videodaten 1410 in Einzelbilder auf, d. h. in eine Folge von Bildern in der vollen SD-Auflösung der Videodaten 1410. Bei einigen Videocodecs bedeutet dies eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z.B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Ein Hochskalierungsverfahren 1430 wird dann auf ein oder mehrere Bilder oder Bildabschnitte angewendet, um die Auflösung der entsprechenden Bereiche zu erhöhen. Die höher aufgelösten Bilder werden dann optional in Schritt 1440 in ein Format verarbeitet, das für die Ausgabe als Video geeignet ist. Das Video, das aus höher aufgelösten Einzelbildern besteht, hat die Form eines Videos mit höherer Auflösung 1450 als die ursprüngliche Videodatei.
  • Ein einfaches Hochskalierungsverfahren, bei dem kaum versucht wird, die Qualität des Videos zu verbessern, ist beispielsweise die so genannte Nächste-Nachbar-Interpolation. Diese Technik erhöht einfach die Auflösung der empfangenen Videodaten, indem sie ein ursprüngliches Pixel des übertragenen Videos als mehrere Pixel oder einen „Block“ von Pixeln darstellt. Dies führt dazu, dass das Video verpixelt und in Blöcken erscheint.
  • Andere, weniger grundlegende Hochskalierungstechniken verwenden die vorhandenen Videodaten, um unbekannte Zwischenpixel zwischen bekannten Pixelwerten zu schätzen, um die Auflösung mit einem weniger spürbaren Qualitätsverlust zu erhöhen. Diese Techniken sind im Allgemeinen unter dem Begriff Interpolation bekannt und berücksichtigen in der Regel einen gewichteten Durchschnitt bekannter Pixel in der Nähe jedes unbekannten Zwischenpixels oder passen sich einer Kurve oder Linie an die Umgebungswerte an und interpolieren zum Mittelpunkt entlang der Kurve oder Linie (z. B. bikubische oder bilineare Interpolation). In der Regel werden bei solchen Hochskalierungsverfahren die Werte für die zusätzlichen Pixel, die für die Erstellung eines Bildes mit höherer Auflösung erforderlich sind, durch Mittelwertbildung benachbarter Pixel ermittelt, was zu einem Unschärfeeffekt oder anderen visuellen Artefakten wie „Ringing“-Artefakten führt. Die meisten Hochskalierungsverfahren verwenden interpolationsbasierte Techniken, um höher aufgelöste Versionen der empfangenen Videodaten zu erzeugen. Verschiedene Interpolationsmethoden sind möglich und im Stand der Technik in Bezug auf Video- oder Bildverbesserung gut dokumentiert.
  • Verschiedene Interpolationsmethoden sind möglich und im Stand der Technik in Bezug auf Video- oder Bildverbesserung gut dokumentiert. Herkömmliche Hochskalierungstechniken sind mit vielen Problemen behaftet. Hochskalierungstechniken, die gezackte Kanten reduzieren, neigen beispielsweise dazu, einem hochskalierten Video mehr Unschärfe zu verleihen, während Hochskalierungstechniken, die „Halos“ oder „Ringing“-Artefakte reduzieren, dazu neigen, ein hochskaliertes Video weniger scharf zu machen. Außerdem sind herkömmliche Hochskalierungsverfahren nicht inhaltsbezogen oder adaptiv. Grundsätzlich sind herkömmliche Hochskalierungstechniken durch das Nyquist-Shannon-Abtasttheorem begrenzt.
  • Aufgrund der Nachteile der derzeitigen Hochskalierungstechniken kann die Qualität von Videodaten, die auf eine höhere Auflösung als die, mit der sie gespeichert oder übertragen werden, „hochskaliert“ wurden, unzureichend oder nicht optimal für die beabsichtigte Funktion sein.
  • Hintergrund - Superauflösungstechniken zur Bildverbesserung
  • Superauflösungstechniken sind Techniken, mit denen neue hochauflösende Informationen gewonnen werden können, die in niedrig aufgelösten Bildern nicht explizit vorhanden sind.
  • Superauflösungstechniken wurden für viele verschiedene Anwendungen entwickelt, z. B. für Satelliten- und Luftaufnahmen sowie für die medizinische Bildanalyse. Diese Anwendungen gehen von Bildern mit niedriger Auflösung aus, für die ein Bild mit höherer Auflösung nicht verfügbar oder möglicherweise nicht bekannt ist. Durch den Einsatz von Superauflösungstechniken kann die Auflösung solcher Bilder mit niedriger Auflösung erheblich verbessert werden.
  • Superauflösungstechniken ermöglichen die Erstellung eines oder mehrerer hochauflösender Bilder, in der Regel aus einem oder mehreren niedrig aufgelösten Bildern. In der Regel wird die Superauflösung auf einen Satz oder eine Reihe von Bildern mit niedriger Auflösung derselben Szene angewandt, und die Technik versucht, aus diesen Bildern ein Bild mit höherer Auflösung derselben Szene zu rekonstruieren.
  • Superauflösungstechniken lassen sich im Wesentlichen in zwei Bereiche einteilen: optische Superauflösungstechniken und geometrische Superauflösungstechniken. Optische Superauflösungstechniken ermöglichen es einem Bild, die ursprüngliche Beugungsgrenze zu überschreiten, während geometrische Superauflösungstechniken die Auflösung von digitalen Bildsensoren erhöhen. Auf dem Gebiet der Verbesserung der Bildauflösung scheint die geometrische Superauflösung die vorherrschende Technik zu sein.
  • Darüber hinaus werden Superauflösungsverfahren in der Regel in lern- oder beispielbasierte Verfahren und interpolationsbasierte (Mehrbild-)Verfahren unterteilt. Beispielbasierte Superauflösungsverfahren gelten allgemein als überlegene Technik zur Verbesserung der Bildqualität.
  • Eine spezielle Technik der Superauflösung ist die Rauschunterdrückung bei Mehrfachbelichtungen. Bei dieser Technik wird der Durchschnitt vieler Belichtungen genommen, um unerwünschtes Rauschen aus einem Bild zu entfernen und die Auflösung zu erhöhen.
  • Eine weitere Technik der Superauflösung ist die Subpixel-Bildlokalisierung, bei der der Schwerpunkt der Lichtverteilung über mehrere benachbarte Pixel berechnet und die Unschärfe entsprechend korrigiert wird. Diese Technik beruht jedoch auf der Annahme, dass das gesamte Licht im Bild von derselben Quelle stammt, was nicht immer richtig ist.
  • Hintergrund - Techniken des maschinellen Lernens
  • Das maschinelle Lernen ist ein Studienbereich, in dem ein Computer oder Computer lernen, Klassen von Aufgaben auszuführen, indem sie das Feedback nutzen, das aus der Erfahrung oder den gesammelten Daten generiert wird, die der maschinelle Lernprozess während der Ausführung dieser Aufgaben durch den Computer sammelt.
  • Typischerweise kann maschinelles Lernen grob in überwachte und nicht überwachte Ansätze eingeteilt werden, obwohl es spezielle Ansätze wie Verstärkungslernen und Teilüberwachtes Lernen gibt, die spezielle Regeln, Techniken und/oder Ansätze haben.
  • Beim überwachten maschinellen Lernen geht es darum, dass ein Computer eine oder mehrere Regeln oder Funktionen erlernt, um die von einem Bediener oder Programmierer vorgegebenen Beispieleingaben auf die gewünschten Ausgaben abzubilden, wobei in der Regel ein Datensatz, der die Eingaben enthält, etikettiert wird.
  • Beim unüberwachten Lernen geht es darum, eine Struktur für die Eingabedaten zu bestimmen, zum Beispiel bei der Mustererkennung, und es werden in der Regel unmarkierte Datensätze verwendet.
  • Beim Verstärkungslernen geht es darum, einen oder mehrere Computer in die Lage zu versetzen, mit einer dynamischen Umgebung zu interagieren, z. B. beim Spielen eines Spiels oder beim Fahren eines Fahrzeugs.
  • Es sind verschiedene Mischformen dieser Kategorien möglich, wie z. B. das „teilüberwachte“ maschinelle Lernen, bei dem ein Trainingsdatensatz nur teilweise etikettiert wurde.
  • Für unüberwachtes maschinelles Lernen gibt es eine Reihe von Anwendungsmöglichkeiten, wie z. B. die Anwendung von Computer-Vision-Techniken bei der Bildverarbeitung oder Videoverbesserung. Unüberwachtes maschinelles Lernen wird in der Regel zur Lösung von Problemen eingesetzt, bei denen eine unbekannte Datenstruktur in den Daten vorhanden sein könnte. Da die Daten nicht etikettiert sind, muss der maschinelle Lernprozess implizite Beziehungen zwischen den Daten erkennen, indem er beispielsweise eine Clustermetrik auf der Grundlage intern abgeleiteter Informationen ableitet. Beispielsweise kann ein unüberwachtes Lernverfahren verwendet werden, um die Dimensionalität eines Datensatzes zu reduzieren und zu versuchen, Beziehungen zwischen Clustern im Datensatz zu identifizieren und zu modellieren, und kann beispielsweise Maße für die Clustermitgliedschaft generieren oder Knotenpunkte in oder zwischen Clustern identifizieren (beispielsweise unter Verwendung einer Technik, die als gewichtete Korrelationsnetzwerkanalyse bezeichnet wird und auf hochdimensionale Datensätze angewandt werden kann, oder unter Verwendung von k-means clustering, um Daten durch ein Maß für den euklidischen Abstand zwischen den einzelnen Daten zu clustern).
  • Teilüberwachtes Lernen wird in der Regel zur Lösung von Problemen eingesetzt, bei denen ein teilweise etikettierter Datensatz vorliegt, z. B. wenn nur eine Teilmenge der Daten etikettiert ist. Beim teilüberwachten maschinellen Lernen werden extern bereitgestellte Etiketten und Zielfunktionen sowie alle impliziten Datenbeziehungen verwendet.
  • Bei der anfänglichen Konfiguration eines maschinellen Lernsystems, insbesondere bei Verwendung eines überwachten maschinellen Lernansatzes, kann der maschinelle Lernalgorithmus mit einigen Trainingsdaten oder einem Satz von Trainingsbeispielen versorgt werden, wobei jedes Beispiel typischerweise ein Paar aus einem Eingangssignal/-vektor und einem gewünschten Ausgangswert, Etikett (oder einer Klassifizierung) oder Signal ist. Der Algorithmus für maschinelles Lernen analysiert die Trainingsdaten und erzeugt eine verallgemeinerte Funktion, die mit ungesehenen Datensätzen verwendet werden kann, um gewünschte Ausgabewerte oder Signale für die ungesehenen Eingangsvektoren/-signale zu erzeugen. Der Benutzer muss entscheiden, welche Art von Daten als Trainingsdaten verwendet werden sollen, und einen repräsentativen Datensatz aus der realen Welt vorbereiten. Der Nutzer muss jedoch darauf achten, dass die Trainingsdaten genügend Informationen enthalten, um die gewünschten Ausgabewerte genau vorherzusagen, ohne zu viele Merkmale zu liefern (was dazu führen kann, dass zu viele Dimensionen vom maschinellen Lernprozess während des Trainings berücksichtigt werden, und auch bedeuten könnte, dass der maschinelle Lernprozess nicht zu guten Lösungen für alle oder bestimmte Beispiele konvergiert). Der Benutzer muss auch die gewünschte Struktur der erlernten oder verallgemeinerten Funktion festlegen, z. B. ob er Support-Vektor-Maschinen oder Entscheidungsbäume verwenden möchte.
  • Unüberwachte oder halbüberwachte Ansätze des maschinellen Lernens werden manchmal verwendet, wenn gekennzeichnete Daten nicht ohne weiteres verfügbar sind oder wenn das System aus unbekannten Daten neue gekennzeichnete Daten generiert, wenn einige anfängliche Saat-Etiketten vorhanden sind.
  • Die derzeitigen Trainingsansätze für die meisten Algorithmen des maschinellen Lernens können erhebliche Zeit in Anspruch nehmen, was den Nutzen von Ansätzen des maschinellen Lernens verzögert und auch den Einsatz von Techniken des maschinellen Lernens in einem breiteren potenziellen Anwendungsbereich verhindert.
  • Hintergrund - Maschinelles Lernen & Bildsuperauflösunq
  • Um die Effektivität einiger Superauflösungstechniken zu verbessern, ist es möglich, maschinelles Lernen, auch als „gelernter Ansatz“ bezeichnet, in die oben beschriebenen Bildsuperauflösungstechniken einzubauen.
  • Ein Ansatz des maschinellen Lernens, der für die Bildverbesserung verwendet werden kann, ist beispielsweise die Verwendung von Wörterbuchdarstellungen für Bilder, eine Technik, die allgemein als Wörterbuchlernen bezeichnet wird. Dieser Ansatz hat sich bei Low-Level-Vision-Aufgaben wie der Bildwiederherstellung bewährt.
  • Bei der Verwendung von Wörterbuchlernen wird die Darstellung eines Signals als lineare Kombination von Funktionen aus einer Sammlung von Atomen, die als Wörterbuch bezeichnet wird, gegeben. Zum Beispiel kann ein gegebenes Signal y wie folgt dargestellt werden: y = α 1 x 1 + α 2 x 2 + + α n x n
    Figure DE202016009102U1_0002
    wobei x1, ...,xn sind die Atome eines Wörterbuchs der Größe n und α1, ... an solche Koeffizienten sind, dass ||a||0 < λ, wobei λ die Sparsamkeitsbeschränkung ist, zum Beispiel wenn λ = 3 nicht mehr als drei Koeffizienten ungleich Null sein können. Die Atome haben die gleiche Dimensionalität wie das Signal y, so, während es möglich ist, ein Atom xi zu besitzen, das identisch mit y ist, ein Wörterbuch mit einfachen Atomen in der Regel dazu verwendet werden kann, ein breites Spektrum verschiedener Signale zu rekonstruieren.
  • Theoretisch sind mindestens k orthogonale Atome erforderlich, um Signale vollständig im k-dimensionalen Raum zu rekonstruieren. In der Praxis werden jedoch bessere Ergebnisse erzielt, wenn ein überkomplettes Wörterbuch verwendet wird, in dem es n > k Atome gibt und diese Atome nicht orthogonal zueinander sein müssen.
  • Ein vollständiges Wörterbuch bedeutet, dass die Anzahl der Wörterbuchatome der Dimensionalität der Bildpatches entspricht und dass die Wörterbuchatome linear unabhängig sind (d. h. alle orthogonal zueinander stehen und den gesamten oder vollständigen dimensionalen Raum repräsentieren können). Wenn also 16 x 16 Atome 16 x 16 Bildpatches repräsentieren, ist das Wörterbuch vollständig, wenn es 16 x 16 = 256 Atome hat. Wenn mehr Atome im Wörterbuch vorhanden sind, ist das Wörterbuch überkomplett.
  • Ein Beispiel für ein überkomplettes Wörterbuch ist in 1 dargestellt, in der ein 16 x 16 Pixel großes Patch durch eine lineare Kombination von 16 x 16 Wörterbuchatomen 5 dargestellt wird, die aus der Sammlung von Atomen, die das Wörterbuch 1 ist, gezogen wird. Es wird darauf hingewiesen, dass die Atome nicht lokal innerhalb des Wörterbuchs ausgewählt werden, sondern als die Linearkombination, die den Signalpatch für eine maximal zulässige Anzahl von Atomen und unabhängig von ihrer Position innerhalb des Wörterbuchs am besten approximiert. Ohne die Einschränkung, dass die Atome orthogonal zueinander sein müssen, werden größere Wörterbücher als der Signalraum, den das Wörterbuch darstellen soll, erstellt.
  • Überkomplette Wörterbücher werden verwendet, weil sie bessere Rekonstruktionen liefern, aber um den Preis, dass alle neuen Wörterbücher und Darstellungen, die während des Wörterbuchlernprozesses erstellt werden, gespeichert und übertragen werden müssen. Im Vergleich zu einer vorgegebenen Bibliothek von Darstellungen entsteht durch das Lernen von Wörterbüchern eine erheblich größere Datenmenge, da ein Datensatz erzeugt wird, der wesentlich größer ist als der Basissatz in einer vorgegebenen Bibliothek von Darstellungen und die Atome nicht alle orthogonal zueinander sind.
  • Beim Lernen von Wörterbüchern werden in Fällen, in denen eine bestehende Bibliothek von Darstellungen nicht ausreicht (oder keine Bibliothek vorhanden ist), Techniken des maschinellen Lernens eingesetzt, um Wörterbuchatome so anzupassen, dass sie sich den Bildmerkmalen anpassen können und genauere Darstellungen erhalten. Jede neue Repräsentation wird dann zusammen mit den Videodaten übertragen, damit die Repräsentation bei der Neuerstellung des Videos für die Anzeige verwendet werden kann.
  • Der Transformationsbereich kann ein Wörterbuch von Bildatomen sein, das durch einen als Wörterbuchlernen bekannten Trainingsprozess erlernt werden kann, bei dem versucht wird, die Korrespondenz zwischen niedrig aufgelösten und hoch aufgelösten Bildabschnitten (oder „Patches“) zu entdecken. Beim Wörterbuchlernen wird ein Satz linearer Darstellungen verwendet, um ein Bild darzustellen, und wenn ein überkomplettes Wörterbuch verwendet wird, kann eine Vielzahl linearer Darstellungen verwendet werden, um jedes Bildpatch darzustellen, um die Genauigkeit der Darstellung zu erhöhen.
  • Bei der Verwendung von auf Wörterbuchlernen basierenden Superauflösungsverfahren sind zwei Wörterbücher erforderlich: eines für das niedrig aufgelöste Bild und ein separates Wörterbuch für das hoch aufgelöste Bild. Um Superauflösungstechniken mit dem Lernen von Wörterbüchern zu kombinieren, werden Rekonstruktionsmodelle erstellt, um das Bild auf der Grundlage der Zuordnung der Koeffizienten des niedrig aufgelösten Wörterbuchs zu den Koeffizienten im hochauflösenden Wörterbuch zu verbessern. Dies wird in verschiedenen Veröffentlichungen beschrieben, darunter „On Single Image Scale-Up Using Sparse-Representations“ von R. Zeyde et al. aus dem Jahr 2010, „Image Superauflösung via sparse representation“ von J. Yang aus dem Jahr 2010 und „Coupled Dictionary Training for Image Superauflösung“ von J. Yang et al. aus dem Jahr 2012, auf die hiermit verwiesen wird.
  • Ein Nachteil bei der Verwendung von auf Wörterbuchlernen basierenden Superauflösungstechniken für Bilder mit niedriger Auflösung, mit denen versucht wird, das hochaufgelöste Bild nachzubilden, besteht darin, dass zwei Wörterbücher benötigt werden, eines für das Bild mit niedriger Auflösung und ein separates Wörterbuch für das hochaufgelöste Bild. Es ist zwar möglich, ein einziges kombiniertes Wörterbuch zu verwenden, aber in der Praxis muss für jede Auflösung ein explizites Modell erstellt werden, damit die Darstellungen zwischen den beiden Auflösungen des Bildes abgeglichen werden können.
  • Ein weiterer Nachteil des Wörterbuchlernens, insbesondere bei Verwendung eines überkompletten Wörterbuchs, ist die Datenmenge, die zusammen mit dem niedrig aufgelösten Bild übertragen werden muss, um aus dem niedrig aufgelösten Bild ein hoch aufgelöstes Bild zu erstellen.
  • Ein weiterer Nachteil des Wörterbuchlernens besteht darin, dass bei diesen Ansätzen im letzten Schritt der Rekonstruktion eines Bildes mit höherer Auflösung aus einem Bild mit niedrigerer Auflösung in der Regel ein lokaler Patch-Mittelwert gebildet wird, was zu einer unbeabsichtigten Glättung des rekonstruierten Bildes führen kann.
  • Ein weiterer Nachteil des Wörterbuchlernens ist, dass es sehr langsam ist und je nach Größe des Wörterbuchs einen hohen Speicherbedarf haben kann.
  • Hintergrund - Artefaktentfernung in visuellen Daten
  • Bei der Verarbeitung visueller Daten können häufig Artefakte und/oder Rauschen in die visuellen Daten eingebracht werden, insbesondere bei der Verarbeitung zur Komprimierung visueller Daten oder bei der Übertragung der visuellen Daten über ein Netzwerk. Solche Artefakte können Unschärfe, Verpixelung, Blockierung, Ringing, Aliasing, fehlende Daten und andere Markierungen, Flecken, Defekte und Anomalien in den visuellen Daten sein. Diese Artefakte in visuellen Daten können die Benutzererfahrung beim Betrachten der visuellen Daten beeinträchtigen. Darüber hinaus können diese Artefakte in visuellen Daten auch die Effektivität von Techniken zur Verarbeitung visueller Daten, wie z. B. die Superauflösung von Bildern, sowie andere visuelle Aufgaben, wie z. B. die Klassifizierung und Segmentierung von Bildern, beeinträchtigen, die verarbeitete Bilder als Eingabe verwenden.
  • Verlustbehaftete Komprimierung, bei der visuelle Daten unter Verwendung ungenauer Näherungswerte kodiert werden, ist eine besonders häufige Quelle von Artefakten. Eine verlustbehaftete Komprimierung ist häufig erforderlich, um die Größe eines digitalen Bildes oder Videos zu verringern, damit es über ein Netzwerk übertragen werden kann, ohne eine übermäßige Bandbreite zu verbrauchen. Mit verlustbehafteter Komprimierung lassen sich hohe Kompressionsraten für visuelle Daten erzielen, allerdings auf Kosten einer geringeren Qualität der ursprünglichen visuellen Daten und der Entstehung von Artefakten.
  • Die Übertragung visueller Daten über ein Netz kann durch Übertragungsfehler zwischen den Netzknoten selbst Artefakte in die visuellen Daten einbringen.
  • Derzeitige Methoden zur Beseitigung von Artefakten (im Folgenden als Korrektur der visuellen Datentreue bezeichnet) korrigieren im Allgemeinen nur eine bestimmte Art von Artefakten. Beispiele für solche Techniken sind deblocking-orientierte Methoden wie die punktweise formadaptive diskrete Kosinustransformation (im Folgenden als punktweise SA-DCT bezeichnet), die sich mit Blocking-Artefakten befassen. Solche Verfahren sind nicht sehr leistungsfähig und können als Nebeneffekt weitere Artefakte verursachen, wie z. B. die Überglättung visueller Daten.
  • Zusammenfassung der Erfindung
  • Aspekte und/oder Ausführungsformen sind in den beigefügten Ansprüchen dargelegt. Diese und andere Aspekte und Ausführungsformen werden hier ebenfalls beschrieben.
  • Bestimmte Aspekte und/oder Ausführungsformen zielen darauf ab, Techniken zur Erzeugung hierarchischer Algorithmen bereitzustellen, die bei der Umwandlung ursprünglicher visueller Daten hoher Qualität in visuelle Daten geringerer Qualität verwendet werden können, um die Wiederherstellung visueller Daten höherer Qualität aus den visuellen Daten geringerer Qualität ohne signifikanten Qualitätsverlust zwischen den ursprünglichen visuellen Daten hoher Qualität und den visuellen Daten höherer Qualität zu ermöglichen.
  • Weitere Aspekte und/oder Ausführungsformen zielen darauf ab, Techniken zur Rekonstruktion und/oder Verbesserung von visuellen Daten geringerer Qualität zu visuellen Daten höherer Qualität bereitzustellen.
  • Andere Aspekte und/oder Ausführungsformen zielen darauf ab, Techniken für maschinelles Lernen bereitzustellen.
  • Allgemeine Trainingsmethode
  • Gemäß einem Aspekt wird ein Verfahren zur Entwicklung eines Verbesserungsmodells für visuelle Daten geringer Qualität bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen eines oder mehrerer Abschnitte visueller Daten höherer Qualität; Trainieren eines hierarchischen Algorithmus, wobei der hierarchische Algorithmus die Qualität eines oder mehrerer Abschnitte visueller Daten geringerer Qualität erhöhen kann, um den einen oder mehrere Abschnitte visueller Daten höherer Qualität im Wesentlichen zu reproduzieren; und Ausgeben des hierarchischen Algorithmus.
  • Das Training hierarchischer Algorithmen kann die Entwicklung von Verbesserungs- und/oder Rekonstruktionsmodellen zur Verbesserung visueller Daten in mindestens einer Ausführungsform ermöglichen. In einigen Ausführungsformen können visuelle Daten Bilddaten und/oder Videodaten sein. Darüber hinaus können in einigen Ausführungsformen Verbesserungsmodelle entwickelt werden, um die Genauigkeit von visuellen Daten höherer Qualität, die aus visuellen Daten geringerer Qualität reproduziert werden können, im Vergleich zu den ursprünglichen visuellen Daten höherer Qualität zu erhöhen. In mindestens einer Ausführungsform kann die Kenntnis der ursprünglichen visuellen Daten es ermöglichen, den hierarchischen Algorithmus auf der Grundlage der Kenntnis sowohl der ursprünglichen visuellen Daten als auch der visuellen Daten geringerer Qualität zu trainieren (und/oder zu entwickeln), um einen hierarchischen Algorithmus zu trainieren, um die ursprünglichen visuellen Daten aus den visuellen Daten geringerer Qualität im Wesentlichen zu reproduzieren.
  • Optional wird der hierarchische Algorithmus ausgehend von einer bekannten Initialisierung entwickelt.
  • In einigen Ausführungsformen kann der hierarchische Algorithmus aus einer bekannten Initialisierung entwickelt werden, z. B. einer hierarchischen Funktion oder Basis. In einigen dieser Ausführungsformen kann es sich bei der hierarchischen Funktion oder Basis beispielsweise um Haar-Wavelets oder einen oder mehrere vorab trainierte hierarchische Algorithmen oder Sätze hierarchischer Algorithmen handeln. In mindestens einer Ausführungsform kann durch die Bereitstellung einer bekannten Initialisierung das Training hierarchischer Algorithmen beschleunigt werden, und die bekannte Initialisierung kann näher an der besten Lösung liegen, insbesondere im Vergleich zum Start mit einer zufälligen Initialisierung. In einigen Ausführungsformen kann ein trainierter hierarchischer Algorithmus für visuelle Eingabedaten entwickelt werden, wobei der trainierte hierarchische Algorithmus für diese Eingabedaten auf der Grundlage des ausgewählten, am ähnlichsten vortrainierten Algorithmus entwickelt wird. In mindestens einer Ausführungsform kann die Auswahl des oder der ähnlichsten vortrainierten Algorithmus/en auf der Grundlage einer oder mehrerer Metriken erfolgen, die mit den vortrainierten Modellen verbunden sind, wenn sie mit den Eingabedaten verglichen und/oder auf sie angewendet werden. In einigen Ausführungsformen können die Metriken ein beliebiges vorbestimmtes Maß für die Ähnlichkeit oder Differenz sein. In einigen Ausführungsformen kann der ähnlichste vortrainierte Algorithmus als Ausgangspunkt für die Entwicklung eines trainierten oder maßgeschneiderten Algorithmus für die Eingabedaten verwendet werden, da ein maßgeschneiderter Algorithmus nicht so umfangreich entwickelt werden muss, wie es bei der Entwicklung eines Algorithmus nach den ersten Prinzipien erforderlich ist.
  • Optional wird das Verfahren an einem ersten Netzknoten innerhalb eines Netzes durchgeführt. Darüber hinaus kann der hierarchische Algorithmus optional an einen zweiten Netzknoten im Netz übertragen werden.
  • Durch die Verringerung der Qualität der visuellen Daten (z. B. durch Verringerung der Auflösung der Videodaten) können in einigen Ausführungsformen weniger Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten gesendet werden, damit der zweite Knoten die visuellen Daten vom ersten Knoten anzeigen kann. In einigen Ausführungsformen können die visuellen Daten geringerer Qualität zusammen mit einem für die Rekonstruktion zu verwendenden Modell die Übertragung von weniger Daten ermöglichen, als wenn die ursprüngliche Version der gleichen visuellen Daten höherer Qualität zwischen den Knoten übertragen wird.
  • Optional werden der eine oder die mehreren Abschnitte mit visuellen Daten geringerer Qualität aus dem einen oder den mehreren Abschnitten mit visuellen Daten höherer Qualität erzeugt. Darüber hinaus können optional der eine oder die mehreren Abschnitte mit visuellen Daten geringerer Qualität aus den visuellen Daten hoher Qualität unter Verwendung eines Verfahrens mit Downsampling erzeugt werden.
  • Durch die Verringerung der Qualität eines Abschnitts der visuellen Daten können in einigen Fällen weniger Daten gesendet werden, um die visuellen Daten über ein Netz zu übertragen. Darüber hinaus kann in einigen Ausführungsformen das Senden der Version mit geringerer Qualität zusammen mit einem Modell, das für die Rekonstruktion verwendet werden soll, immer noch dazu führen, dass weniger Daten übertragen werden, als wenn die ursprüngliche Version mit höherer Qualität desselben Abschnitts der visuellen Daten allein übertragen wird.
  • Optional werden der eine oder die mehreren Abschnitte mit visuellen Daten geringerer Qualität aus dem einen oder den mehreren Abschnitten mit visuellen Daten höherer Qualität durch ein Verfahren erzeugt, das eine Komprimierung und/oder Quantisierung umfasst.
  • Verlustbehaftete Komprimierung, eine Verringerung der Bildrate, eine Verringerung der Genauigkeit der Pixeldaten (z. B. von 32 auf 16 Bit) und die Quantisierung visueller Daten sind Methoden zur Erzeugung visueller Daten geringerer Qualität aus visuellen Daten höherer Qualität und können in einigen Ausführungsformen zur Erzeugung visueller Daten geringerer Qualität aus visuellen Daten höherer Qualität verwendet werden.
  • Der eine oder die mehreren Abschnitte der visuellen Daten höherer Qualität und/oder der visuellen Daten geringerer Qualität können ein Einzelbild, eine Folge von Einzelbildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Einzelbildern umfassen. Optional kann der eine oder die mehreren Abschnitte der visuellen Daten höherer Qualität und/oder der eine oder die mehreren Abschnitte der visuellen Daten geringerer Qualität ein Bild, eine Bildsequenz, einen Videoabschnitt oder eine Ausgabe eines Videospiels umfassen.
  • Je nach den visuellen Daten, die in einer Ausführungsform verarbeitet werden, können Modelle für Abschnitte visueller Daten erzeugt werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. Jede dieser Optionen kann in einigen oder allen Ausführungsformen verwendet werden, um eine Methode zur Verbesserung oder Rekonstruktion visueller Daten bereitzustellen, die eine höhere Qualität der visuellen Daten erzeugt.
  • Allgemeine Erweiterung/Rekonstruktion
  • Gemäß einem anderen Aspekt wird ein Verfahren zum Verbessern visueller Daten geringerer Qualität unter Verwendung hierarchischer Algorithmen bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen eines oder mehrerer Abschnitte visueller Daten geringerer Qualität; Anwenden eines hierarchischen Algorithmus auf den einen oder die mehreren Abschnitte visueller Daten geringerer Qualität, um den einen oder die mehreren Abschnitte visueller Daten geringerer Qualität auf einen oder mehrere Abschnitte visueller Daten höherer Qualität zu verbessern, wobei der hierarchische Algorithmus unter Verwendung eines erlernten Ansatzes entwickelt wurde; und Ausgeben des einen oder der mehreren Abschnitte visueller Daten höherer Qualität.
  • In einigen Ausführungsformen kann ein Abschnitt visueller Daten, der über ein Netzwerk übertragen wurde, mit hierarchischen Algorithmen verbessert werden. Durch die Anwendung eines hierarchischen Algorithmus in einigen oder allen dieser Ausführungsformen kann eine qualitativ hochwertigere Version der visuellen Daten für visuelle Eingangsdaten geringerer Qualität ausgegeben werden. Daher müssen in einigen Ausführungsformen nur visuelle Daten geringerer Qualität über das Netz übertragen werden. In anderen Ausführungsformen können visuelle Daten geringerer Qualität zusammen mit einem oder mehreren hierarchischen Algorithmen, die zur Verbesserung visueller Daten geringerer Qualität verwendet werden können, über das Netz übertragen werden.
  • Optional wird der hierarchische Algorithmus aus einer Bibliothek von gelernten hierarchischen Algorithmen ausgewählt.
  • In einigen Ausführungsformen ermöglicht eine gespeicherte Bibliothek gelernter hierarchischer Algorithmen die Auswahl eines hierarchischen Algorithmus für den Vergleich, ohne dass diese entwickelt oder von einer externen Quelle bezogen werden müssen. In einigen Ausführungsformen kann der Vergleich zwischen einer Vielzahl von Algorithmen in der Bibliothek erfolgen. Die Verwendung einer solchen Bibliothek kann, zumindest in einigen Ausführungsformen, zu einer schnelleren Auswahl eines geeigneten hierarchischen Algorithmus zur Verbesserung der visuellen Daten oder, in einigen Ausführungsformen, des am besten geeigneten hierarchischen Algorithmus in einer Bibliothek führen (z. B. durch Zugrundelegung eines Maßes für die Eignung auf der Grundlage einer vorgegebenen Metrik).
  • Optional wird die Auswahl des hierarchischen Algorithmus aus der Bibliothek der gelernten hierarchischen Algorithmen durch metrische Daten bestimmt, die mit den visuellen Daten geringerer Qualität verbunden sind.
  • In einigen Ausführungsformen wird davon ausgegangen, dass eine Rekonstruktion mit dem jeweiligen hierarchischen Algorithmus umso genauer ist, je näher die Merkmale des hierarchischen Algorithmus an denen der metrischen Daten liegen, die den visuellen Daten geringerer Qualität zugeordnet sind. Daher kann durch die Verwendung von zugeordneten metrischen Daten in einigen Ausführungsformen auf diese Weise ein geeignetes Modell aus der Vielzahl der verfügbaren hierarchischen Algorithmen genauer ausgewählt werden.
  • Optional erfolgen die Schritte des Empfangs des einen oder der mehreren Abschnitte mit visuellen Daten geringerer Qualität und der Anwendung des hierarchischen Algorithmus auf den einen oder die mehreren Abschnitte mit visuellen Daten geringerer Qualität im Wesentlichen gleichzeitig.
  • In einigen Ausführungsformen kann durch den Empfang des einen oder der mehreren Abschnitte mit visuellen Daten geringerer Qualität und die im Wesentlichen gleichzeitige Anwendung des hierarchischen Algorithmus auf einen oder mehrere Abschnitte mit visuellen Daten geringerer Qualität die für die Verbesserung der visuellen Daten benötigte Zeit reduziert werden. Dies ist besonders bei Live-Übertragungen von Vorteil, bei denen die Zeit für die Verarbeitung der visuellen Daten vor der Übertragung minimiert werden kann.
  • Optional werden die ein oder mehreren Abschnitte der visuellen Daten geringerer Qualität aus einem oder mehreren Abschnitten der ursprünglichen visuellen Daten höherer Qualität erzeugt.
  • In einigen Ausführungsformen müssen durch die Erzeugung visueller Daten geringerer Qualität aus den ursprünglichen visuellen Daten höherer Qualität und die Übertragung der visuellen Daten geringerer Qualität anstelle der ursprünglichen visuellen Daten höherer Qualität weniger Daten verarbeitet oder über ein Netzwerk gesendet werden.
  • Offline-Training
  • Gemäß einem anderen Aspekt wird ein Verfahren zum Entwickeln eines Verbesserungsmodells für visuelle Daten bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen eines oder mehrerer Abschnitte visueller Daten höherer Qualität und eines oder mehrerer Abschnitte visueller Daten geringerer Qualität, die dem einen oder den mehreren Abschnitten visueller Daten höherer Qualität entsprechen; Entwickeln eines hierarchischen Algorithmus, wobei der hierarchische Algorithmus so betrieben werden kann, dass er den einen oder die mehreren Abschnitte visueller Daten höherer Qualität aus dem entsprechenden einen oder den mehreren Abschnitten visueller Daten geringerer Qualität im Wesentlichen reproduziert; und Speichern des entwickelten hierarchischen Algorithmus in einer Bibliothek entwickelter hierarchischer Algorithmen.
  • In einigen Ausführungsformen können durch die Entwicklung und Speicherung hierarchischer Algorithmen, die zur Verbesserung visueller Daten in einer Bibliothek von Verbesserungsalgorithmen trainiert wurden, trainierte hierarchische Algorithmen aus der Bibliothek zur wiederholten Verwendung ausgewählt werden, um die Notwendigkeit eines individuellen Trainings von Grund auf zu verringern, wenn eine Verbesserung visueller Daten erforderlich ist. In einigen dieser Ausführungsformen kann dieser Ansatz Rechenaufwand sparen und die Übertragung visueller Daten über ein Netzwerk beschleunigen, beispielsweise wenn es möglich ist, ein geeignetes Modell für die visuelle Verbesserung aus der Bibliothek auszuwählen, anstatt ein neues Modell zu trainieren. Außerdem können hierarchische Algorithmen zumindest in einigen Fällen bereits vor der Übertragung visueller Daten trainiert werden, so dass die zeitlichen Beschränkungen entfallen, die beim Training hierarchischer Algorithmen im Wesentlichen unmittelbar vor der Übertragung visueller Daten auftreten können.
  • Optional wird der entwickelte hierarchische Algorithmus in Verbindung mit metrischen Daten gespeichert, die sich auf einen Inhaltstyp der visuellen Daten höherer Qualität und/oder der visuellen Daten geringerer Qualität beziehen, aus denen der hierarchische Algorithmus entwickelt wurde.
  • In einigen Ausführungsformen können durch Speichern des trainierten Modells in der Bibliothek mit metrischen Daten, die sich auf die zugehörigen visuellen Daten beziehen, optional die metrischen Daten verwendet werden, um zu bestimmen, ob das trainierte Modell für die Verwendung mit visuellen Daten mit ähnlichen metrischen Daten geeignet ist, solche metrischen Daten zum Vergleich mit metrischen Daten verwendet werden, die zu weiteren visuellen Daten gehören, um einen geeigneten hierarchischen Algorithmus zur Verbesserung dieser weiteren visuellen Daten auszuwählen. Dies bedeutet, dass zumindest in einigen dieser Ausführungsformen ein spezifischer hierarchischer Algorithmus nicht für jeden Satz visueller Daten trainiert werden muss; stattdessen können vorhandene trainierte hierarchische Algorithmen verwendet werden, um ähnliche Sätze visueller Daten zu verbessern wie die, für die sie trainiert wurden.
  • Optional wird der hierarchische Algorithmus aus einem bekannten hierarchischen Algorithmus entwickelt.
  • In einigen Ausführungsformen kann die Entwicklung eines neuen hierarchischen Algorithmus auf der Grundlage eines bekannten hierarchischen Algorithmus, der auf ähnlichen visuellen Daten trainiert wurde wie die visuellen Daten, auf denen der neue Algorithmus trainiert werden soll, den Zeit- und/oder Rechenaufwand für das Training des neuen hierarchischen Algorithmus verringern.
  • Optional wird der bekannte hierarchische Algorithmus in der Bibliothek der entwickelten hierarchischen Algorithmen gespeichert.
  • Bei einigen Ausführungsformen können ein oder mehrere bekannte Algorithmen in einer Bibliothek mit bereits entwickelten Algorithmen gespeichert werden, so dass ein schneller und einfacher Zugriff auf diese Algorithmen möglich ist, was die Effizienz des Trainingsprozesses erhöht.
  • Optional wird das Verfahren an einem Netzknoten innerhalb eines Netzes durchgeführt.
  • Indem das Verfahren in einigen Ausführungsformen an einem Netzknoten durchgeführt wird, können die trainierten hierarchischen Algorithmen über das Netz an weitere Netzknoten übertragen werden, an denen sie benötigt werden. Zumindest in einigen Ausführungsformen kann die Bibliothek der trainierten Modelle auch fernab des Ortes, an dem das Training stattfindet, gespeichert werden.
  • Optional umfasst das Verfahren zusätzlich einen Schritt der Kodierung des einen oder der mehreren Abschnitte visueller Daten höherer Qualität und/oder des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität.
  • Optional erfolgt der Schritt der Kodierung des einen oder der mehreren Abschnitte mit visuellen Daten höherer Qualität und/oder des einen oder der mehreren Abschnitte mit visuellen Daten geringerer Qualität nach dem Schritt der Entwicklung des hierarchischen Algorithmus.
  • Visuelle Daten werden in vielen Fällen vor der Übertragung über ein Netz oder der Speicherung in einem Speicher kodiert. Durch die Kodierung der visuellen Daten, nachdem der hierarchische Algorithmus zumindest in einigen Ausführungsformen trainiert wurde, sind die visuellen Daten dann für die Übertragung oder Speicherung bereit. Der trainierte hierarchische Algorithmus ist dann in der Lage, die Qualität der dekodierten visuellen Daten in diesen Ausführungsformen zu verbessern.
  • Optional umfasst das Verfahren zusätzlich einen Schritt der Verfeinerung des hierarchischen Algorithmus nach dem Schritt der Codierung des einen oder der mehreren Abschnitte visueller Daten höherer Qualität und/oder des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität.
  • Durch die Verfeinerung des hierarchischen Algorithmus nach der Kodierung der visuellen Daten in einigen Ausführungsformen kann der hierarchische Algorithmus trainiert werden, um die Qualität der kodierten visuellen Daten zu verbessern, ohne dass die visuellen Daten zuerst dekodiert werden müssen. In einigen dieser Ausführungsformen kann dies die Zeit verringern, die für die Dekodierung und Verbesserung der visuellen Daten geringerer Qualität erforderlich ist, um die visuellen Daten höherer Qualität im Wesentlichen zu reproduzieren.
  • Gemäß einem weiteren Aspekt wird ein Verfahren zur Verringerung der zu übertragenden Datenmenge bei der Kommunikation visueller Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten bereitgestellt, wobei das Verfahren an dem ersten Knoten die folgenden Schritte umfasst: Reduzieren der Qualität eines oder mehrerer Abschnitte visueller Daten höherer Qualität auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität; Auswählen mindestens eines Algorithmus, der die Qualität mindestens eines Abschnitts visueller Daten geringerer Qualität unter Verwendung der visuellen Daten höherer Qualität erhöhen kann, um die Auswahl des Algorithmus zu optimieren, wobei der Algorithmus mindestens dem einen Abschnitt visueller Daten geringerer Qualität entspricht; Übertragen des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten; und Übertragen einer oder mehrerer Referenzen an den zweiten Knoten, die dem einen oder den mehreren ausgewählten Algorithmen entsprechen, die dem einen oder den mehreren Abschnitten von visuellen Daten geringerer Qualität entsprechen, die an den zweiten Knoten übertragen wurden; wobei der zweite Knoten in der Lage ist, den ausgewählten Algorithmus unter Verwendung der übertragenen einen oder mehreren Referenzen zu identifizieren und die visuellen Daten höherer Qualität aus den übertragenen visuellen Daten geringerer Qualität unter Verwendung der identifizierten ausgewählten Algorithmen, die jedem Abschnitt der visuellen Daten geringerer Qualität entsprechen, im Wesentlichen zu reproduzieren.
  • Gemäß einem anderen Aspekt wird ein Verfahren zum Erhöhen der Qualität eines Abschnitts visueller Daten bereitgestellt, die über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, wobei das Verfahren an dem zweiten Knoten die folgenden Schritte umfasst: Empfangen visueller Daten geringerer Qualität über ein Netzwerk; Empfangen eines entsprechenden Verweises auf einen Algorithmus, der die Qualität der visuellen Daten geringerer Qualität erhöhen kann, wobei der Algorithmus mit dem Wissen über visuelle Daten höherer Qualität ausgewählt wird, aus denen die visuellen Daten geringerer Qualität erzeugt wurden; und Verwenden des Algorithmus, um die Qualität der visuellen Daten geringerer Qualität zu erhöhen, um die visuellen Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • Gemäß einem weiteren Aspekt wird ein System zur Reduzierung der übertragenen Datenmenge bei der Kommunikation visueller Daten über ein Netzwerk bereitgestellt, wobei das System zwei oder mehr Knoten umfasst, wobei ein erster Knoten konfiguriert ist, um: die Qualität eines oder mehrerer Abschnitte visueller Daten höherer Qualität auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität zu reduzieren; mindestens einen Algorithmus auszuwählen, der die Qualität mindestens eines Abschnitts visueller Daten geringerer Qualität erhöhen kann, wobei die visuellen Daten höherer Qualität verwendet werden, um die Auswahl des Algorithmus zu optimieren, wobei der Algorithmus mindestens dem einen Abschnitt der visuellen Daten geringerer Qualität entspricht; um den einen oder die mehreren Abschnitte von visuellen Daten geringerer Qualität an den zweiten Knoten zu übertragen; und um einen oder mehrere Verweise auf den einen oder die mehreren Algorithmen, die dem einen oder den mehreren Abschnitten von visuellen Daten geringerer Qualität entsprechen, die an den zweiten Knoten übertragen wurden, an den zweiten Knoten zu übertragen; wobei der zweite Knoten konfiguriert ist, um: visuelle Daten geringerer Qualität über ein Netzwerk zu empfangen; einen entsprechenden Verweis auf den Algorithmus zu empfangen, der zum Erhöhen der Qualität der visuellen Daten geringerer Qualität betreibbar ist, wobei der Algorithmus mit der Kenntnis von visuellen Daten höherer Qualität ausgewählt wird, aus denen die visuellen Daten geringerer Qualität erzeugt wurden; und den Algorithmus zum Erhöhen der Qualität der visuellen Daten geringerer Qualität zu verwenden, um die visuellen Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • Durch die Übertragung einer Version visueller Daten geringerer Qualität, wie z. B. eines Abschnitts visueller Daten geringer Qualität oder einer Reihe visueller Datenabschnitte, zusammen mit einem Bibliotheksverweis auf einen Algorithmus (d. h. einen oder alle Algorithmen, Rekonstruktionsalgorithmen, Modelle, Rekonstruktionsmodelle, Parameter oder Rekonstruktionsparameter) zur Unterstützung der Rekonstruktion visueller Daten höherer Qualität, wie z. B. eines hochauflösenden Videobildes oder einer Reihe von Bildern, können zumindest in einigen Ausführungsformen weniger Daten über ein Netzwerk übertragen werden, um die Anzeige visueller Daten hoher Qualität zu ermöglichen, als wenn nur die visuellen Daten hoher Qualität übertragen würden.
  • Optional erfolgen die Schritte des Übertragens des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten und des Übertragens einer oder mehrerer Referenzen an den zweiten Knoten, die dem einen oder den mehreren ausgewählten Algorithmen entsprechen, die dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entsprechen, die an den zweiten Knoten übertragen werden, gemeinsam oder im Wesentlichen gleichzeitig.
  • Indem sowohl visuelle Daten als auch ein oder mehrere Verweise auf Algorithmen in einer Algorithmenbibliothek übertragen werden, kann die Datenmenge reduziert werden, da nur ein oder mehrere Verweise auf Algorithmen statt der Algorithmen selbst übertragen werden.
  • Optional ist der Algorithmus ein hierarchischer Algorithmus.
  • In einigen Ausführungsformen sind die verwendeten Algorithmen hierarchische Algorithmen. Es ist zu beachten, dass Algorithmen auch als Modelle, Darstellungen, Parameter oder Funktionen bezeichnet werden können. In einigen dieser Ausführungsformen können hierarchische Algorithmen eine wesentlich genauere Rekonstruktion visueller Daten ermöglichen, z. B. die Erzeugung eines hochauflösenden Videos mit höherer Qualität aus dem übertragenen niedrigauflösenden Video, wobei die Qualität z. B. anhand einer niedrigen Fehlerrate im Vergleich zum ursprünglichen hochauflösenden Video gemessen werden kann.
  • Optional ist der Algorithmus ein nichtlinearer Algorithmus.
  • In einigen Ausführungsformen kann die Verwendung nichtlinearer Algorithmen flexibler und aussagekräftiger sein als auf Wörterbuchlernen basierende Ansätze und weniger Koeffizienten für die Rekonstruktion visueller Daten höherer Qualität verwenden. In einigen dieser Ausführungsformen kann dadurch die Rekonstruktion von Abschnitten höherer Qualität wesentlich genauer sein.
  • Optional kann der Algorithmus aus einer Bibliothek von Algorithmen ausgewählt werden, die im ersten Knoten, im zweiten Knoten, in einer zentralisierten Datenbank im Netz oder in einer verteilten Datenbank im Netz gespeichert sind.
  • In einigen Ausführungsformen kann eine Bibliothek von Algorithmen die Auswahl eines im Wesentlichen optimalen, wenn nicht sogar des optimalsten, in der Bibliothek verfügbaren Algorithmus ermöglichen, um die visuellen Daten geringerer Qualität in visuelle Daten höherer Qualität zu rekonstruieren. In einigen dieser Ausführungsformen kann die Verwendung einer Bibliothek auch ermöglichen, dass auf den ausgewählten Algorithmus durch einen Referenzbezeichner verwiesen wird. In bestimmten Ausführungsformen können Bibliotheken an beiden Knotenpunkten und/oder in zentralisierten oder verteilten Datenbanken bereitgestellt werden und optional gemeinsame oder synchronisierte Referenzbezeichner für dieselben Algorithmen verwenden.
  • Optional entspricht die empfangene Referenz einem Algorithmus, der in einer Bibliothek des zweiten Knotens gespeichert ist.
  • Durch die Bereitstellung gemeinsamer oder synchronisierter Bibliotheken von Algorithmen sowohl am ersten als auch am zweiten Knoten in zumindest einigen Ausführungsformen und durch die Übertragung einer Referenz oder eines Referenzbezeichners bei der Übertragung der entsprechenden visuellen Daten geringerer Qualität, um die Auswahl passender Algorithmen aus beiden Bibliotheken unter Verwendung des Referenzbezeichners zur Identifizierung des ausgewählten Algorithmus zu ermöglichen, müssen nur der Referenzbezeichner und die visuellen Daten geringerer Qualität zwischen den Knoten übertragen werden, wodurch die Datenübertragung reduziert wird, da der Algorithmus selbst nicht übertragen werden muss.
  • Optional, wenn der zweite Knoten den ausgewählten Algorithmus nicht identifizieren kann, sendet der zweite Knoten eine Anfrage an den ersten Knoten, eine zentrale Datenbank oder eine verteilte Datenbank zur Übertragung des ausgewählten Algorithmus an den zweiten Knoten.
  • In einigen Ausführungsformen kann der zweite Knoten so konfiguriert werden, dass er in der Lage ist, in Situationen, in denen die Bibliotheken des zweiten Knotens und des anderen Knotens nicht synchronisiert sind, Modelle von einem Knoten anzufordern (z. B. von einem ersten Knoten oder alternativ von einem anderen Knoten oder einem Knoten, mit dem mehrere Bibliotheken synchronisiert sind, je nach Ausführungsform), so dass die visuellen Daten höherer Qualität auch dann rekonstruiert werden können, wenn die übermittelte Referenz nicht einem im zweiten Knoten gespeicherten Algorithmus entspricht. Dadurch können in einigen Fällen Fehler im Rekonstruktionsprozess vermieden werden.
  • Optional weist der Algorithmus ein oder mehrere neuronale Faltungsnetzwerke auf.
  • In einigen Ausführungsformen können neuronale Faltungsnetzwerke eine im Wesentlichen optimale Rekonstruktion von visuellen Daten höherer Qualität aus visuellen Daten geringerer Qualität erreichen (wenn die rekonstruierten visuellen Daten höherer Qualität mit den ursprünglichen visuellen Daten hoher Qualität verglichen werden), während sie eine relativ geringe Datengröße aufweisen, beispielsweise im Vergleich zu überkompletten Wörterbüchern.
  • Optional werden die hochwertigen visuellen Daten in kleinere Abschnitte unterteilt, die auf Ähnlichkeiten zwischen einer Vielzahl von Abschnitten der hochwertigen visuellen Daten basieren.
  • In einigen Ausführungsformen können durch die Unterteilung der visuellen Daten in kleinere Abschnitte, wobei es sich bei den Abschnitten um Sequenzen von Einzelbildern oder Teile von einem oder mehreren Einzelbildern handeln kann, und wobei die Unterteilung auf einer bestimmten Ähnlichkeitsmetrik basieren kann, effizientere Modelle ausgewählt werden. In einigen Ausführungsformen können beispielsweise mehrere Abschnitte gruppiert werden, die alle Teil einer Landschaftsaufnahme sind, und ein Modell kann zur Rekonstruktion der Szene, d. h. der Abfolge von Einzelbildern, verwendet werden, anstatt ein anderes Modell für jedes einzelne Bild in der Szene zu verwenden. Wenn die nächste Szene in den visuellen Daten sehr unterschiedlich ist (z. B. eine Szene mit erheblicher Bewegung nach einer Szene, die eine unbewegte Landschaft zeigt), kann die Szene als sehr unterschiedlich erkannt werden und ein neues Modell für die Szene ausgewählt werden. In einigen Ausführungsformen können für jede Szene oder jeden Abschnitt spezifische Modelle ausgewählt werden, was zumindest eine gewisse Optimierung oder Anpassung des Rekonstruktionsmodells/der Rekonstruktionsmodelle im Vergleich zur Verwendung eines generischen Modells für die gesamten visuellen Daten ermöglicht.
  • Optional weisen der eine oder die mehreren Abschnitte ein Einzelbild, eine Folge von Einzelbildern und einen Bereich innerhalb eines Bildes oder eine Folge von Einzelbildern auf.
  • Je nach den zu verarbeitenden visuellen Daten können in einigen Ausführungsformen Modelle für Abschnitte visueller Daten ausgewählt werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. Diese Auswahl kann in einigen dieser Ausführungsformen notwendig sein, um die effizienteste Methode zur Rekonstruktion einer qualitativ besseren Version eines Teils der ursprünglichen visuellen Daten bereitzustellen.
  • Optional werden die visuellen Daten in eine Abfolge von Abschnitten umgewandelt, gegebenenfalls bevor die Qualität gesenkt wird.
  • Die Aufteilung der visuellen Daten in Abschnitte, z. B. in eine Reihe von Einzelbildern oder Bildern, ermöglicht es, die einzelnen Abschnitte abzutasten und so die Größe der visuellen Daten zu verringern, so dass Abschnitte mit geringerer Qualität als neu kodierte visuelle Daten im ursprünglichen Code übertragen werden können (oder optional neu kodiert werden können, wobei in einigen Fällen ein optimalerer Codec und/oder eine geringere Qualität verwendet wird).
  • Optional wird die Qualität eines oder mehrerer Abschnitte visueller Daten höherer Qualität durch Downsampling auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität reduziert.
  • Durch die Verringerung der Qualität des Abschnitts der visuellen Daten in einigen Ausführungsformen müssen weniger Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten gesendet werden, damit der zweite Knoten die Datei empfangen kann. Bei diesen Ausführungsformen kann die Version mit geringerer Qualität zusammen mit einem Verweis auf das für die Rekonstruktion zu verwendende Modell immer noch eine geringere Datenübertragung ermöglichen, als wenn die ursprüngliche Version mit höherer Qualität desselben Abschnitts der visuellen Daten übertragen wird.
  • Optional erfolgen die Schritte des Übertragens des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten und des Übertragens der Verweise auf den einen oder die mehreren Algorithmen, die dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entsprechen, die an den zweiten Knoten übertragen wurden, an den zweiten Knoten im Wesentlichen gleichzeitig.
  • Durch die gleichzeitige Übertragung des Abschnitts der visuellen Daten geringerer Qualität und der Modellreferenz kann der Rekonstruktionsprozess in einigen Ausführungsformen im Wesentlichen sofort bei Ankunft der Daten eingeleitet werden, im Gegensatz zu einer Verzögerung zwischen der Ankunft des Abschnitts der visuellen Daten und der Modellreferenz oder umgekehrt. In einigen Ausführungsformen sind sowohl das Modell als auch der Abschnitt der visuellen Daten erforderlich, damit eine qualitativ hochwertigere Version des Abschnitts der visuellen Daten rekonstruiert werden kann, so dass die rekonstruierten visuellen Daten im Wesentlichen die gleiche Qualität aufweisen wie die ursprünglichen visuellen Daten höherer Qualität.
  • Online-Training
  • Gemäß einem Aspekt wird ein Verfahren zum Verbessern visueller Daten bereitgestellt, wenn visuelle Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, wobei das Verfahren am ersten Knoten die folgenden Schritte umfasst: Reduzieren der Qualität von einem oder mehreren Abschnitten visueller Daten höherer Qualität auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität; Entwickeln mindestens eines hierarchischen Algorithmus, der betreibbar ist, um die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität zu erhöhen, unter Verwendung des einen oder der mehreren Abschnitte visueller Daten höherer Qualität, um den entwickelten mindestens einen hierarchischen Algorithmus zu verbessern, wobei der entwickelte mindestens eine hierarchische Algorithmus dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entspricht; Übertragen des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten; und Übermitteln mindestens eines der entwickelten mindestens einen hierarchischen Algorithmen an den zweiten Knoten, der dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entspricht, die an den zweiten Knoten übertragen werden; wobei der zweite Knoten in der Lage ist, den einen oder die mehreren Abschnitte visueller Daten höherer Qualität aus dem übertragenen einen oder den mehreren Abschnitten visueller Daten geringerer Qualität unter Verwendung des entwickelten mindestens einen hierarchischen Algorithmus, der dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entspricht, im Wesentlichen zu reproduzieren.
  • Gemäß einem weiteren Aspekt wird ein Verfahren zur Verbesserung visueller Daten bereitgestellt, wenn visuelle Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, wobei das Verfahren an dem zweiten Knoten die folgenden Schritte umfasst: Empfangen eines oder mehrerer Abschnitte visueller Daten geringerer Qualität über ein Netzwerk; Empfangen eines entsprechenden mindestens einen hierarchischen Algorithmus, der die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität erhöhen kann, wobei der mindestens eine hierarchische Algorithmus mit dem Wissen eines oder mehrerer Abschnitte visueller Daten höherer Qualität entwickelt wird, die dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entsprechen; und Verwenden des mindestens einen hierarchischen Algorithmus, um die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität zu erhöhen, um den einen oder die mehreren Abschnitte visueller Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • Gemäß einem anderen Aspekt wird ein System zur Verringerung der Datenmenge bereitgestellt, die bei der Kommunikation visueller Daten über ein Netzwerk übertragen wird, wobei das System zwei oder mehr Knoten umfasst, wobei ein erster Knoten konfiguriert ist zum: Reduzieren der Qualität von einem oder mehreren Abschnitten visueller Daten höherer Qualität auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität; Entwickeln mindestens eines hierarchischen Algorithmus, der betreibbar ist, um die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität unter Verwendung des einen oder der mehreren Abschnitte visueller Daten höherer Qualität zu erhöhen, um den entwickelten mindestens einen hierarchischen Algorithmus zu verbessern, wobei der entwickelte mindestens eine hierarchische Algorithmus dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entspricht; Übertragen des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten; und Kommunizieren mindestens eines der entwickelten mindestens einen hierarchischen Algorithmen, der dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität, die an den zweiten Knoten übertragen wurden, entspricht, an den zweiten Knoten; wobei der zweite Knoten konfiguriert ist, um: einen oder mehrere Abschnitte visueller Daten geringerer Qualität über ein Netzwerk zu empfangen; einen entsprechenden mindestens einen hierarchischen Algorithmus zu empfangen, der betreibbar ist, um die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität zu erhöhen, wobei der mindestens eine hierarchische Algorithmus mit dem Wissen von einem oder mehreren Abschnitten visueller Daten höherer Qualität entwickelt wurde, die dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entsprechen; und den mindestens einen hierarchischen Algorithmus zu verwenden, um die Qualität des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität zu erhöhen, um den einen oder die mehreren Abschnitte visueller Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • In einigen Ausführungsformen kann durch die Entwicklung eines hierarchischen Algorithmus zur Verbesserung der Qualität eines bestimmten Satzes visueller Daten geringerer Qualität eine genauere Verbesserung dieser visuellen Daten an einem Empfangsknoten in einem Netzwerk erreicht werden. In einigen dieser Ausführungsformen kann die Kenntnis der visuellen Daten höherer Qualität, denen die visuellen Daten geringerer Qualität entsprechen, zum Training und/oder zur Entwicklung genauerer hierarchischer Algorithmen führen. In weiteren dieser Ausführungsformen kann die Kenntnis der Kompressionseinstellungen der visuellen Daten geringerer Qualität auch beim Training und/oder der Entwicklung genauerer hierarchischer Algorithmen helfen, und in solchen Ausführungsformen kann das Training hierarchischer Algorithmen auf visuellen Daten mit denselben Kompressionseinstellungen im Wesentlichen genaue hierarchische Algorithmen für diese Kompressionseinstellungen liefern. Darüber hinaus kann in einigen Ausführungsformen die Übermittlung des Algorithmus geringerer Qualität über das Netzwerk zusammen mit den zugehörigen visuellen Daten geringerer Qualität die Datenmenge reduzieren, die über das Netzwerk übertragen werden muss, verglichen mit der Übertragung der Daten höherer Qualität allein. Bei einigen Ausführungsformen gilt dies insbesondere für den Fall, dass die visuellen Daten höherer Qualität eine deutlich höhere Qualität aufweisen als die visuellen Daten geringerer Qualität.
  • Optional wird der entwickelte mindestens eine hierarchische Algorithmus aus einer Vielzahl von hierarchischen Algorithmen ausgewählt, die parallel am ersten Knoten entwickelt werden.
  • Optional wird der mindestens eine hierarchische Algorithmus parallel zur Kodierung der visuellen Daten geringerer Qualität entwickelt.
  • In einigen Ausführungsformen kann die parallele Entwicklung mehrerer hierarchischer Algorithmen während der Kodierung der visuellen Daten den Prozess der Vorbereitung der visuellen Daten und des hierarchischen Algorithmus für die Kommunikation über ein Netzwerk beschleunigen. In einigen dieser Ausführungsformen kann durch die parallele Entwicklung mehrerer hierarchischer Algorithmen eine größere Anzahl möglicher Algorithmenstrukturen untersucht und die am besten geeignete ausgewählt werden.
  • Optional erfolgen die Schritte des Übertragens des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität an den zweiten Knoten und des Übermittelns des entwickelten mindestens einen hierarchischen Algorithmus, der dem einen oder den mehreren Abschnitten visueller Daten geringerer Qualität entspricht, die an den zweiten Knoten übertragen wurden, an den zweiten Knoten im Wesentlichen gleichzeitig.
  • Durch die Übertragung der visuellen Daten und die Übermittlung des zugehörigen hierarchischen Algorithmus in einigen Ausführungsformen im Wesentlichen gleichzeitig kann der Rekonstruktionsprozess am zweiten Knoten beginnen, sobald der hierarchische Algorithmus empfangen wird. Dadurch kann in einigen dieser Ausführungsformen die Verzögerung zwischen dem Empfang von Bilddaten geringerer Qualität und der Ausgabe von Bilddaten höherer Qualität verringert werden.
  • Optional umfasst die Übermittlung an den zweiten Knoten des mindestens einen des entwickelten mindestes einen hierarchischen die Übertragung des entwickelten mindestens einen hierarchischen Algorithmus an den zweiten Knoten.
  • In einigen Ausführungsformen wird durch die Übertragung des gesamten entwickelten hierarchischen Algorithmus an den zweiten Knoten sichergestellt, dass der entwickelte hierarchische Algorithmus für die Verwendung am zweiten Knoten verfügbar ist.
  • Gemäß einem weiteren Aspekt wird ein Verfahren zur Reduzierung der zu übertragenden Datenmenge bei der Kommunikation visueller Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten bereitgestellt, wobei das Verfahren am ersten Knoten die folgenden Schritte umfasst: Reduzieren der Qualität eines Abschnitts visueller Daten höherer Qualität auf einen Abschnitt visueller Daten geringerer Qualität; Analysieren eines ersten beispielbasierten Modells für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Analysieren eines weiteren oder mehrerer beispielbasierter Modelle für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Auswählen eines oder mehrerer beispielbasierter Modelle aus einer Vielzahl beispielbasierter Modelle zur Verwendung auf der Grundlage einer spezifizierten Metrik; Übertragen des Abschnitts visueller Daten geringerer Qualität an den zweiten Knoten; und Übertragen des einen oder der mehreren ausgewählten beispielbasierten Modelle, die dem an den zweiten Knoten übertragenen Abschnitt visueller Daten geringerer Qualität entsprechen, an den zweiten Knoten; wobei der zweite Knoten in der Lage ist, den Abschnitt visueller Daten höherer Qualität aus dem übertragenen Abschnitt visueller Daten geringerer Qualität unter Verwendung des einen oder der mehreren beispielbasierten Modelle, die dem Abschnitt visueller Daten geringerer Qualität entsprechen, im Wesentlichen zu reproduzieren.
  • Gemäß einem anderen Aspekt wird ein Verfahren zum Erhöhen der Qualität eines Abschnitts visueller Daten geringerer Qualität, die über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, bereitgestellt, wobei das Verfahren an dem zweiten Knoten die folgenden Schritte umfasst: Empfangen eines Abschnitts visueller Daten geringerer Qualität über ein Netzwerk; Empfangen eines entsprechenden beispielbasierten Modells, das so betrieben werden kann, dass es die Qualität des Abschnitts visueller Daten geringerer Qualität erhöht; und Verwenden des beispielbasierten Modells, um die Qualität des Abschnitts visueller Daten geringerer Qualität zu erhöhen, um den Abschnitt visueller Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • Gemäß einem weiteren Aspekt wird ein System zur Verringerung der zu übertragenden Datenmenge bei der Kommunikation von visuellen Daten über ein Netzwerk bereitgestellt, wobei das System zwei oder mehr Knoten umfasst, wobei ein erster Knoten konfiguriert ist, zum: Reduzieren der Qualität eines Abschnitts visueller Daten höherer Qualität auf einen Abschnitt visueller Daten geringerer Qualität; Analysieren eines ersten beispielbasierten Modells für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Analysieren eines oder mehrerer beispielbasierter Modelle für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Auswählen eines oder mehrerer beispielbasierter Modelle aus einer Vielzahl von beispielbasierten Modellen zur Verwendung auf der Grundlage einer spezifizierten Metrik; Übertragen des Abschnitts visueller Daten geringerer Qualität an den zweiten Knoten; und Übertragen des einen oder der mehreren beispielbasierten Modelle, die dem an den zweiten Knoten übertragenen Abschnitt visueller Daten geringerer Qualität entsprechen, an den zweiten Knoten; wobei der zweite Knoten konfiguriert ist, um: einen Abschnitt visueller Daten geringerer Qualität über ein Netzwerk zu empfangen; ein oder mehrere entsprechende beispielbasierte Modelle zu empfangen, die dazu dienen, die Qualität des Abschnitts visueller Daten geringerer Qualität zu erhöhen; und das eine oder die mehreren beispielbasierten Modelle zu verwenden, um die Qualität des Abschnitts visueller Daten geringerer Qualität zu erhöhen, um den Abschnitt visueller Daten höherer Qualität im Wesentlichen wiederherzustellen.
  • Gemäß einem Aspekt wird ein Verfahren zur Erhöhung der Qualität eines Abschnitts geringerer Qualität visueller Daten bereitgestellt, wobei das Verfahren am ersten Knoten die folgenden Schritte umfasst: Analysieren eines ersten beispielbasierten Modells für die Verwendung zum Erhöhen der Qualität des Abschnitts visueller Daten geringerer Qualität; Analysieren eines weiteren oder mehrerer beispielbasierter Modelle für die Verwendung zum Erhöhen der Qualität des Abschnitts visueller Daten geringerer Qualität; und Auswählen eines oder mehrerer beispielbasierter Modelle aus einer Vielzahl beispielbasierter Modelle zur Verwendung auf der Grundlage einer spezifizierten Metrik; wobei die Qualität des Abschnitts visueller Daten geringerer Qualität unter Verwendung des einen oder der mehreren beispielbasierten Modelle, das/die den visuellen Daten geringerer Qualität entspricht/entsprechen, wesentlich erhöht werden kann.
  • In einigen Ausführungsformen können durch die Übertragung eines Abschnitts visueller Daten geringerer Qualität über ein Netzwerk zusammen mit einem beispielbasierten Modell zur Unterstützung der Rekonstruktion visueller Daten hoher Qualität weniger Daten über das Netzwerk übertragen werden, um die Anzeige visueller Daten höherer Qualität im Vergleich zur Übertragung visueller Daten höherer Qualität allein zu ermöglichen. In einigen dieser Ausführungsformen können durch die Auswahl eines oder mehrerer beispielbasierter Modelle aus einer Vielzahl von beispielbasierten Modellen visuelle Daten höherer Qualität aus den visuellen Daten geringerer Qualität und dem einen oder den mehreren beispielbasierten Modellen zusammen rekonstruiert werden. Da alle beispielbasierten Modelle, die in solchen Ausführungsformen verwendet werden, bereits vorhanden sind und nur ausgewählt und nicht erstellt werden müssen, kann die Verzögerung zwischen der Aufzeichnung der höherwertigen visuellen Daten und der Ausgabe der rekonstruierten höherwertigen visuellen Daten minimiert werden. Einige dieser Ausführungsformen können daher für die Live-Übertragung von visuellen Daten zu einem Ereignis verwendet werden. Da es eine Vielzahl von beispielbasierten Modellen gibt, ermöglicht in einigen Ausführungsformen die optionale Analyse einer Vielzahl von Modellen die Auswahl eines beispielbasierten Modells, das bei der Rekonstruktion eines Abschnitts visueller Daten geringerer Qualität im Vergleich zu anderen auswählbaren Modellen die hochwertigsten Ausgangsdaten bei der Rekonstruktion erzeugt. Die zu übertragenden visuellen Daten können in einigen Ausführungsformen in Form von visuellen Daten höherer Qualität aufgezeichnet werden, deren Qualität dann vor der Übertragung wie oben beschrieben reduziert wird. In alternativen Ausführungsformen können die visuellen Daten in Form von visuellen Daten geringerer Qualität aufgezeichnet werden, die vor der Übertragung keine weitere Qualitätsminderung erfordern. In einigen Ausführungsformen kann es sich bei den visuellen Daten um Video- und/oder Bilddaten handeln. In einigen Ausführungsformen kann sich die Qualität auf die Auflösung der visuellen Daten und/oder andere Attribute wie eine höhere oder niedrigere Bildrate beziehen.
  • In einigen Fällen kann eine Kombination von zwei oder mehr beispielbasierten Modellen eine optimale Ressource für die Rekonstruktion des qualitativ minderwertigen Abschnitts der visuellen Daten darstellen. In einigen dieser Ausführungsformen können die zwei oder mehr beispielbasierten Modelle so kombiniert werden, dass sie ein neues beispielbasiertes Modell bilden, das zusammen mit dem Abschnitt der visuellen Daten geringerer Qualität übertragen wird. In einigen Ausführungsformen kann der Abschnitt der visuellen Daten geringerer Qualität zusammen mit mehr als einem beispielbasierten Modell übertragen werden, wenn dies ein erforderliches Maß an Rekonstruktion in visuelle Daten höherer Qualität ermöglicht.
  • In einigen Fällen wird der live übertragene Ausschnitt der visuellen Daten von geringerer Qualität sein. Die hier offengelegten Aspekte können in einigen Fällen auch ohne eine qualitativ hochwertige Originalversion verwendet werden, um die Qualität des visuellen Datenausschnitts zu verbessern.
  • Optional werden ein oder mehrere Beispielabschnitte von visuellen Daten von dem ersten Knoten zu dem zweiten Knoten vor einer Live-Übertragung übertragen; und eine Teilmenge von beispielbasierten Modellen wird aus der Vielzahl von beispielbasierten Modellen auf der Grundlage einer spezifizierten Metrik aus dem einen oder den mehreren Beispielabschnitten von visuellen Daten ausgewählt; wobei das eine oder die mehreren beispielbasierten Modelle, die verwendet werden, um die Qualität der Live-Übertragung wesentlich zu erhöhen, aus der Teilmenge von beispielbasierten Modellen ausgewählt werden.
  • Optional werden ein oder mehrere Beispielabschnitte visueller Daten vor einer Live-Übertragung vom ersten Knoten zum zweiten Knoten übertragen; wobei ein oder mehrere beispielbasierte Modelle vor der Live-Übertragung auf der Grundlage einer bestimmten Metrik aus dem einen oder den mehreren Beispielabschnitten visueller Daten erzeugt werden können.
  • Optional werden ein oder mehrere Beispielabschnitte visueller Daten vor einer Live-Übertragung vom ersten Knoten zum zweiten Knoten übertragen; wobei ein oder mehrere beispielbasierte Modelle aus der Vielzahl beispielbasierter Modelle vor der Live-Übertragung auf der Grundlage einer spezifizierten Metrik aus dem einen oder den mehreren Beispielabschnitten visueller Daten modifiziert werden können.
  • Der Prozess der Auswahl des zu verwendenden beispielbasierten Modells kann in einigen Ausführungsformen effizienter gestaltet werden, indem ein kleinerer Pool von beispielbasierten Modellen bereitgestellt wird, aus dem die Auswahl getroffen werden kann. Der Rechenaufwand kann dadurch zumindest in einigen dieser Ausführungsformen nicht vergeudet werden, da eine Rekonstruktion unter Verwendung eines beispielbasierten Modells, bei dem es sehr unwahrscheinlich ist, dass es als das ausgewählte Modell für die relevanten visuellen Daten, z. B. ein Bild oder ein Video, verwendet wird, nicht durchgeführt wird.
  • In einigen Ausführungsformen können durch die Übertragung eines Abschnitts visueller Daten vor der Live-Übertragung beispielbasierte Modelle, die wahrscheinlich verwendet werden, zu einer Teilmenge der gesamten Vielzahl verfügbarer beispielbasierter Modelle gruppiert werden.
  • Während der Live-Übertragung können in einigen Ausführungsformen ein oder mehrere beispielbasierte Modelle aus der Teilmenge und nicht aus der gesamten verfügbaren Bibliothek von Modellen ausgewählt werden. Wenn es zumindest in einigen Ausführungsformen als notwendig erachtet wird, oder wenn in anderen Ausführungsformen vor der Live-Übertragung genügend Zeit zur Verfügung steht, kann der Abschnitt der visuellen Daten vor der Live-Übertragung übertragen werden, und dies kann die Änderung eines bestehenden beispielbasierten Modells oder die Erzeugung eines neuen beispielbasierten Modells ermöglichen, um ein Modell oder Modelle für die genauere Rekonstruktion aus einem Abschnitt der visuellen Daten von geringerer Qualität bereitzustellen.
  • Optional umfasst das beispielbasierte Modell eines der folgenden Elemente: ein generatives Modell, einen nichtlinearen hierarchischen Algorithmus, ein neuronales Faltungsnetzwerk, ein rekurrentes neuronales Netzwerk, ein Deep Belief Network, einen Wörterbuch-Lernalgorithmus, einen Parameter oder eine Mapping-Funktion.
  • Optional umfasst das beispielbasierte Modell einen spezifischen Parameter oder eine Mapping-Funktion für die Rekonstruktion von Daten.
  • In Ausführungsformen kann das auf einem Beispiel basierende Modell eines aus einer Reihe verschiedener Modelltypen sein. Dies erhöht die Flexibilität der Methode und ermöglicht eine genaue Rekonstruktion der visuellen Daten höherer Qualität in solchen Ausführungsformen.
  • Optional werden die höherwertigen visuellen Daten in kleinere Abschnitte unterteilt, die auf Ähnlichkeiten zwischen einer Vielzahl von Abschnitten der höherwertigen visuellen Daten basieren.
  • In einigen Ausführungsformen können durch die Unterteilung der visuellen Daten in kleinere Abschnitte oder „Szenen“ auf der Grundlage einer bestimmten Ähnlichkeitsmetrik effizientere Modelle erstellt werden. So können beispielsweise mehrere Abschnitte ausgewählt werden, die alle Teil einer Landschaftsaufnahme sind, und es wird nur ein Modell benötigt, um die Szene zu rekonstruieren, anstatt ein geringfügig anderes Modell für jeden einzelnen Abschnitt zu erstellen. Wenn die nächste Szene in den visuellen Daten sehr unterschiedlich ist, z. B. eine Szene mit erheblicher Bewegung, dann wird dies in einigen Ausführungsformen als solche erkannt und ein neues Modell für die Szene erstellt. In einigen Ausführungsformen können für jede Szene oder jeden Abschnitt spezifische Modelle trainiert werden, so dass der Rekonstruktionsansatz adaptiv ist und zumindest eine gewisse Optimierung der Rekonstruktion ermöglicht.
  • Optional kann ein Abschnitt der visuellen Daten eines der folgenden Elemente umfassen: ein einzelnes Bild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern.
  • Je nach den zu verarbeitenden visuellen Daten können in einigen Ausführungsformen Modelle für Abschnitte von visuellen Daten erstellt werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. Jede Option kann in einigen Fällen notwendig sein, um die effizienteste Methode zur Rekonstruktion einer qualitativ besseren Version eines Teils der ursprünglichen visuellen Daten zu finden.
  • Optional werden die visuellen Daten in eine Abfolge von Abschnitten umgewandelt, bevor die Qualität reduziert wird.
  • Durch die Aufteilung der visuellen Daten in Abschnitte, z. B. durch die Aufteilung der Videodaten in eine Reihe von Einzelbildern, wird die Datenmenge vorübergehend erhöht, da die Datenreduzierungen, die durch zuvor für die Videodatei verwendete Komprimierungsverfahren verursacht wurden, rückgängig gemacht werden. In einigen dieser Ausführungsformen ist es jedoch möglich, die einzelnen Abschnitte herunterzurechnen und so die Größe der visuellen Daten zu verringern, so dass Abschnitte mit geringerer Qualität als neu kodierte visuelle Daten im Original oder optional in einem optimaleren Codec, aber mit geringerer Qualität, übertragen werden können.
  • Optional kann die Analyse von zwei oder mehr beispielbasierten Modellen parallel erfolgen.
  • Durch die parallele Analyse mehrerer beispielbasierter Modelle in einigen Ausführungsformen kann die Zeit für die Auswahl eines geeigneten beispielbasierten Modells aus einer Bibliothek von Modellen verringert werden. Dies ist insbesondere bei Live-Übertragungen von Vorteil, bei denen die Zeit für die Verarbeitung visueller Daten vor der Übertragung minimiert werden kann.
  • In einigen Ausführungsformen kann eine Analysepipeline für mehrere aufeinander folgende Abschnitte visueller Daten parallel durchgeführt werden. In einigen dieser Ausführungsformen kann die Analyse für nachfolgende Abschnitte visueller Daten in Bezug auf Komprimierungseinstellungen und/oder zur Klassifizierung des Abschnitts oder der Abschnitte in Kategorien durchgeführt werden, um eine weitere inhaltsspezifische Analyse durchzuführen, wobei diese weitere Analyse durchgeführt werden kann, sobald die visuellen Daten dekodiert wurden, und in einigen Ausführungsformen kann diese Analyse eine Verringerung der Anzahl der Modelle ermöglichen, die für die Verwendung mit den visuellen Daten zur Verbesserung oder als Ausgangspunkte für das Training eines Modells in Betracht gezogen werden.
  • Optional kann eine Vielzahl von beispielbasierten Modellen in einer Bibliothek gespeichert werden.
  • In einigen Ausführungsformen ermöglicht eine gespeicherte Bibliothek von Beispielmodellen am ersten Knotenpunkt dem Analyseprozess eine schnelle Auswahl von beispielbasierten Modellen zum Vergleich, ohne dass diese aus dem Netz bezogen werden müssen. Dies wiederum kann in einigen dieser Ausführungsformen zu einer schnelleren Auswahl des am besten geeigneten Modells für die Übertragung über das Netz führen.
  • Optional werden die Abschnitte der visuellen Daten in der zeitlichen Reihenfolge nach dem Abschnitt der höherwertigen visuellen Daten übermittelt.
  • Durch die Übertragung der Abschnitte der visuellen Daten in chronologischer Reihenfolge kann in einigen Ausführungsformen der Zeitunterschied zwischen der Aufzeichnung eines Abschnitts der visuellen Daten und dem Empfang rekonstruierter visueller Daten höherer Qualität durch den zweiten Knotenpunkt minimiert werden. Bei Live-Übertragungen bedeutet dies, dass die Zeitspanne zwischen einem Ereignis, das sich vor einer Kamera abspielt, und einem Zuschauer, der eine rekonstruierte Version des Ereignisses sieht, verkürzt werden kann.
  • Optional werden die Abschnitte der visuellen Daten in der Reihenfolge übertragen, in der sie vom ersten Knotenpunkt übertragen wurden.
  • Optional wird die Qualität der qualitativ schlechteren Abschnitte der visuellen Daten entsprechend der Reihenfolge erhöht, in der die Abschnitte der visuellen Daten vom ersten Knoten übermittelt wurden.
  • Einige Abschnitte der visuellen Daten könnten leichter zu verarbeiten sein als andere, z. B. würde ein Videoabschnitt, der ein einzelnes schwarzes Bild enthält, weniger Rechenaufwand erfordern als eine sich schnell bewegende Szene. Daher könnten in einigen Ausführungsformen die leichter zu verarbeitenden Abschnitte der visuellen Daten vor den schwieriger zu verarbeitenden Abschnitten am zweiten Knoten ankommen. Wenn die visuellen Daten in der Reihenfolge rekonstruiert und betrachtet werden sollen, in der sie ursprünglich aufgezeichnet wurden, können in einigen dieser Ausführungsformen alle Abschnitte der visuellen Daten, die außer der Reihe am zweiten Knoten ankommen, zwischengespeichert und die Abschnitte in eine gewählte Reihenfolge gebracht werden, bevor die Qualität erhöht und die rekonstruierten visuellen Daten ausgegeben werden.
  • Optional umfasst die Analyse eines beispielbasierten Modells für die Verwendung der Rekonstruktion des Abschnitts der visuellen Daten geringerer Qualität die folgenden weiteren Schritte: Extrahieren von Merkmalen eines Abschnitts der visuellen Daten höherer Qualität; und Verwenden der extrahierten Merkmale, um ein vorbestimmtes beispielbasiertes Modell aus der Vielzahl der vorbestimmten beispielbasierten Modelle auszuwählen, um Anfangsparameter für das entwickelte beispielbasierte Modell bereitzustellen.
  • Je besser die Merkmale des beispielbasierten Modells mit denen übereinstimmen, die aus dem entsprechenden Abschnitt der visuellen Daten extrahiert wurden, desto genauer kann eine Rekonstruktion unter Verwendung dieses bestimmten beispielbasierten Modells erstellt werden, zumindest in einigen Ausführungsformen. Daher kann durch die Extraktion von Merkmalen aus einem Abschnitt der visuellen Daten höherer Qualität in einigen Ausführungsformen ein geeignetes Modell aus der Vielzahl der verfügbaren beispielbasierten Modelle genauer ausgewählt werden.
  • Optional basiert die spezifizierte Metrik, die zur Auswahl und/oder Änderung und/oder Erzeugung eines beispielbasierten Modells verwendet wird, auf der Erzeugung der hochwertigsten Ausgabedaten nach der Rekonstruktion, wobei die Qualität vorzugsweise definiert werden kann unter Verwendung einer Fehlerrate, eines Spitzensignal-Rausch-Verhältnisses oder eines strukturellen Ähnlichkeitsindexes.
  • Ein rekonstruierter Ausschnitt der visuellen Daten mit der höchsten Qualität gemäß einer der oben genannten Metriken kann für einen Betrachter wünschenswert sein, da er zumindest bei einigen Ausführungsformen die wahrheitsgetreueste Darstellung der ursprünglichen visuellen Daten höherer Qualität zeigt. In solchen Fällen wird der Sender der ursprünglichen visuellen Daten höherer Qualität wahrscheinlich auch bevorzugen, dass der Betrachter die visuellen Daten so sieht, wie sie aufbereitet wurden, ohne Verzerrung durch den Downsampling- und Übertragungsprozess.
  • Optional wird der höherwertige Abschnitt der visuellen Daten in kleinere Abschnitte unterteilt, die auf Ähnlichkeiten zwischen einer Vielzahl von Abschnitten der höherwertigen visuellen Daten basieren.
  • In einigen Fällen müssen weniger Daten über das Netz übertragen werden, indem die visuelle Datendatei in kleinere Abschnitte oder „Szenen“ unterteilt wird, die auf einer bestimmten Ähnlichkeitsmetrik basieren. So können z. B. mehrere Abschnitte ausgewählt werden, die alle Teil einer Landschaftsaufnahme sind, und es wird nur ein Modell benötigt, um die Szene auf einem akzeptablen Niveau zu rekonstruieren, anstatt ein geringfügig anderes Modell für jeden einzelnen Abschnitt. Wenn die nächste Szene in den visuellen Daten sehr unterschiedlich ist, z. B. eine Szene mit erheblicher Bewegung, dann wird sie als solche erkannt, indem die extrahierten Merkmale wie oben beschrieben verwendet werden, und ein neues Modell kann entsprechend ausgewählt werden.
  • Optional umfasst ein Abschnitt Folgendes: ein Einzelbild, eine Folge von Einzelbildern und einen Bereich innerhalb eines Bildes oder einer Folge von Einzelbildern.
  • Je nach den zu verarbeitenden visuellen Daten können in einigen Ausführungsformen Modelle für Abschnitte visueller Daten ausgewählt werden, die ein Einzelbild, eine Folge von Bildern und einen Bereich innerhalb eines Bildes oder einer Bildfolge umfassen. In diesen Ausführungsformen können alle oder einzelne Ansätze notwendig sein, um die effizienteste Methode zur Rekonstruktion einer qualitativ besseren Version eines Teils der ursprünglichen visuellen Daten zu finden.
  • Optional erfolgen die Schritte der Übertragung des Abschnitts der visuellen Daten geringerer Qualität an den zweiten Knoten und der Übertragung des beispielbasierten Modells an den zweiten Knoten, das dem an den zweiten Knoten übertragenen Abschnitt der visuellen Daten geringerer Qualität entspricht, im Wesentlichen gleichzeitig.
  • Durch die gleichzeitige Übertragung des Abschnitts der visuellen Daten geringerer Qualität und des beispielbasierten Modells kann der Rekonstruktionsprozess in einigen Ausführungsformen im Wesentlichen gleichzeitig mit dem Eintreffen der Daten eingeleitet werden, im Gegensatz zu einer Verzögerung zwischen dem Eintreffen des Abschnitts der visuellen Daten und des beispielbasierten Modells oder umgekehrt. Sowohl das beispielbasierte Modell als auch der Abschnitt der visuellen Daten sind in einigen Ausführungsformen notwendig, um eine qualitativ hochwertigere Version des Abschnitts der visuellen Daten zu rekonstruieren, so dass jede Verzögerung zwischen ihrem Eintreffen zu einer Verzögerung zwischen der Übertragung der ursprünglichen visuellen Daten von einem ersten Knotenpunkt und der Anzeige der rekonstruierten visuellen Daten an einem zweiten Knotenpunkt führt.
  • Optional wird die Qualität eines Abschnitts der visuellen Daten durch Downsampling verringert.
  • Durch die Verringerung der Qualität des Abschnitts der visuellen Daten in einigen Ausführungsformen müssen weniger Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten gesendet werden, damit ein zweiter Knoten den Abschnitt der visuellen Daten empfangen kann. In diesen Fällen kann die Version mit geringerer Qualität zusammen mit einem beispielbasierten Modell, das für die Rekonstruktion verwendet wird, immer noch die Übertragung von weniger Daten ermöglichen, als wenn der ursprüngliche Abschnitt der visuellen Daten mit höherer Qualität übertragen wird.
  • Optional wird sowohl im ersten als auch im zweiten Knoten eine Bibliothek gespeichert, und ein Verweis auf ein oder mehrere beispielbasierte Modelle aus der Bibliothek des ersten Knotens wird an den zweiten Knoten übertragen.
  • In einigen Ausführungsformen kann es von Vorteil sein, die über ein Netz übertragene Datenmenge zu minimieren. Videos mit höherer Auflösung können erhebliche Datenmengen umfassen, deren Übertragung über bestehende Netzinfrastrukturen wie das Internet langsam sein kann. In einigen Ausführungsformen kann das Problem der Videoübertragung über ein Netzwerk gelöst werden, indem stattdessen ein Videoausschnitt geringerer Qualität und ein beispielbasiertes Modell, wie oben beschrieben, übertragen werden. Um die über ein Netzwerk übertragene Datenmenge weiter zu reduzieren, kann in einigen Ausführungsformen ein visueller Datenabschnitt geringerer Qualität zusammen mit einem Verweis auf ein beispielbasiertes Modell anstelle des beispielbasierten Modells selbst übertragen werden. In einigen dieser Ausführungsformen umfasst der Verweis weniger Daten als das beispielbasierte Modell, auf das er sich bezieht. In solchen Fällen kann sowohl vom ersten als auch vom zweiten Knotenpunkt aus auf eine Bibliothek mit ähnlich referenzierten Beispielmodellen zugegriffen werden, so dass nach der Auswahl eines Modells am ersten Knotenpunkt und der Übermittlung der Referenz das richtige Modell für den zweiten Knotenpunkt ermittelt werden kann.
  • Optional führt ein ausgelagertes Computersystem ein Verfahren durch, das die folgenden Schritte umfasst: Empfangen eines Abschnitts visueller Daten geringerer Qualität; Analysieren eines ersten beispielbasierten Modells für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Analysieren eines weiteren oder mehrerer beispielbasierter Modelle für die Verwendung der Rekonstruktion des Abschnitts visueller Daten geringerer Qualität; Auswählen eines oder mehrerer beispielbasierter Modelle aus einer Vielzahl beispielbasierter Modelle zur Verwendung auf der Grundlage einer spezifizierten Metrik; Erzeugen eines Abschnitts visueller Daten höherer Qualität aus dem Abschnitt visueller Daten geringerer Qualität unter Verwendung des einen oder der mehreren beispielbasierten Modelle, die den visuellen Daten geringerer Qualität entsprechen.
  • Optional wird ein Verfahren bereitgestellt, das außerdem den folgenden Schritt umfasst: Empfangen eines Abschnitts visueller Daten höherer Qualität von einem dritten Knoten, bevor der Abschnitt visueller Daten höherer Qualität an den ersten Knoten übertragen wird.
  • Optional kann einer oder mehrere der Knoten in einem ausgelagerten Computersystem untergebracht sein.
  • In einigen Ausführungsformen ermöglichen ausgelagerte oder „Cloud Computing“ System die Durchführung von Computeraufgaben auf einem Server, der sich nicht unbedingt am Ort der Aufzeichnung oder Rekonstruktion eines Abschnitts der visuellen Daten befindet. Dies ermöglicht die Nutzung leistungsfähigerer Server je nach dem für solche Dienste verfügbaren Budget und damit eine verstärkte Parallelverarbeitung verschiedener beispielbasierter Modelle in einigen dieser Ausführungsformen. Das in solchen Ausführungsformen verwendete ausgelagerte System könnte auch eine Sicherungskopie aller Abschnitte der visuellen Daten, die die Server durchlaufen, bereitstellen und so eine Lösung für den Fall eines Datenverlusts an einem Standort bieten, der für die Aufzeichnung oder Rekonstruktion eines Abschnitts der visuellen Daten zuständig ist. Wenn das Computersystem skalierbar ist, was vorzuziehen ist, dann kann eine wachsende Menge an visuellen Datenverarbeitungsarbeiten untergebracht werden, wenn dies bei diesen Ausführungsformen erforderlich ist.
  • Subpixel-Faltungen
  • Gemäß einem Aspekt wird ein Verfahren zum Verbessern eines oder mehrerer Abschnitte visueller Daten geringerer Qualität unter Verwendung eines hierarchischen Algorithmus bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen eines oder mehrerer Abschnitte visueller Daten geringerer Qualität; Verbessern des einen oder der mehreren Abschnitte visueller Daten geringerer Qualität zu einem oder mehreren Abschnitten visueller Daten höherer Qualität unter Verwendung des hierarchischen Algorithmus, wobei mindestens der erste Schritt des hierarchischen Algorithmus in einem Bereich geringerer Qualität durchgeführt wird; und wobei der hierarchische Algorithmus sowohl in einem Bereich höherer Qualität als auch in dem Bereich geringerer Qualität arbeitet.
  • Bei einigen Ausführungsformen stellt ein Algorithmus, der zumindest die ersten Verarbeitungsschritte einer Verbesserung in einem Bereich mit geringerer Qualität durchführt, sicher, dass die visuellen Daten zumindest teilweise, wenn nicht sogar im Wesentlichen verarbeitet werden, während sie immer noch von geringerer Qualität sind, wodurch die Rechenkomplexität der Verbesserung verringert wird. Nachfolgende Verarbeitungsschritte können in den Bereich mit höherer Qualität verlagert werden, um eine weitere Verarbeitung vorzunehmen und visuelle Daten mit höherer Qualität auszugeben, wie es bei diesen Ausführungsformen der Fall ist. Optional kann in einigen dieser Ausführungsformen nur der letzte Verarbeitungsschritt oder die letzten Verarbeitungsschritte im Bereich höherer Qualität durchgeführt werden.
  • In einigen Ausführungsformen erfolgt eine Neuabtastung in den höherdimensionalen Raum der visuellen Daten von einem Bereich mit geringer Qualität zu einem Bereich mit hoher Qualität, bevor sie durch ein Netz für die Superauflösung zur Verbesserung verarbeitet werden, z. B. in einigen dieser Ausführungsformen durch bikubische Interpolation, aber diese Verbesserung fügt keine Informationen hinzu, die für die Superauflösung nützlich sind, und zwingt das Netz, nachfolgende Berechnungen in einem Bereich mit höherer Qualität durchzuführen, z. B. bei der Extraktion von Merkmalskarten und der Durchführung nichtlinearer Figuren. Diese „anfängliche Hochskalierung“ macht die Berechnung des Netzes/Algorithmus rechenintensiv und erhöht den Speicherbedarf. In einigen Ausführungsformen ist der Bereich mit geringer Qualität ein Bereich mit niedriger Auflösung, während der Bereich mit hoher Qualität ein Bereich mit hoher Auflösung ist.
  • Optional kann diese Methode als Filteransatz anstelle anderer Resampling- oder Upsampling-Filter für die Kodierung und Dekodierung von visuellen Daten verwendet werden.
  • In einigen Ausführungsformen kann die Verwendung des Verfahrens als Filter für visuelle Datencodecs eine sehr hohe Berechnungseffizienz und damit auch minimale Energiekosten bei der Durchführung einer solchen Filterung bieten. In diesen oder anderen Ausführungsformen kann das Verfahren einen Filter bereitstellen, der schnell und/oder flexibel in der Ausprägung ist und der zumindest in einigen Ausführungsformen eine im Wesentlichen genaue Filterung durchführen kann.
  • Optional kann eine Aktivierungsfunktion die Anwendung der Methode als Filteransatz begleiten.
  • Optional umfasst der erste Schritt des hierarchischen Algorithmus die Extraktion eines oder mehrerer Merkmale aus einem oder mehreren Abschnitten visueller Daten geringerer Qualität.
  • In einigen Ausführungsformen können die extrahierten Merkmale verwendet werden, um einen Wert oder eine Reihe von Werten auf der Grundlage einer Metrik aus den Eingabedaten zu erzeugen. In einigen Ausführungsformen kann die Metrik dann verwendet werden, um einen hierarchischen Algorithmus aus der Bibliothek auszuwählen, der für die Eingabedaten am besten geeignet ist, da jedem hierarchischen Algorithmus Metrikwerte auf der Grundlage der Eingabedaten zugeordnet sind, anhand derer die Modelle jeweils trainiert wurden, wobei die Auswahl auf der Ähnlichkeit zwischen den Metriken, die den Eingabedaten zugeordnet sind, und jedem der vorab trainierten Modelle basiert.
  • Optional umfasst der letzte Schritt des hierarchischen Algorithmus die Erzeugung visueller Daten höherer Qualität, die den visuellen Daten geringerer Qualität entsprechen, und zumindest der letzte Schritt des hierarchischen Algorithmus kann in der Domäne höherer Qualität durchgeführt werden.
  • In einigen Ausführungsformen wird der letzte Schritt des hierarchischen Algorithmus verwendet, um eine Verbesserung aus dem Bereich geringerer Qualität durchzuführen, nachdem Merkmalskarten extrahiert wurden und eine nichtlineare Zuordnung im Bereich geringerer Qualität durchgeführt wurde. Dadurch sind die anderen Ebenen als die letzte Ebene weniger rechenintensiv und benötigen weniger Speicherplatz, als wenn sie im hochauflösenden Bereich arbeiten würden, und die letzte Ebene kann eine komplexere Hochskalierung durchführen.
  • In einigen Ausführungsformen kann die letzte Schicht eine Subpixel-Faltungsschicht sein, die in der Lage ist, niedrig aufgelöste Merkmalskarten in eine hochauflösende Ausgabe hochzuskalieren, wodurch die Verwendung eines nicht adaptiven generischen oder handgefertigten bikubischen Filters vermieden wird und eine Vielzahl komplexerer Hochskalierungsfilter für jede Merkmalskarte möglich ist. Darüber hinaus kann in einigen dieser Ausführungsformen die Komplexität der Hochauflösungsoperation dadurch verringert werden, dass die letzte Schicht eine Hochauflösung aus dem Raum mit geringerer Auflösung vornimmt.
  • Optional haben die visuellen Daten höherer Qualität eine höhere Auflösung als die visuellen Daten geringerer Qualität, wobei die visuellen Daten geringerer Qualität eine größere Menge an Artefakten enthalten können als die visuellen Daten höherer Qualität.
  • In einigen Ausführungsformen ermöglicht die Aufteilung der visuellen Daten in eine Reihe von Abschnitten ein Downsampling der einzelnen Abschnitte und damit eine Verringerung der Größe der visuellen Daten, so dass Abschnitte mit geringerer Qualität als neu kodierte visuelle Daten im Original oder optional in einem optimaleren Codec, aber mit einer niedrigeren Auflösung übertragen werden können.
  • Optional umfasst der hierarchische Algorithmus eine Vielzahl verbundener Schichten, wobei die verbundenen Schichten sequentiell sein können.
  • Optional umfasst der mindestens eine Abschnitt visueller Daten geringerer Qualität eines der folgenden Elemente: ein Einzelbild visueller Daten geringerer Qualität, eine Folge von Einzelbildern visueller Daten geringerer Qualität und einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten geringerer Qualität. Darüber hinaus können die visuellen Daten geringerer Qualität eine Vielzahl von Einzelbildern eines Videos umfassen.
  • Je nach den zu verarbeitenden visuellen Daten können in einigen Ausführungsformen Modelle für Abschnitte visueller Daten erstellt werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. In diesen Ausführungsformen können einige oder alle dieser Optionen verwendet werden, um die effizienteste Methode zur Rekonstruktion einer qualitativ besseren Version eines Teils der ursprünglichen visuellen Daten bereitzustellen.
  • Optional kann der hierarchische Algorithmus für jeden Abschnitt der visuellen Daten unterschiedlich sein.
  • In einigen Ausführungsformen ist es wahrscheinlich, dass sich jeder zu übertragende Bilddatenabschnitt zumindest geringfügig vom vorhergehenden Abschnitt unterscheidet. Bei diesen Ausführungsformen kann es daher eine genauere Rekonstruktion ermöglichen, wenn der hierarchische Algorithmus, der zusammen mit jedem Abschnitt der visuellen Daten übertragen wird, ebenfalls unterschiedlich ist, um diese Unterschiede in den Abschnitten der visuellen Daten zu berücksichtigen. Bei solchen Ausführungsformen kann daher für jeden Abschnitt der visuellen Daten ein neues Modell erstellt werden.
  • Optional wird der hierarchische Algorithmus aus einer Bibliothek von Algorithmen ausgewählt.
  • In einigen Ausführungsformen ermöglicht die Bereitstellung von Algorithmenbibliotheken die Auswahl eines Algorithmus aus den Bibliotheken und die Vornahme von Änderungen an den gespeicherten hierarchischen Algorithmen, um die visuellen Daten zu verbessern und die Berechnungskomplexität zu verringern.
  • Optional werden die standardisierten Merkmale des mindestens einen Abschnitts der empfangenen visuellen Daten geringerer Qualität extrahiert und zur Auswahl des hierarchischen Algorithmus aus der Bibliothek der Algorithmen verwendet.
  • In einigen Ausführungsformen werden die extrahierten standardisierten Merkmale verwendet, um einen Wert oder eine Reihe von Werten auf der Grundlage einer Metrik aus den Eingabedaten zu erzeugen. In diesen Ausführungsformen kann die Metrik dann verwendet werden, um das vortrainierte Modell aus der Bibliothek auszuwählen, das für die Eingabedaten am besten geeignet ist, da jedem Modell in der Bibliothek Metrikwerte zugeordnet sind, die auf den Eingabedaten basieren, anhand derer die Modelle jeweils trainiert wurden, wobei die Auswahl auf der Ähnlichkeit zwischen den Metriken, die den Eingabedaten zugeordnet sind, und jedem der vortrainierten Modelle basiert.
  • Optional basiert der aus der Algorithmenbibliothek auszuwählende hierarchische Algorithmus auf der Erzeugung der qualitativ hochwertigsten Version der visuellen Daten geringerer Qualität, wobei die Qualität vorzugsweise definiert werden kann durch: eine Fehlerrate, eine Bitfehlerrate, ein Spitzensignal-Rausch-Verhältnis oder einen strukturellen Ähnlichkeitsindex.
  • Die vorbestimmten Metriken, die in einigen Ausführungsformen zur Bestimmung des auszuwählenden hierarchischen Algorithmus verwendet werden, können auf einer vorhergesagten Qualität der Ausgabedaten für jedes vorab trainierte Modell basieren. In einigen dieser Ausführungsformen kann die Qualität durch eines oder alle der folgenden Kriterien definiert werden: eine Fehlerrate, ein Spitzensignal-Rausch-Verhältnis oder ein struktureller Ähnlichkeitsindex.
  • Räumlich-zeitlicher Ansatz
  • Gemäß einem Aspekt wird ein Verfahren zum Verbessern mindestens eines Abschnitts visueller Daten geringerer Qualität unter Verwendung eines hierarchischen Algorithmus bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen mindestens einer Vielzahl benachbarter Abschnitte visueller Daten geringerer Qualität; Auswählen einer Vielzahl von Eingabeabschnitten aus der empfangenen Vielzahl benachbarter Abschnitte visueller Daten geringerer Qualität; Extrahieren von Merkmalen aus der Vielzahl von Eingabeabschnitten visueller Daten geringerer Qualität; und Verbessern eines Zielabschnitts auf der Grundlage der extrahierten Merkmale aus der Vielzahl von Eingabeabschnitten visueller Daten geringerer Qualität.
  • In einigen Ausführungsformen wird durch die Durchführung der Verbesserung an den extrahierten Merkmalen der Rechenaufwand für die Verbesserung reduziert, indem hierarchische Algorithmen verwendet werden, die auf den visuellen Daten geringerer Qualität trainiert wurden.
  • Optional entspricht der Zielabschnitt einem aus der Vielzahl der empfangenen benachbarten Abschnitte mit visuellen Daten geringerer Qualität. Es ist auch möglich, dass der Zielabschnitt nicht mit einem der empfangenen benachbarten Abschnitte mit visuellen Daten geringerer Qualität übereinstimmt.
  • Wenn der Zielabschnitt mit einem der empfangenen Abschnitte übereinstimmt, kann die Anreicherung in einigen Ausführungsformen im räumlichen Bereich arbeiten. Wenn der Zielabschnitt nicht mit einem der empfangenen Abschnitte übereinstimmt, kann in einigen Ausführungsformen die Anreicherung zur Vorhersage von Abschnitten verwendet werden, die zwischen den empfangenen Abschnitten liegen, oder alternativ zur Vorhersage zukünftiger Abschnitte.
  • Optional umfasst der mindestens eine Abschnitt visueller Daten geringerer Qualität eines der folgenden Elemente: ein Einzelbild visueller Daten geringerer Qualität, eine Folge von Einzelbildern visueller Daten geringerer Qualität und einen Bereich innerhalb eines Bildes oder einer Folge von Einzelbildern visueller Daten geringerer Qualität. Die visuellen Daten geringerer Qualität können ferner eine Vielzahl von Videobildern umfassen.
  • Je nach der zu verarbeitenden visuellen Datendatei können in einigen Ausführungsformen Modelle für Abschnitte visueller Daten ausgewählt werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. In diesen Ausführungsformen könnte jedes Modell notwendig sein, um die effizienteste Methode zur Rekonstruktion einer qualitativ besseren Version eines Teils der ursprünglichen visuellen Daten bereitzustellen.
  • Optional sind mindestens einer der mehreren ausgewählten Eingabeabschnitte und die Zielabschnitte Bilder mit visuellen Daten geringerer Qualität, und der mindestens eine der mehreren ausgewählten Eingabeabschnitte tritt sequenziell vor dem Zielabschnitt auf. Darüber hinaus kann es sich bei mindestens einem der mehreren ausgewählten Eingabeabschnitte und den Zielabschnitten um Bilder mit visuellen Daten geringerer Qualität handeln, und der mindestens eine der mehreren ausgewählten Eingabeabschnitte kann nach dem Zielabschnitt aufeinanderfolgen.
  • In einigen Ausführungsformen ermöglicht die Tatsache, dass einer der ausgewählten Eingabeabschnitte zeitlich nacheinander vor oder nach dem Zielabschnitt der visuellen Daten geringerer Qualität liegt, der Verbesserung, einen möglichen zukünftigen Abschnitt oder einen noch zu empfangenden Abschnitt vorherzusagen, der jedoch nicht in dem möglichen Zielabschnitt enthalten ist. In einigen dieser Ausführungsformen kann ein Abschnitt vor oder nach dem Zielabschnitt die Verbesserung auch in die Lage versetzen, einen Abschnitt vorherzusagen, der zwischen zwei Abschnitten liegt.
  • Optional umfasst der hierarchische Algorithmus eine Vielzahl von Schichten, wobei die Schichten sequenziell, rekurrent, rekursiv, verzweigend oder verschmelzend sein können.
  • Einige Ausführungsformen verfügen über eine Reihe von Schichten, die sequentiell, rekurrent, rekursiv, verzweigend oder zusammenführend sein können oder auch nicht, so dass verschiedene Verarbeitungsebenen zu verschiedenen Zeitpunkten auftreten und die Schichten parallel arbeiten können, was eine optimale Effizienz bei der Verbesserung der visuellen Daten geringerer Qualität gewährleistet.
  • Optional basiert die Extraktion der Teilmenge von Merkmalen auf einer vorgegebenen Extraktionsmetrik.
  • In einigen Ausführungsformen wird durch die Möglichkeit, eine Vielzahl von Merkmalen zu extrahieren, die durch die vorgegebene Extraktionsmetrik festgelegt sind, sichergestellt, dass die Verbesserung auf ein bestimmtes System zugeschnitten werden kann. So kann in einigen dieser Ausführungsformen der Rechenaufwand auf der Grundlage der Systemressourcen entsprechend erhöht oder verringert werden.
  • Optional handelt es sich bei den empfangenen mehreren benachbarten Abschnitten mit visuellen Daten geringerer Qualität um aufeinander folgende Abschnitte mit visuellen Daten geringerer Qualität.
  • In einigen Ausführungsformen ermöglicht die Verwendung aufeinanderfolgender Abschnitte visueller Daten geringerer Qualität eine genauere Verbesserung der visuellen Daten geringerer Qualität. Der Empfang mehrerer Abschnitte oder aufeinanderfolgender Abschnitte liefert mehr Informationen, die bei der Verbesserung von Abschnitten um die empfangenen Abschnitte mit visuellen Daten geringerer Qualität verwendet werden können.
  • Optional kann eine vorgegebene Algorithmus-Metrik verwendet werden, um den zu wählenden hierarchischen Algorithmus zu bestimmen.
  • In einigen Ausführungsformen wird durch eine Vielzahl vorgegebener Algorithmen, die auf der Grundlage einer vorgegebenen Algorithmus-Metrik ausgewählt werden können, eine optimale Effizienz bei der Verbesserung der visuellen Daten gewährleistet, indem eine Bibliothek hierarchischer Algorithmen zur Verfügung steht, die bereits zur Verbesserung der Qualität der visuellen Daten bestimmt worden sind. In diesen Ausführungsformen können diese vorbestimmten Algorithmen dann als Grundlage für weitere Verbesserungen verwendet werden.
  • Optional basiert die vorbestimmte Algorithmus-Metrik auf der Erzeugung der qualitativ hochwertigsten Version der visuellen Daten geringerer Qualität, wobei die Qualität vorzugsweise definiert werden kann durch: eine Fehlerrate, eine Bitfehlerrate, ein Spitzensignal-Rausch-Verhältnis oder einen strukturellen Ähnlichkeitsindex. Darüber hinaus können standardisierte Merkmale aus der empfangenen Vielzahl benachbarter Abschnitte visueller Daten geringerer Qualität extrahiert und zur Auswahl des hierarchischen Algorithmus aus der Bibliothek der Algorithmen verwendet werden.
  • In einigen Ausführungsformen kann ein rekonstruierter Ausschnitt der visuellen Daten mit der höchsten Qualität gemäß einer der oben genannten Metriken für den Betrachter wünschenswert sein, da er die originalgetreueste Darstellung der visuellen Daten höherer Qualität zeigt. In diesen Fällen wird der Sender der ursprünglichen visuellen Daten höherer Qualität wahrscheinlich auch bevorzugen, dass der Betrachter die visuellen Daten so sieht, wie sie aufbereitet wurden, ohne Verzerrung durch den Downsampling- und Übertragungsprozess.
  • Optional können dem Algorithmus auch andere Daten zur Verfügung gestellt werden. Bei den anderen Daten kann es sich um den optischen Fluss zwischen Bildern handeln. Wahlweise kann der optische Fluss zwischen Bildern außerhalb des Algorithmus berechnet werden oder Teil des Trainings des Algorithmus sein.
  • In einigen Ausführungsformen können auch andere Daten in das Netz eingespeist werden, z. B. der optische Fluss zwischen den Bildern oder ein Maß dafür. In diesen Ausführungsformen kann der optische Fluss separat außerhalb des neuronalen Netzes berechnet oder in das Training des neuronalen Netzes einbezogen werden. In diesen Ausführungsformen können diese Daten einfach an das Ende der Daten eines jeden Bildes angehängt werden. In einigen Ausführungsformen werden sie während der Übertragung nicht gesendet. In anderen Ausführungsformen kann eine Variante des optischen Flusses aus dem kodierten Video extrahiert werden (da sie eine Grundlage für die Interframe-Kompression bildet).
  • Verbessern von visuellen Daten
  • Gemäß einem Aspekt wird ein Verfahren zum Verbessern mindestens eines Abschnitts von visuellen Daten geringerer Qualität bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen mindestens eines Abschnitts der visuellen Daten geringerer Qualität; Auswählen eines hierarchischen Algorithmus aus einer Vielzahl von hierarchischen Algorithmen, wobei der Schritt des Auswählens auf einer vorbestimmten Metrik basiert und wobei die hierarchischen Algorithmen unter Verwendung eines gelernten Ansatzes entwickelt wurden und mindestens einer der hierarchischen Algorithmen betriebsfähig ist, die Qualität der visuellen Daten geringerer Qualität zu erhöhen; und Verwenden des ausgewählten hierarchischen Algorithmus, um die Qualität der visuellen Daten geringerer Qualität zu erhöhen, um visuelle Daten höherer Qualität zu erzeugen.
  • Einige Ausführungsformen bieten ein Verfahren zur Verbesserung mindestens eines Abschnitts visueller Daten, die über ein Netzwerk übertragen wurden. In diesen Ausführungsformen kann durch die Auswahl eines hierarchischen Algorithmus auf der Grundlage einer vorbestimmten Metrik ein geeigneter hierarchischer Algorithmus aus einer Bibliothek von Algorithmen ausgewählt werden, der in der Lage ist, die ursprünglichen visuellen Daten genauer wiederzugeben als ein allgemeiner hierarchischer Algorithmus.
  • Optional werden die visuellen Daten geringerer Qualität auf der Grundlage von Ähnlichkeiten zwischen einer Vielzahl von Abschnitten der ursprünglichen visuellen Daten in kleinere Abschnitte unterteilt.
  • In einigen Ausführungsformen können durch die Unterteilung der visuellen Daten in kleinere Abschnitte oder „Szenen“ auf der Grundlage einer bestimmten Ähnlichkeitsmetrik effizientere Modelle erstellt werden. In einigen Ausführungsformen können beispielsweise mehrere Abschnitte ausgewählt werden, die alle Teil einer Landschaftsaufnahme sind, und es wird nur ein hierarchischer Algorithmus benötigt, um Artefakte aus der Szene zu entfernen, anstatt ein geringfügig anderes Modell für jeden einzelnen Abschnitt zu erstellen. In einigen dieser Ausführungsformen wird die nächste Szene in den visuellen Daten, wenn sie sehr unterschiedlich ist, z. B. eine Szene mit erheblicher Bewegung, als solche erkannt, und ein neuer hierarchischer Algorithmus kann entsprechend erstellt werden. In einigen Ausführungsformen können spezifische hierarchische Algorithmen für jede Szene oder jeden Abschnitt trainiert werden, so dass der Ansatz zur Artefaktentfernung adaptiv ist und zumindest eine gewisse Optimierung der Artefaktentfernung ermöglicht.
  • Optional basiert die vorbestimmte Metrik auf einem Inhaltstyp und einem Maß für die Artefaktschwere der visuellen Daten geringerer Qualität. Darüber hinaus kann die Artefaktschwere auf mindestens einem Artefakt basieren, bei dem es sich um eine beliebige Kombination aus Blockierung, Unschärfe, Verpixelung, Klingeln, Aliasing, fehlenden Daten und anderen Markierungen, Unreinheiten, Defekten und Anomalien in visuellen Daten handeln kann.
  • In einigen Ausführungsformen kann das aus dem Trainings- und Optimierungsprozess resultierende Artefaktkorrekturmodell anhand der Artefaktschwere der Szene, auf die es sich bezieht, referenziert werden, indem die vorgegebene Metrik auf der Artefaktschwere der visuellen Daten geringerer Qualität basiert. In diesen Ausführungsformen ermöglicht dies eine genauere Auswahl eines geeigneten Artefaktentfernungsmodells bei der Auswahl eines Modells aus der Bibliothek, um neue visuelle Daten zu reinigen.
  • Optional kann es sich bei der Vielzahl der hierarchischen Algorithmen um vorgefertigte hierarchische Algorithmen für Beispieldaten oder um manuell erstellte hierarchische Algorithmen handeln.
  • In einigen Ausführungsformen kann ein vorab trainierter hierarchischer oder manuell erstellter hierarchischer Algorithmus die ursprünglichen visuellen Daten genauer wiedergeben als ein allgemeiner hierarchischer Algorithmus zur Entfernung von Artefakten.
  • Optional kann, wenn kein geeigneter hierarchischer Algorithmus in der Vielzahl der hierarchischen Algorithmen vorhanden ist, stattdessen ein allgemeiner hierarchischer Algorithmus ausgewählt werden.
  • In einigen Ausführungsformen kann ein generischer hierarchischer Algorithmus anstelle eines spezifischen, trainierten Modells verwendet werden, wenn die Bibliothek der Algorithmen kein Modell zur Entfernung von Artefakten aus visuellen Daten enthält, das für einen Inhaltstyp und eine Artefaktkategorie trainiert wurde, die den empfangenen visuellen Daten ähnlich sind. In diesen Fällen kann der generische hierarchische Algorithmus bei der Entfernung von Artefakten genauer sein als die verfügbaren speziell trainierten hierarchischen Algorithmen.
  • Beschleunigung von Maschinenoptimierunqsprozessen
  • Gemäß einem Aspekt wird ein Verfahren zum Trainieren gelernter hierarchischer Algorithmen bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen von Eingabedaten; Erzeugen von Metriken aus den Eingabedaten; Auswählen mindestens eines hierarchischen Algorithmus aus einer Vielzahl vorbestimmter hierarchischer Algorithmen auf der Grundlage des Vergleichs der erzeugten Metriken aus den Eingabedaten und ähnlicher Metriken für jeden aus der Vielzahl vorbestimmter hierarchischer Algorithmen; Entwickeln des ausgewählten hierarchischen Algorithmus auf der Grundlage der Eingabedaten; und Ausgeben eines entwickelten hierarchischen Algorithmus.
  • Die Bereitstellung einer Vielzahl von vortrainierten Parametersätzen oder Modellen ermöglicht in einigen Ausführungsformen eine Beschleunigung des Trainings eines maschinellen Lernprozesses. In diesen Ausführungsformen kann für Eingabedaten, die von einem trainierten maschinellen Lernprozess verarbeitet werden sollen, ein maßgeschneidertes Modell oder ein Parametersatz für diese Eingabedaten auf der Grundlage des ausgewählten, ähnlichsten vortrainierten Modells entwickelt werden. In solchen Ausführungsformen kann die Auswahl des oder der ähnlichsten vortrainierten Modelle auf der Grundlage einer oder mehrerer Metriken erfolgen, die mit den vortrainierten Modellen im Vergleich zu den Eingabedaten verbunden sind. In zumindest einigen dieser Ausführungsformen kann das ähnlichste vor-trainierte Modell als Ausgangspunkt für die Entwicklung des maßgeschneiderten Modells für die Daten verwendet werden, da ein maßgeschneidertes Modell nicht so umfangreich entwickelt werden muss, wie es bei der Entwicklung eines Modells aus ersten Prinzipien erforderlich ist. In einigen Ausführungsformen kann die Verwendung eines ähnlichen oder des ähnlichsten vortrainierten Modells auch dabei helfen, lokale Minima (für falsche Lösungen) während des Trainings zu vermeiden oder zu umgehen.
  • Optional umfasst das Verfahren ferner den Schritt des Speicherns des entwickelten hierarchischen Algorithmus mit einer Vielzahl vorgegebener hierarchischer Algorithmen zusammen mit den aus den Eingabedaten generierten Metriken.
  • In einigen Ausführungsformen wird jedes neue maßgeschneiderte Modell in einer Bibliothek von bereits trainierten Modellen gespeichert. In diesen Ausführungsformen können sich wiederholende oder identische Eingabedaten ein bereits vorhandenes maßgeschneidertes Modell ohne weitere Änderungen wiederverwenden. Je näher ein Modell an einer optimierten Version ist, desto weniger Berechnungen sind erforderlich, um ein optimaleres Modell zu erstellen. In diesen Ausführungsformen kann, je mehr Signale und Daten verarbeitet werden, eine zunehmend umfangreichere Modellsammlung in der Bibliothek geschaffen werden, so dass weniger maßgeschneiderte Modelle für neue Daten entwickelt werden müssen, was den Rechenaufwand verringert.
  • Optional kann es sich bei der Vielzahl der vorbestimmten hierarchischen Algorithmen um einen der folgenden Algorithmen handeln: vortrainierte hierarchische Algorithmen auf Beispieldaten oder manuell erstellte hierarchische Algorithmen.
  • In einigen Ausführungsformen können die vorbestimmten hierarchischen Algorithmen auf Beispieldaten beruhen oder manuell erstellt werden, um dem Benutzer die Möglichkeit zu geben, bestimmte Verhaltensweisen in jedem beliebigen trainierten Modell oder Parametersatz zu erzeugen.
  • Optional kann der Schritt der Entwicklung des ausgewählten hierarchischen Algorithmus auf der Grundlage der Eingabedaten auch die Entwicklung eines besser optimierten hierarchischen Algorithmus umfassen.
  • In einigen Ausführungsformen kann die Entwicklung der vorgegebenen hierarchischen Algorithmen den beispielbasierten Parametersatz verbessern, um einen besser optimierten Parametersatz zu erstellen.
  • Optional umfasst der hierarchische Algorithmus mindestens eines der folgenden Elemente: einen spezifischen Parameter für die Rekonstruktion von Daten oder eine Mapping-Funktion für die Rekonstruktion von Daten.
  • In einigen Ausführungsformen kann jeder hierarchische Algorithmus verwendet werden, um die Rekonstruktion von Daten zu ermöglichen. In einigen dieser Ausführungsformen kann der Rekonstruktionsprozess variieren, und daher kann das Modell verschiedene Merkmale, Koeffizienten und/oder Parameter umfassen, die eine Rekonstruktion ermöglichen würden, und jede Schicht des hierarchischen Algorithmus kann Merkmale, Koeffizienten und/oder Parameter umfassen. In einigen Ausführungsformen können die Parameter für die Rekonstruktion der visuellen Daten einen oder mehrere hierarchische Algorithmen umfassen.
  • Optional kann die Vielzahl der hierarchischen Algorithmen in einem Repository gespeichert werden.
  • Zur Vereinfachung des Zugriffs auf die Vielzahl vorgegebener beispielbasierter Modelle können die Modelle in einigen Ausführungsformen in einem Repository gespeichert werden. In diesen Ausführungsformen kann das Repository die Form einer Bibliothek haben. In einigen Ausführungsformen kann sich das Repository auf einem entfernten Gerät und/oder einem verteilten Computersystem (wie einem Cloud-Computing- und/oder Speicherdienst und/oder einem verteilten Netzwerksystem oder einem Peer-to-Peer-System) befinden.
  • Optional kann das Verfahren die folgenden weiteren Schritte umfassen: Extrahieren von Merkmalen der Eingabedaten; und Verwenden der extrahierten Merkmale, um einen vorbestimmten hierarchischen Algorithmus aus der Vielzahl der vorbestimmten hierarchischen Algorithmen auszuwählen, um Anfangsparameter für den entwickelten hierarchischen Algorithmus bereitzustellen.
  • In einigen Ausführungsformen werden die extrahierten standardisierten Merkmale verwendet, um einen Wert oder eine Reihe von Werten auf der Grundlage einer Metrik aus den Eingabedaten zu erzeugen. In diesen Ausführungsformen kann die Metrik dann verwendet werden, um das vortrainierte Modell aus der Bibliothek auszuwählen, das für die Eingabedaten am besten geeignet ist, da jedem Modell in der Bibliothek Metrikwerte zugeordnet sind, die auf den Eingabedaten basieren, anhand derer die Modelle jeweils trainiert wurden, wobei die Auswahl auf der Ähnlichkeit zwischen den Metriken, die den Eingabedaten zugeordnet sind, und jedem der vortrainierten Modelle beruht.
  • Optional können die Metriken auf der Erzeugung der hochwertigsten Ausgabedaten beruhen, wobei die Qualität vorzugsweise durch eine Fehlerrate, ein Spitzensignal-Rausch-Verhältnis, eine Abstandsmetrik, ein Ähnlichkeitsmaß oder einen strukturellen Ähnlichkeitsindex definiert werden kann.
  • In einigen Ausführungsformen basieren die vorbestimmten Metriken, die zur Bestimmung des auszuwählenden hierarchischen Algorithmus verwendet werden, auf einer vorhergesagten Qualität der Ausgabedaten für jedes vortrainierte Modell. In einigen dieser Ausführungsformen kann die Qualität durch eines oder alle der folgenden Kriterien definiert werden: eine Fehlerrate, ein Spitzensignal-Rausch-Verhältnis oder ein struktureller Ähnlichkeitsindex.
  • Optional wird der hierarchische Algorithmus auf der Grundlage der Bereitstellung optimaler Initialisierungsdaten ausgewählt, wenn er verwendet wird.
  • Durch die Bereitstellung von Initialisierungsdaten, die zumindest in einigen Ausführungsformen optimal sind und damit dem zu analysierenden visuellen Datenausschnitt so nahe wie möglich kommen, sind weniger Iterationen erforderlich, um das Modell so anzupassen, dass es eine Rekonstruktion höchster Qualität gemäß einer der oben genannten Metriken ermöglicht. In diesen Ausführungsformen wird daher der Rechenaufwand und die Zeit für die Verarbeitung des visuellen Datenausschnitts reduziert.
  • Verbesserung von Modellbibliotheken
  • Gemäß einem Aspekt wird ein Verfahren zur Verbesserung visueller Daten bereitgestellt, wenn visuelle Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, wobei das Verfahren an dem ersten Knoten die folgenden Schritte umfasst: Entwickeln mindestens eines modifizierten hierarchischen Algorithmus aus einem bekannten hierarchischen Algorithmus, der so betrieben werden kann, dass er mindestens einen Abschnitt visueller Daten höherer Qualität im Wesentlichen wiederherstellt; Übertragen von Verweisen auf einen oder mehrere bekannte hierarchische Algorithmen, aus denen die modifizierten hierarchischen Algorithmen entwickelt wurden, an den zweiten Knoten; und Übertragen einer oder mehrerer Modifikationen an dem einen oder den mehreren bekannten hierarchischen Algorithmen an den zweiten Knoten, die so betrieben werden können, dass sie den einen oder die mehreren modifizierten hierarchischen Algorithmen aus den bekannten hierarchischen Algorithmen reproduzieren; wobei der zweite Knoten in der Lage ist, die visuellen Daten höherer Qualität unter Verwendung des modifizierten hierarchischen Algorithmus im Wesentlichen wiederherzustellen.
  • Gemäß einem anderen Aspekt wird ein Verfahren zum Verbessern visueller Daten bereitgestellt, wenn visuelle Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten übertragen werden, wobei das Verfahren an dem zweiten Knoten die folgenden Schritte umfasst: Empfangen eines Verweises auf einen bekannten Algorithmus, der einem Abschnitt visueller Daten höherer Qualität entspricht; Empfangen entsprechender Modifikationen des bekannten hierarchischen Algorithmus, die einen modifizierten hierarchischen Algorithmus erzeugen können, wobei der modifizierte hierarchische Algorithmus mit dem Wissen des Abschnitts visueller Daten höherer Qualität entwickelt wurde; und Verwenden des modifizierten Algorithmus, um den Abschnitt visueller Daten höherer Qualität im Wesentlichen neu zu erstellen.
  • In einigen Ausführungsformen kann die Kenntnis des Abschnitts mit visuellen Daten höherer Qualität die Kenntnis der Kodierereinstellungen und/oder der Inhaltskategorie für mindestens eine der visuellen Daten geringer Qualität, der ursprünglichen visuellen Daten und der visuellen Daten höherer Qualität umfassen. In einigen dieser Ausführungsformen kann die Inhaltskategorie auf einem vorgegebenen Satz von Kategorien oder einem bestimmten Satz von Kategorien basieren.
  • Gemäß einem weiteren Aspekt wird ein System zur Verbesserung visueller Daten bereitgestellt, wenn visuelle Daten über ein Netzwerk kommuniziert werden, wobei das System zwei oder mehr Knoten umfasst, wobei ein erster Knoten konfiguriert ist, um: mindestens einen modifizierten hierarchischen Algorithmus aus einem bekannten hierarchischen Algorithmus zu entwickeln, der betreibbar ist, um mindestens einen Abschnitt visueller Daten höherer Qualität im Wesentlichen wiederherzustellen; an den zweiten Knoten Verweise auf einen oder mehrere bekannte hierarchische Algorithmen zu übertragen, aus denen die modifizierten hierarchischen Algorithmen entwickelt wurden; und an den zweiten Knoten eine oder mehrere Modifikationen an dem einen oder den mehreren bekannten hierarchischen Algorithmen zu übertragen, die betreibbar sind, um den einen oder die mehreren modifizierten hierarchischen Algorithmen aus den bekannten hierarchischen Algorithmen zu reproduzieren; wobei ein zweiter Knoten konfiguriert ist, um: einen Verweis auf einen bekannten Algorithmus zu empfangen, der einem Abschnitt visueller Daten höherer Qualität entspricht; entsprechende Modifikationen an dem bekannten hierarchischen Algorithmus zu empfangen, die dazu dienen, einen modifizierten hierarchischen Algorithmus zu erzeugen, wobei der modifizierte hierarchische Algorithmus mit dem Wissen über den Abschnitt visueller Daten höherer Qualität entwickelt wurde; und den modifizierten Algorithmus zu verwenden, um den Abschnitt visueller Daten höherer Qualität im Wesentlichen neu zu erstellen.
  • In einigen Ausführungsformen können durch die Übertragung eines Verweises auf einen bekannten Algorithmus und Änderungen an diesem Algorithmus, die es ermöglichen, einen modifizierten Algorithmus zu erstellen, der die Rekonstruktion eines qualitativ hochwertigen Abschnitts oder einer Reihe von Abschnitten visueller Daten ermöglicht, weniger Daten über ein Netzwerk übertragen werden, um die Betrachtung qualitativ hochwertiger visueller Daten im Vergleich zur Übertragung der qualitativ hochwertigen visuellen Daten zu ermöglichen. In einigen dieser Ausführungsformen können die Algorithmen, die auch als Modelle, Darstellungen oder Funktionen bezeichnet werden, auch genauer sein und daher eine genauere Rekonstruktion ermöglichen, d. h. qualitativ hochwertigere visuelle Daten erzeugen, wobei die Qualität beispielsweise anhand einer niedrigen Fehlerquote im Vergleich zu den ursprünglichen hochwertigen visuellen Daten gemessen werden kann.
  • Optional wird ein bekannter hierarchischer Algorithmus aus einer Bibliothek von hierarchischen Algorithmen ausgewählt, die im ersten Knoten gespeichert sind.
  • Optional entspricht die vom zweiten Knoten empfangene Referenz einem bekannten hierarchischen Algorithmus, der in einer im Wesentlichen übereinstimmenden Bibliothek im zweiten Knoten gespeichert ist.
  • Optional sendet der zweite Knoten, wenn der zweite Knoten den bekannten hierarchischen Algorithmus nicht identifizieren kann, eine Anfrage an den ersten Knoten zur Übertragung des bekannten hierarchischen Algorithmus vom ersten Knoten zum zweiten Knoten.
  • In einigen Ausführungsformen werden gemeinsame oder synchronisierte Bibliotheken von Algorithmen sowohl am ersten als auch am zweiten Knoten bereitgestellt und bei der Übertragung der entsprechenden visuellen Daten geringerer Qualität eine Referenz oder eine Referenzkennung übertragen, um die Auswahl passender Algorithmen aus beiden Bibliotheken unter Verwendung der Referenzkennung zur Identifizierung des ausgewählten Algorithmus zu ermöglichen, so dass nur die Referenzkennung, die visuellen Daten geringerer Qualität und die Änderungen an den gespeicherten hierarchischen Algorithmen zwischen den Knoten übertragen werden müssen.
  • Optional wird der modifizierte hierarchische Algorithmus nach seiner Entwicklung in einer Bibliothek am ersten Knotenpunkt gespeichert.
  • In einigen Ausführungsformen kann der neu entwickelte Algorithmus durch Speicherung am ersten Knotenpunkt als Ausgangspunkt für die Entwicklung weiterer modifizierter Algorithmen für ähnliche hochwertige visuelle Daten verwendet werden, wodurch die Effizienz des Verfahrens in künftigen Situationen erhöht wird.
  • Optional wird der geänderte hierarchische Algorithmus in einer Bibliothek am zweiten Knoten gespeichert, nachdem die eine oder die Änderungen des bekannten hierarchischen Algorithmus vom ersten Knoten zum zweiten Knoten übertragen wurden.
  • In einigen Ausführungsformen ermöglicht die Speicherung des geänderten Algorithmus im zweiten Knoten, nachdem er aus dem bekannten Algorithmus und den übertragenen Änderungen neu erstellt wurde, dass in Zukunft darauf verwiesen werden kann, wenn der geänderte Algorithmus als Ausgangspunkt für die Entwicklung eines neuen Algorithmus im ersten Knoten verwendet wird. In solchen Ausführungsformen kann dies eine Duplizierung verhindern.
  • In einigen Ausführungsformen kann der erste Knoten bekannte Algorithmen an den zweiten Knoten übertragen, bevor er die für die Erstellung des geänderten Algorithmus erforderlichen Änderungen sendet, um sicherzustellen, dass der erforderliche bekannte Algorithmus beim zweiten Knoten vorhanden ist. In solchen Ausführungsformen können dadurch Fehler reduziert werden.
  • Optional werden eine oder mehrere Darstellungen des einen oder der mehreren Abschnitte der visuellen Daten höherer Qualität an den zweiten Knoten übertragen, auf die der eine oder die mehreren modifizierten hierarchischen Algorithmen angewendet werden, um den einen oder die mehreren Abschnitte der visuellen Daten höherer Qualität im Wesentlichen zu reproduzieren.
  • In einigen Ausführungsformen kann durch die Übertragung von Darstellungen der visuellen Daten höherer Qualität an den zweiten Knoten die Rekonstruktion der visuellen Daten höherer Qualität durch Anwendung des modifizierten Rekonstruktionsmodells auf die Darstellung unterstützt werden, wobei jedoch immer noch weniger Daten über das Netz übertragen werden, als wenn die visuellen Daten höherer Qualität übertragen worden wären.
  • Optional werden ein oder mehrere Abschnitte visueller Daten geringerer Qualität, die dem einen oder den mehreren Abschnitten visueller Daten höherer Qualität entsprechen, an den zweiten Knoten übermittelt, auf die der eine oder die mehreren modifizierten hierarchischen Algorithmen angewendet werden, um den einen oder die mehreren Abschnitte visueller Daten höherer Qualität im Wesentlichen zu reproduzieren.
  • Optional wird die Qualität eines oder mehrerer Abschnitte visueller Daten höherer Qualität durch Downsampling auf einen oder mehrere Abschnitte visueller Daten geringerer Qualität reduziert.
  • Optional werden der eine oder die mehreren Abschnitte mit visuellen Daten geringerer Qualität aus dem einen oder den mehreren Abschnitten mit visuellen Daten höherer Qualität durch ein Komprimierungs- und/oder Quantifizierungsverfahren erzeugt.
  • In einigen Ausführungsformen müssen durch die Verringerung der Qualität des Abschnitts der visuellen Daten weniger Daten über ein Netzwerk von einem ersten Knoten zu einem zweiten Knoten gesendet werden, damit der zweite Knoten die Datei empfangen kann. Bei diesen Ausführungsformen kann die Version mit geringerer Qualität zusammen mit einem für die Rekonstruktion zu verwendenden Modell immer noch eine geringere Datenübertragung ermöglichen als bei der Übertragung der ursprünglichen Version desselben Abschnitts visueller Daten mit höherer Qualität (wobei die Qualität durch die Auflösung und/oder den Grad der Komprimierung bestimmt werden kann).
  • Strided Convolutions
  • Gemäß einem Aspekt wird ein Verfahren zum Verbessern mindestens eines Abschnitts visueller Daten geringerer Qualität unter Verwendung eines hierarchischen Algorithmus bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen mindestens eines Abschnitts visueller Daten geringerer Qualität; Extrahieren einer Teilmenge von Merkmalen aus dem mindestens einen Abschnitt visueller Daten geringerer Qualität; Bilden einer Vielzahl von Schichten visueller Daten reduzierter Dimension aus den extrahierten Merkmalen; und Verbessern der Vielzahl von Schichten visueller Daten reduzierter Dimension, um mindestens einen Abschnitt visueller Daten höherer Qualität zu bilden, wobei der mindestens eine Abschnitt visueller Daten höherer Qualität dem mindestens einen Abschnitt empfangener visueller Daten geringerer Qualität entspricht.
  • In einigen Ausführungsformen ermöglicht die Extraktion einer Teilmenge von Merkmalen aus einem Abschnitt von visuellen Daten geringerer Qualität eine Leistungssteigerung, indem die Verbesserung nur an der Teilmenge von Merkmalen und nicht an der Gesamtheit der visuellen Daten geringerer Qualität durchgeführt wird, wodurch der Rechenaufwand verringert und dennoch akzeptable Verbesserungen erzielt werden.
  • Optional ist die extrahierte Teilmenge von Merkmalen von einem oder mehreren vorgegebenen Faktoren abhängig.
  • In einigen Ausführungsformen ermöglicht die Verwendung eines vorbestimmten Faktors zur Extraktion der Teilmenge von Merkmalen, dass das Verfahren auf eine Vielzahl von Systemen mit unterschiedlichen Fähigkeiten zugeschnitten werden kann, und erlaubt eine individuelle Anpassung der zu extrahierenden Datenmenge, was eine genauere Auswahl eines Rekonstruktionsmodells zur Verbesserung der visuellen Daten geringerer Qualität in einem angemessenen Zeitrahmen ermöglicht.
  • Optional ist die Anzahl der Schichten abhängig von einem oder mehreren vorgegebenen Faktoren.
  • In einigen Ausführungsformen stellt die Anzahl der Schichten, die auf einem oder mehreren vorgegebenen Faktoren basiert, sicher, dass die rekonstruierten visuellen Daten höherer Qualität den empfangenen visuellen Daten geringerer Qualität entsprechen.
  • Optional umfassen die visuellen Daten geringerer Qualität eine Vielzahl von Abschnitten von Videodaten.
  • In einigen Ausführungsformen kann in dem Verfahren auch Video verwendet werden, so dass die Techniken auf Videodaten mit niedrigerer Auflösung angewendet und auf entsprechende Videodaten mit höherer Auflösung hochskaliert werden können.
  • Optional umfasst der mindestens eine Abschnitt visueller Daten geringerer Qualität eines der folgenden Elemente: ein Einzelbild von Videodaten geringerer Qualität, eine Folge von Bildern von Videodaten geringerer Qualität und einen Bereich innerhalb eines Bildes oder einer Folge von Bildern von Videodaten geringerer Qualität.
  • In einigen Ausführungsformen können je nach den zu verarbeitenden visuellen Daten Modelle für Abschnitte von Videodaten verwendet werden, die ein Einzelbild, eine Folge von Bildern oder einen Bereich innerhalb eines Bildes oder einer Folge von Bildern umfassen. In einigen dieser Ausführungsformen könnte jede Option notwendig sein, um die effizienteste Methode zur Rekonstruktion einer höher aufgelösten Version eines Teils der empfangenen Videodatei bereitzustellen. In einigen Ausführungsformen können Regionen Bereiche innerhalb eines Abschnitts oder eine Segmentierung zwischen Hintergrund und Vordergrund innerhalb eines Abschnitts oder eine andere inhaltsbasierte Segmentierung, wie z. B. eine Segmentierung auf der Grundlage der Auffälligkeit (d. h. wo in jedem Abschnitt der visuellen Daten ein Betrachter am ehesten hinschauen wird), umfassen.
  • Optional kann der hierarchische Algorithmus für jeden Abschnitt der visuellen Daten unterschiedlich sein.
  • In einigen Ausführungsformen ermöglicht die Verwendung verschiedener hierarchischer Algorithmen für jeden Abschnitt der visuellen Daten die Verwendung des effizientesten hierarchischen Algorithmus für einen bestimmten Abschnitt im Gegensatz zur Verwendung eines einzigen hierarchischen Algorithmus für die gesamten visuellen Daten.
  • Optional wird der hierarchische Algorithmus aus einer Bibliothek von Algorithmen ausgewählt.
  • In einigen Ausführungsformen ermöglicht eine Bibliothek mit einer Vielzahl von Algorithmen eine effiziente Auswahl eines hierarchischen Algorithmus aus der Vielzahl von Algorithmen ohne Verzögerungen aufgrund von Kommunikationsverbindungen.
  • Optional werden standardisierte Merkmale des mindestens einen Abschnitts der empfangenen visuellen Daten geringerer Qualität extrahiert und zur Auswahl des hierarchischen Algorithmus aus der Bibliothek der Algorithmen verwendet.
  • Optional basiert der aus der Algorithmenbibliothek auszuwählende hierarchische Algorithmus auf der Erzeugung der qualitativ hochwertigsten Version der visuellen Daten geringerer Qualität, wobei die Qualität vorzugsweise definiert werden kann durch: eine Fehlerrate, eine Bitfehlerrate, ein Spitzensignal-Rausch-Verhältnis oder einen strukturellen Ähnlichkeitsindex.
  • In bestimmten Ausführungsformen steht eine Vielzahl von Optionen zur Verfügung, um auszuwählen, welcher Algorithmus in der Algorithmenbibliothek die besten verbesserten und erweiterten visuellen Daten aus den empfangenen visuellen Daten ausgibt.
  • Allgemeine Aspekte
  • Es ist zu beachten, dass in einigen Aspekten und/oder Ausführungsformen die Begriffe Modell und/oder Algorithmus und/oder Darstellung und/oder Parameter und/oder Funktionen austauschbar verwendet werden können.
  • Es sollte auch beachtet werden, dass visuelle Daten in einigen Ausführungsformen Bild- und/oder Videodaten umfassen können.
  • Optional wird der modifizierte hierarchische Algorithmus mit Hilfe eines erlernten Ansatzes trainiert.
  • In einigen Ausführungsformen können hierarchische oder nicht-hierarchische Algorithmen wesentlich genauer sein und daher eine genauere Rekonstruktion ermöglichen, d. h. aus den übertragenen visuellen Daten geringer Qualität qualitativ hochwertigere visuelle Daten erzeugen, wobei die Qualität beispielsweise anhand der Auflösung oder einer niedrigen Reproduktionsfehlerrate im Vergleich zu den ursprünglichen visuellen Daten hoher Qualität gemessen werden kann. In einigen Ausführungsformen kann die Verwendung eines erlernten Ansatzes das hierarchische Modell oder die hierarchischen Modelle für jeden Teil der visuellen Daten geringer Qualität wesentlich anpassen.
  • Optional umfasst der erlernte Ansatz Techniken des maschinellen Lernens. Der modifizierte hierarchische Algorithmus kann auch ein nichtlinearer hierarchischer Algorithmus sein, der ein oder mehrere neuronale Faltungsnetzwerke umfassen kann.
  • In einigen Ausführungsformen können nichtlineare Modelle bei der Rekonstruktion von Abschnitten visueller Daten mit höherer Qualität wesentlich genauer sein als wörterbuchbasierte Ansätze. In diesen Ausführungsformen kann das Modell bzw. können die Modelle durch die Verwendung eines lernbasierten Ansatzes, d. h. eines Ansatzes, der sich nicht auf vordefinierte visuelle Datenmerkmale und Operatoren stützt, für jeden Abschnitt oder jede Abfolge von Abschnitten optimiert werden.
  • In einigen Ausführungsformen kann das Training von neuronalen Faltungsnetzwerken rechnerisch komplexer sein als das Lernen von Wörterbüchern, um eine ähnliche Genauigkeit zu erreichen, aber das resultierende Modell oder der Algorithmus kann auch flexibler bei der Darstellung visueller Daten sein und weniger Koeffizienten für die Rekonstruktion verwenden. In diesen Fällen kann das resultierende Modell eines neuronalen Faltungsnetzwerks, das zusammen mit den visuellen Daten geringerer Qualität übertragen wird, sowohl kleiner sein als auch eine höhere Genauigkeit bei der Rekonstruktion der visuellen Daten höherer Qualität aufweisen.
  • Einige Aspekte können eine verbesserte Technik zur Erzeugung von Rekonstruktionsparametern bereitstellen, die bei der Konvertierung eines ursprünglichen Videos hoher Qualität in ein downsampled Video geringer Qualität verwendet werden können, um die Wiederherstellung einer Version des Videos höherer Qualität aus einem downsampled Video geringer Qualität ohne signifikanten Qualitätsverlust zu ermöglichen, z. B. mit einem niedrigen Rekonstruktionsfehler im Vergleich zum ursprünglichen Video hoher Qualität und mit einer Reduzierung der über ein Netzwerk übertragenen visuellen Daten. Unter diesen Gesichtspunkten kann die Anwendung einer solchen Technik die bei der Übertragung visueller Daten übertragenen Daten im Vergleich zu bestehenden Techniken reduzieren und gleichzeitig eine Reproduktion der visuellen Daten in ihrer ursprünglichen Qualität ohne signifikante Qualitätsverluste im Vergleich zu den ursprünglichen visuellen Daten ermöglichen (wobei die Qualität durch objektive Metriken wie Fehlerrate, PSNR und SSIM sowie subjektive Maße definiert werden kann). Unter diesen Gesichtspunkten kann die vorgeschlagene Technik minimale Änderungen an der Gesamtinfrastruktur von Videodienstanbietern ermöglichen, da sie die meisten bestehenden Videokompressionsverfahren ergänzen und Vorteile bei der Videokodierung und bei Videostreaming-Anwendungen bieten kann.
  • Optional sind die visuellen Daten höherer Qualität von höherer Qualität als die visuellen Daten geringerer Qualität.
  • Optional enthalten die visuellen Daten geringerer Qualität einen höheren Anteil an Artefakten als die visuellen Daten höherer Qualität.
  • Optional führt der hierarchische Algorithmus eine visuelle Datenverbesserung durch, vorzugsweise unter Verwendung von Super-Qualitäts-Techniken.
  • Optional verwendet der hierarchische Algorithmus einen räumlich-zeitlichen Ansatz.
  • In einigen Ausführungsformen kann das auf einem Beispiel basierende Modell, das optional für einen Abschnitt visueller Daten verwendet werden kann, ein neuronales Netz sein und kann eine räumlich-zeitliche Faltung verwenden. In einigen Ausführungsformen ermöglicht die Aufteilung der visuellen Daten in eine Reihe von Abschnitten, dass die einzelnen Abschnitte abwärts abgetastet werden, wodurch die Größe der visuellen Daten verringert wird, wodurch Abschnitte mit geringerer Qualität als neu kodierte visuelle Daten im Original oder optional in einem optimaleren Codec, aber mit geringerer Qualität, übertragen werden können. In einigen Ausführungsformen kann ein räumlich-zeitliches Netzwerk eine Leistungsverbesserung ermöglichen, indem es die zeitlichen Informationen in den visuellen Daten ausnutzt. Beispielsweise können innerhalb einer ähnlichen Szene in aufeinanderfolgenden Abschnitten visueller Daten stationäre Hintergrundabschnitte in den aufeinanderfolgenden Abschnitten vorhanden sein, die Informationen liefern, die für die qualitativ hochwertigere Version dieser Szene relevant sind, so dass zeitlich aufeinanderfolgende Abschnitte zur Superauflösung eines Abschnitts verwendet werden können.
  • Aspekte und/oder Ausführungsformen umfassen ein Computerprogrammprodukt, das Softwarecode zur Durchführung des Verfahrens und/oder der Vorrichtung anderer hierin beschriebener Aspekte und/oder Ausführungsformen umfasst.
  • Verweise auf visuelle Daten können in einigen Aspekten und/oder Ausführungsformen auch Verweise auf Videodaten und/oder Bilddaten sein und umgekehrt. Verweise auf niedrige Qualität und/oder niedrigere Qualität können in einigen Aspekten und/oder Ausführungsformen Verweise auf niedrige Auflösung und/oder niedrigere Auflösung sein und umgekehrt. Verweise auf hohe Qualität und/oder höhere Qualität und/oder höchste Qualität und/oder Originalqualität können in einigen Aspekten und/oder Ausführungsformen Verweise auf hohe Auflösung und/oder höhere Auflösung und/oder höchste Auflösung und/oder Originalauflösung sein und umgekehrt. Verweise auf Abschnitte können in einigen Aspekten und/oder Ausführungsformen auch Verweise auf Bilder und/oder Teile von Bildern sein und umgekehrt. Verweise auf „verbessern“ oder „Verbesserung“ können in einigen Aspekten und/oder Ausführungsformen Verweise auf „hochskalieren“ und/oder „hochskalieren“ sein und umgekehrt.
  • Figurenliste
  • Ausführungsformen der vorliegenden Erfindung werden jetzt nur beispielhaft und unter Bezugnahme auf die beigefügten Zeichnungen mit ähnlichen Bezugsziffern beschrieben, in denen:
    • 1 ein überkomplettes Wörterbuch mit 16 × 16 Atomen zeigt;
    • 2a die Schichten eines neuronalen Faltungsnetzwerkes ohne Sparsamkeitsbeschränkungen zeigt;
    • 2b die Schichten eines neuronalen Faltungsnetzwerkes mit Sparsity-Beschränkungen veranschaulicht;
    • 3 den Kodierungsprozess veranschaulicht, mit dem aus hochauflösenden visuellen Daten eine Kombination aus niedrig auflösenden visuellen Daten und einem neuronalen Faltungsnetzwerk, das die Auflösung der niedrig auflösenden Daten erhöhen kann, für die Übertragung erzeugt wird;
    • 4 den Dekodierungsprozess unter Verwendung der niedrig aufgelösten visuellen Daten und des neuronalen Faltungsnetzwerks veranschaulicht, um eine Version der hoch aufgelösten visuellen Daten zu erstellen;
    • 5 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte zur Codierung visueller Daten für die Übertragung unter Verwendung des Verfahrens von 3 ist;
    • 6 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte zur Dekodierung der visuellen Daten und der Daten des neuronalen Faltungsnetzwerks ist, die mit dem in 5 dargestellten Verfahren erzeugt wurden;
    • 7 ein Diagramm eines effizienten Subpixel-Faltungsnetzwerks gemäß einer Ausführungsform ist, das zwei mit neuronalen Faltungsnetzwerken aufgebaute Merkmalskarten-Extraktionsschichten und eine Subpixel-Faltungsschicht aufweist, die die Merkmalskarten aus dem niedrig auflösenden Raum zusammenfasst und das hochauflösende Bild in einem einzigen Schritt aufbaut;
    • 8 ein Diagramm der Netzwerkarchitektur gemäß einer Ausführungsform für die Superauflösung unter Verwendung von drei Eingangsbildern ist, wobei nur die Eingangsschicht modifiziert ist, um gemeinsam drei Eingangsbildern für die Superauflösungsvorhersage nur des mittleren Bildes zu verarbeiten, während die versteckten Schichten mit denen in 7 identisch sind;
    • 9 ein Flussdiagramm ist, das die Verfahrensschritte für einen maschinellen Lernprozess veranschaulicht;
    • 10 den Kodierungsprozess veranschaulicht, mit dem aus hochauflösenden visuellen Daten und bekannten neuronalen Faltungsnetzwerken niedrigauflösende visuelle Daten und Änderungen am bekannten neuronalen Faltungsnetzwerk für die Übertragung erzeugt werden;
    • 11 den Dekodierungsprozess unter Verwendung der visuellen Daten mit niedriger Auflösung und eines Verweises auf ein bekanntes neuronales Faltungsnetzwerk sowie Änderungen an diesem Netzwerk veranschaulicht, um eine Version der visuellen Daten mit hoher Auflösung zu erstellen;
    • 12 einen weiteren Kodierungsprozess veranschaulicht, um aus hochauflösenden visuellen Daten und bekannten neuronalen Faltungsnetzwerken ein modifiziertes neuronales Faltungsnetzwerk für die Übertragung zu erzeugen; und
    • 13 einen weiteren Dekodierungsprozess veranschaulicht, bei dem ein Verweis auf ein bekanntes neuronales Faltungsnetzwerk zusammen mit Modifikationen an diesem Netzwerk verwendet wird, um eine Version der hochauflösenden visuellen Daten zu erstellen;
    • 14 ein Flussdiagramm ist, das die Verfahrensschritte für einen herkömmlichen Bildverbesserungsprozess von visuellen Originaldaten mit niedrigerer Auflösung zu visuellen Daten mit höherer Auflösung veranschaulicht;
    • 15 ein Flussdiagramm ist, das die Verfahrensschritte für einen Bildverbesserungsprozess gemäß einer Ausführungsform veranschaulicht, bei dem visuelle Daten von visuellen Originaldaten mit geringerer Auflösung auf visuelle Daten mit höherer Auflösung hochskaliert werden, wobei eine Kombination aus den empfangenen visuellen Daten und einem aus einer Bibliothek ausgewählten neuronalen Faltungsnetzwerk verwendet wird, wobei das neuronale Faltungsnetzwerk in der Lage ist, Superauflösungstechniken zu verwenden, um die Auflösung der empfangenen visuellen Daten zu erhöhen;
    • 16 ein Flussdiagramm ist, das die Verfahrensschritte für einen Bildverbesserungsprozess veranschaulicht, um: abwärts abgetastete visuelle Daten für die Übertragung von visuellen Originaldaten mit höherer Auflösung zu erzeugen; die Übertragung der abwärts abgetasteten visuellen Daten; und einen Bildverbesserungsprozess, um von den abwärts abgetasteten visuellen Daten zu visuellen Daten mit höherer Auflösung hochzuskalieren, unter Verwendung einer Kombination der empfangenen abwärts abgetasteten visuellen Daten und eines aus einer Bibliothek ausgewählten neuronalen Faltungsnetzwerks, wobei das neuronale Faltungsnetzwerk in der Lage ist, Superauflösungstechniken zu verwenden, um die Auflösung der empfangenen abwärts abgetasteten visuellen Daten zu erhöhen;
    • 17 ein Flussdiagramm ist, das die Verfahrensschritte für einen Bildverbesserungsprozess gemäß der Ausführungsform in 16 veranschaulicht, mit zusätzlichen Schritten zum Codieren visueller Daten an einem anderen Knoten vor dem Übertragen der codierten visuellen Daten an den Knoten, der das Verfahren von 16 durchführt;
    • 18 ein Flussdiagramm ist, das das Verfahren von 15 veranschaulicht, mit den zusätzlichen Schritten der Extraktion einer Darstellung mit reduzierter Dimension und der Verkettung der visuellen Daten, um eine Darstellung mit reduzierter Dimension des getrennten Bildes zu erstellen;
    • 19 ein Flussdiagramm ist, das das Verfahren von 16 veranschaulicht, mit den zusätzlichen Schritten der Extraktion einer Darstellung mit reduzierter Dimension und der Verkettung der visuellen Daten, um eine Darstellung mit reduzierter Dimension der getrennten Szene zu erstellen;
    • 20 ein Flussdiagramm ist, das die Verfahrensschritte für einen Bildverbesserungsprozess gemäß der Ausführungsform in 19 veranschaulicht, mit zusätzlichen Schritten zum Codieren visueller Daten an einem anderen Knoten vor dem Übertragen der codierten visuellen Daten an den Knoten, der das Verfahren von 19 durchführt;
    • 21 die Auswahl von Pixeln aus visuellen Daten auf der Grundlage eines vorgegebenen Wertes zeigt, um visuelle Daten mit reduzierter Auflösung für die Verarbeitung durch das in den 18 bis 20 dargestellte Verfahren zu erzeugen;
    • 22 einen Überblick über eine Methode zur Erzeugung von Modellen für die Entfernung von Bildartefakten zeigt;
    • 23 eine Methode zur Verwendung der Modelle zur Entfernung von Bildartefakten veranschaulicht;
    • 24 eine alternative Methode zur Verwendung der Modelle zur Entfernung von Bildartefakten veranschaulicht;
    • 25 den Kodierungsprozess veranschaulicht, um für die Übertragung aus hochauflösenden Videodaten eine Kombination aus niedrig auflösenden visuellen Daten und einem Verweis auf einen Algorithmus zu erzeugen, der die Auflösung der niedrig auflösenden visuellen Daten durch Superauflösung erhöhen kann;
    • 26 den Dekodierungsprozess unter Verwendung der visuellen Daten mit niedriger Auflösung und des Algorithmus zeigt, der der empfangenen Referenz entspricht, um eine Version der visuellen Daten mit hoher Auflösung wiederherzustellen; und
    • 27 die Verfahrensschritte des Kodierungsprozesses zur Erzeugung von Übertragungsdaten veranschaulicht, von der Aufnahme der ursprünglichen visuellen Daten bis zum übertragenen Paket einer Szene mit geringerer Auflösung und einem hierarchischen Algorithmus.
  • Spezifische Beschreibung
  • Verschiedene Ausführungsformen werden nun unter Bezugnahme auf die oben erwähnten Figuren im Detail beschrieben.
  • Verringerung der Komplexität in neuronalen Netzen
  • Unter Bezugnahme auf die 2a und 2b werden nun verschiedene mögliche Konfigurationen des neuronalen Netzes zur Verwendung in zumindest einigen Ausführungsformen im Detail beschrieben.
  • Ein Beispiel für ein geschichtetes neuronales Netz ist in 2a dargestellt, das drei Schichten 10, 20, 30 aufweist, wobei jede Schicht 10, 20, 30 aus einer Vielzahl von Neuronen 25 besteht, wobei jedoch keine Sparsamkeitsbeschränkungen angewandt wurden, so dass alle Neuronen 25 in jeder Schicht 10, 20, 30 mit allen Neuronen 25 in allen benachbarten Schichten 10, 20, 30 vernetzt sind. Das in 2a dargestellte einfache neuronale Netz ist aufgrund der geringen Anzahl von Neuronen 25 und Schichten rechnerisch nicht sehr komplex. Aufgrund der Dichte der Verbindungen lässt sich die in 2a gezeigte Anordnung des neuronalen Netzes jedoch nicht ohne Weiteres auf größere Netze, d. h. Verbindungen zwischen Neuronen/Schichten, übertragen, da die Berechnungskomplexität mit zunehmender Größe des Netzes schnell zu groß wird und nicht linear skaliert.
  • Wenn neuronale Netze für Eingaben mit einer hohen Anzahl von Dimensionen skaliert werden müssen, kann es daher zu rechenintensiv werden, wenn alle Neuronen 25 in jeder Schicht 10, 20, 30 mit allen Neuronen 25 in einer oder mehreren benachbarten Schichten 10, 20, 30 vernetzt sind. Eine vorgegebene anfängliche Sparsamkeitsbedingung wird verwendet, um die rechnerische Komplexität des neuronalen Netzes zu verringern, beispielsweise wenn das neuronale Netz als Optimierungsprozess fungiert, indem die Anzahl der Verbindungen zwischen Neuronen und/oder Schichten begrenzt wird, so dass ein neuronaler Netzansatz mit hochdimensionalen Daten wie Bildern arbeiten kann.
  • Ein Beispiel für ein neuronales Netz ist in 2b mit Sparsamkeitsbeschränkungen gemäß mindestens einer Ausführungsform dargestellt. Das in 2b gezeigte neuronale Netz ist so angeordnet, dass jedes Neuron 25 nur mit einer kleinen Anzahl von Neuronen 25 in den benachbarten Schichten 40, 50, 60 verbunden ist, wodurch ein neuronales Netz geschaffen wird, das nicht vollständig verbunden ist und das skaliert werden kann, um mit höherdimensionalen Daten zu funktionieren - beispielsweise als Optimierungsprozess für Video. Die geringere Anzahl von Verbindungen im Vergleich zu einem vollständig vernetzten neuronalen Netz ermöglicht eine im Wesentlichen lineare Skalierung der Anzahl von Verbindungen zwischen Neuronen.
  • Alternativ können in einigen Ausführungsformen neuronale Netze verwendet werden, die vollständig verbunden oder nicht vollständig verbunden sind, aber in anderen spezifischen Konfigurationen als den in Bezug auf 2b beschriebenen.
  • In einigen Ausführungsformen werden außerdem neuronale Faltungsnetzwerke verwendet, die nicht vollständig verbunden sind und daher weniger komplex sind als vollständig verbundene neuronale Netze. Neuronale Faltungsnetzwerke Netze können auch Pooling oder Max-Pooling verwenden, um die Dimensionalität (und damit die Komplexität) der Daten, die durch das neuronale Netz fließen, zu reduzieren, was den erforderlichen Rechenaufwand verringern kann. In einigen Ausführungsformen können verschiedene Ansätze zur Verringerung der Berechnungskomplexität von neuronalen Faltungsnetzwerken verwendet werden, wie z. B. der Winograd-Algorithmus oder Matrixannäherungen mit niedrigem Rang.
  • Ende-zu-Ende Superauflösung Verbesserunqsmodellerstellunq & -rekonstruktion
  • Obwohl ursprünglich für die Verbesserung von Einzelbildern konzipiert, können Superauflösungstechniken in einigen Ausführungsformen auch auf mehrere Bilder angewendet werden. Um diese Techniken in solchen Fällen anzuwenden, können mehrere niedrig aufgelöste Bilder zusammengefasst und die Subpixelverschiebungen zwischen den einzelnen Bildern genutzt werden, um ein Bild mit höherer Auflösung als das Original zu erzeugen. In solchen Fällen kann eine Reihe von Bildern kombiniert werden, um ein Video mit höherer Auflösung zu erzeugen, als ursprünglich vorgesehen war.
  • Zur Verbesserung des oben beschriebenen wörterbuchbasierten Ansatzes für die Kodierung und Dekodierung von Videos unter Verwendung von Superauflösungstechniken wird in zumindest einigen Ausführungsformen vorgeschlagen, Deep-Learning-Techniken und Faltungsneuronalnetzmodelle anstelle von Wörterbuch-Lerntechniken und wörterbuchbasierten Modellen zu verwenden.
  • Das Lernen von Wörterbüchern ist eng mit spärlichen Kodierungstechniken verwandt, während das Deep Learning nur lose mit der spärlichen Kodierung verbunden ist. Die spärliche Kodierung ist ein effektiver Mechanismus, der davon ausgeht, dass jedes natürliche Bild in einem Transformationsbereich spärlich dargestellt werden kann. Die spärliche Kodierung ist eine Technik, die verwendet wird, um automatisch eine kleine Anzahl repräsentativer Muster zu finden, die, wenn sie in den richtigen Proportionen kombiniert werden, die ursprünglichen Eingabemuster reproduzieren. Die spärliche Kodierung für eine Eingabe besteht dann aus diesen repräsentativen Mustern. Aus der Perspektive der Signalverarbeitung folgt, dass komplizierte Signale in eine kleine, d.h. spärliche Anzahl einfacher Signale zerlegt werden können.
  • Der Transformationsbereich kann ein Wörterbuch von Bildatomen sein, das durch einen als Wörterbuchlernen bekannten Trainingsprozess erlernt werden kann, bei dem versucht wird, die Korrespondenz zwischen niedrig aufgelösten und hoch aufgelösten Bildabschnitten (oder „Patches“) zu entdecken. Beim Wörterbuchlernen wird ein Satz linearer Darstellungen verwendet, um ein Bild darzustellen, und wenn ein überkomplettes Wörterbuch verwendet wird, kann eine Vielzahl linearer Darstellungen verwendet werden, um jedes Bildpatch darzustellen, um die Genauigkeit der Darstellung zu erhöhen.
  • Zumindest in einigen Ausführungsformen wird stattdessen vorgeschlagen, maschinelles Lernen mit Deep-Learning-Techniken zu verwenden, die stattdessen nichtlineare Darstellungen eines Bildes oder einer Bildfolge erstellen können.
  • Bei der Verwendung von maschinellem Lernen und spärlichen Kodierungsprinzipien wird ein Trainingsprozess verwendet, um optimale Darstellungen zu finden, die ein gegebenes Signal am besten repräsentieren können, vorbehaltlich vorher festgelegter Anfangsbedingungen, wie z. B. einem Grad an Sparsamkeit.
  • Bei der Verwendung von neuronalen Faltungsnetzwerken kann zumindest in einigen Ausführungsformen die Effizienz in Bezug auf die Rechen- und Speicherkosten von Bedeutung sein.
  • In einigen Ausführungsformen können Faltungsnetzwerkmodelle (oder hierarchische Algorithmen) zusammen mit den niedrig aufgelösten Bildern von Videodaten übertragen werden, da die Faltungsnetzwerkmodelle die übertragenen Daten im Vergleich zu gelernten Wörterbüchern, die zusammen mit den niedrig aufgelösten Bildern übertragen werden, reduzieren, insbesondere im Vergleich zur Übertragung von gelernten überkompletten Wörterbüchern mit den niedrig aufgelösten Bildern, wenn die Modelle und Wörterbücher den gleichen Grad an Rekonstruktionsgenauigkeit haben.
  • Die Modelle der neuronalen Faltungsnetzwerke einiger Ausführungsformen ermöglichen es, den Rekonstruktionsprozess und die Bilddarstellung nichtlinear zu gestalten. Dies steht im Gegensatz zu dem wörterbuchbasierten Ansatz, der Bilder auf lineare Weise darstellt, wie oben beschrieben. Die neuronalen Faltungsnetzwerkmodelle einiger Ausführungsformen bieten eine Rekonstruktion mit einem Feed-Forward-Mechanismus, der auf einer Bildfaltung basiert, die parallel berechnet werden kann und für die Methoden mit hoher Rechengeschwindigkeit zur Verfügung stehen, wie z. B. der AMD® Tiled Convolution-Ansatz, der für eine schnelle Bildfilterung verwendet werden kann.
  • Die Reihe von Faltungen in einem neuronalen Faltungsnetzwerkmodell einiger Ausführungsformen ermöglicht es, das neuronale Netz für die Suche nach Pixelkorrelationen in einem Bereich zu verwenden, der weit größer ist als die anfängliche Patch-Zerlegung, wobei jedoch eine Gewichtung angewendet wird, um die Bedeutung von Korrelationen für weiter vom interessierenden Pixel entfernte Orte zu schwächen. Im Gegensatz dazu beschränken sich lineare Sparse-Coding-Ansätze wie das Wörterbuchlernen auf die Suche nach Korrelationen in einer anfänglichen Patch-Größe, um den Rechenaufwand für die Suche im gesamten Bild zu vermeiden. Infolgedessen kann die Methode dieser Ausführungsformen die natürlichen oder nichtlokalen Redundanzen der Videobilder und zwischen einer Folge von Videobildern besser ausnutzen.
  • In einigen Ausführungsformen gehen die Modelle der neuronalen Faltungsnetzwerke optional nur von lokalen räumlichen oder räumlich-zeitlichen Korrelationen in einem Bild oder Video aus. Diese Annahme steht im Gegensatz zu der Annahme, dass kleine Datenpatches durch eine begrenzte Anzahl von Atomen aus einem Wörterbuch gut repräsentiert werden müssen, was eine Sparsamkeitsbeschränkung ist, die beim Lernen von Wörterbüchern und bei Ansätzen mit überkomplettem Wörterbuch angewendet wird.
  • In einigen Ausführungsformen können rekurrente neuronale Netzmodelle verwendet werden. Rekurrente neuronale Netzmodelle haben einzelne Schichten, die iterativ verwendet werden. Die Schichten eines rekurrenten neuronalen Netzmodells können in einigen Ausführungsformen in eine Reihe von Schichten aufgerollt werden, um in ähnlicher Weise wie Faltungsneuronale Netze behandelt zu werden.
  • Unter Bezugnahme auf die 3 und 5 wird nun eine Technik im Detail beschrieben, die in Verfahren, Geräten und/oder Systemen zur Codierung von Videodaten verwendet werden kann.
  • Bei den ursprünglichen Videodaten 70 handelt es sich um ein hochauflösendes Video, beispielsweise mit einer Auflösung von 1920 mal 1080 Pixeln (auch als „1080p“-Video bezeichnet) oder 3840 mal 2160 Pixeln (auch als „4K“-Video bezeichnet). Diese Videodaten können in einer Vielzahl von bekannten Videocodecs wie H.264 oder VP8 kodiert sein, aber auch beliebige Videodaten, die in die Einzelbilder des Videos dekodiert werden können. Die ursprünglichen Videodaten 70 werden als visuelle Eingangsdaten für die Kodierung mit der Technik bereitgestellt.
  • Die ursprünglichen Videodaten 70 werden dann in Schritt 80 (oder Schritt 190) in Einzelbilder mit voller Auflösung zerlegt, d. h. in eine Folge von Bildern mit der vollen Auflösung und/oder Qualität der ursprünglichen Videodaten 70. Bei einigen Videocodecs bedeutet dies eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da beispielsweise bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können in Schritt 90 (oder Schritt 190) die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was auch als „Szenenauswahl“ bezeichnet wird. Die Videodaten werden in Szenen aufgeteilt oder geclustert, um ein spezifischeres Training und eine Optimierung zu ermöglichen. Unter einer Szene versteht man eine aufeinanderfolgende Gruppe oder Sequenz von Bildern, die auf der gröbsten Ebene das gesamte Video, ein einzelnes Bild oder auf der feinsten Ebene ein Abschnitt/Segment eines Bildes sein kann.
  • Die genaue Vorgehensweise bei der Aufteilung von Bildern in Szenen kann je nach Ausführungsform auf verschiedene Weise erfolgen, wobei die vier wichtigsten Ansätze im Folgenden beschrieben werden:
    • Ein erster Ansatz ist die Verwendung der bildartigen Gruppierungen des zugrunde liegenden Videocodecs. Bei diesem Ansatz wird eine Szene im kodierten Video durch jede Gruppe von Bildern (manchmal mit der Abkürzung „GoP“ bezeichnet) definiert, zum Beispiel zwischen zwei I-Frames. Dies ist wahrscheinlich der einfachste Ansatz für die Szenenauswahl und erfordert kaum zusätzliche Berechnungen zur Durchführung der Szenenanalyse des Videos, aber der Ansatz erlaubt keine Flexibilität bei der Granularität der Definition jeder Szene.
  • Der zweite Ansatz ist die Verwendung eines Szenen- oder Shot-Transition-Detektors, wie er beispielsweise in dem Artikel „A Unified Model for Techniques on Video-Shot Transition Detection“ von Jesus Bescös, Guillermo Cisneros, Jose M. Martinez, Jose M. Menendez und Julian Cabrera beschrieben wird, der in IEEE TRANSACTIONS ON MULTIMEDIA, VOL. 7, NO. 2, APRIL 2005 auf den Seiten 293-307 veröffentlicht wurde, auf die hier verwiesen wird. Dieser Ansatz schlägt ein einheitliches Erkennungsmodell zur Erkennung von Kamerafahrten in Videos vor, das sowohl abrupte als auch allmähliche Kamerafahrten erkennt.
  • Der dritte Ansatz ist die Verwendung eines Clustering-Ansatzes nach der Anwendung eines unüberwachten Lern- oder Dimensionalitätsreduktionsansatzes wie K-means Clustering oder Manifold Learning oder Principle Component Analysis (PCA) usw. Ein geeigneter K-means-Clustering-Ansatz wird in dem Artikel „Constrained K-means Clustering with Background Knowledge“ von Kiri Wagstaff, Claire Cardie, Seth Rogers und Stefan Schroedl beschrieben, der in den Proceedings of the Eighteenth International Conference on Machine Learning, 2001, S. 577-584 veröffentlicht wurde. Ein geeigneter Ansatz für mannigfaltiges Lernen wird in dem am 15. Juni 2005 veröffentlichten Artikel „Algorithms for manifold learning“ von Lawrence Cayton vorgeschlagen. Diese beiden Arbeiten werden hier durch Bezugnahme einbezogen.
  • Der vierte Ansatz ist die Verwendung einer Reihe von vordefinierten Szenenklassen und die automatische Klassifizierung von Szenen anhand der vordefinierten Klassen. Beispiele für diesen Ansatz finden sich in dem Artikel „Nonparametric Scene Parsing: Label Transfer via Dense Scene Alignment“ von Ce Liu, Jenny Yuen und Antonio Torralba mit der IEEE-Referenz 978-1-4244-3991-1/09 und dem Artikel „80 million tiny images: a large dataset for non-parametric object and scene recognition“ von Antonio Torralba, Rob Fergus und William T. Freeman. Diese beiden Arbeiten werden hier durch Bezugnahme einbezogen.
  • Der genaue Ansatz, wie eine Szene definiert wird, ist unabhängig vom Rest des Ansatzes und variiert von Ausführungsform zu Ausführungsform, obwohl er sich auf die Trainingszeit und die Rekonstruktionsleistung auswirkt, so dass für jede mögliche Ausführungsform ein gewisses Maß an Optimierung erforderlich ist, um ein Gleichgewicht zwischen der Geschwindigkeit und der Genauigkeit des Schritts der Szenenerkennung zu finden.
  • Alternativ muss in einigen Ausführungsformen in Schritt 90 (oder Schritt 190) kein Szenenabgleich durchgeführt werden. Eine weitere Alternative für einige Ausführungsformen besteht darin, nur eine sehr einfache Zeitstempelung des Videos vorzunehmen, um zu bestimmen, wie die Videobilder für spätere Phasen des Verfahrens, z. B. während der Übertragung oder der Wiedergabe des Videos, wieder zusammengesetzt werden sollen.
  • Unabhängig davon, ob das Video in Schritt 90 (oder Schritt 190) in Bilder oder Szenen (d. h. Gruppen von mehreren Bildern) zerlegt wurde oder als eine Folge von Bildern aus Schritt 80 (oder Schritt 190) verbleibt, wird jedes Bild in Bilder mit einer niedrigeren Auflösung downgesampled. Optional kann dieser Schritt in einigen Ausführungsformen erfolgen, bevor die Bilder in Schritt 80 (oder Schritt 190) zu Szenen gruppiert werden, so dass Schritt 90 (oder Schritt 190) in diesen alternativen Ausführungsformen mit Schritt 90 (oder Schritt 190) ausgetauscht werden kann. Das Bild mit niedrigerer Auflösung kann beispielsweise 33 % bis 50 % der Datengröße im Verhältnis zur Datengröße des Bildes mit der ursprünglichen Auflösung betragen, aber es ist zu beachten, dass die niedrigere Auflösung in bestimmten Ausführungsformen eine beliebige Auflösung sein kann, die niedriger ist als die ursprüngliche Auflösung des Videos.
  • In Schritt 110 (oder Schritt 200) werden in mindestens einer Ausführungsform Superauflösungstechniken eingesetzt, um mit Hilfe des maschinellen Lernens für jedes Bild ein spezifisches Modell zu erstellen, so dass das Modell verwendet werden kann, um die Version mit der ursprünglichen Auflösung eines Bildes mit geringerer Auflösung im Wesentlichen wiederherzustellen, und mit Hilfe des maschinellen Lernens auf der Grundlage der Kenntnis des Bildes mit der ursprünglichen Auflösung trainiert wird. Dieser Schritt wird als Trainings- und Optimierungsprozess bezeichnet. In einigen Ausführungsformen können allgemeine Modelle für verschiedene Arten von Szenen oder Bildern entwickelt werden. In anderen Ausführungsformen können die Modelle für jede Szene entwickelt werden.
  • Durch die Anwendung eines Deep-Learning-Ansatzes zur Erstellung des Modells in einigen Ausführungsformen kann ein nichtlineares hierarchisches Modell erstellt werden, um ein Bild mit höherer Auflösung aus einem Bild mit niedrigerer Auflösung zu rekonstruieren.
  • Ein Beispiel für einen Deep-Learning-Ansatz, allerdings nur für Standbilder und ohne Verwendung des Originalbilds zur Optimierung des Rekonstruktionsmodells, wird in dem Artikel „Learning a Deep Convolutional Network for Image Super-Resolution“ von Chao Dong, Chen Change Loy, Kaiming He und Xiaoou Tang beschrieben, der in D. Fleet et al. (Eds.): ECCV 2014, Part IV, LNCS 8692, pp. 184-199, 2014 veröffentlicht wurde und dieser Artikel ist hier durch Bezugnahme aufgenommen. Dieser Artikel bezieht sich auf die Verwendung von Superauflösungstechniken, wenn versucht wird, eine unbekannte hochauflösende Version eines gegebenen niedrigauflösenden Bildes zu erhalten, und schlägt die Verwendung eines Faltungsneuronalen Netzes vor, um Zuordnungen zwischen niedrigauflösenden und hochauflösenden Bildern zu lernen.
  • Die Erstellung nichtlinearer hierarchischer Modelle ist zwar rechnerisch komplexer als die Erstellung linearer Modelle mit Hilfe von Wörterbuch-Lernansätzen, aber zumindest in einigen Ausführungsformen kann sie flexibler sein. Darüber hinaus können die in einigen dieser Ausführungsformen erstellten nichtlinearen Modelle im Vergleich zum wörterbuchbasierten Ansatz nur wenige Koeffizienten für die Rekonstruktion verwenden, so dass solche Modelle weniger zu übertragende Daten erfordern können. Darüber hinaus können die in einigen Ausführungsformen verwendeten nichtlinearen Modelle bei der Rekonstruktion von Bildern mit höherer Auflösung genauer sein als wörterbuchbasierte Ansätze. Bei den in einigen Ausführungsformen erstellten nichtlinearen Modellen handelt es sich um kleine neuronale Faltungsnetzwerke und nicht um überkomplette Wörterbücher. Im Gegensatz zu dem Ansatz der lokalen Mittelwertbildung, der bei der Rekonstruktion mit Hilfe von Wörterbüchern verwendet wird, ermöglicht die Verwendung eines neuronalen Faltungsnetzwerkmodells in einigen Ausführungsformen auch das Erlernen eines geeigneteren Filters für die endgültige Rekonstruktion, bei dem benachbarte Patcher berücksichtigt werden, was eine unbeabsichtigte Glättung des rekonstruierten Bildes mit höherer Auflösung vermeiden kann.
  • Der Trainings- und Optimierungsprozess kann je nach gewünschtem Kompromiss zwischen der aufgewendeten Rechenzeit und der gewünschten Qualität der Ergebnisse konfiguriert werden. Im Allgemeinen führt die Anzahl der während des Trainingsprozesses verwendeten Iterationen zu einem annähernd logarithmischen Gewinn an Rekonstruktionsgenauigkeit, so dass es in einigen Ausführungsformen vorzuziehen ist, einen automatischen Schwellenwert zu verwenden, um eine weitere Optimierung zu stoppen. Um die Qualität der Ergebnisse zu verbessern, kann der automatische Schwellenwert auf einen vorbestimmten Wert des Rekonstruktionsfehlers gesetzt werden, z. B. durch Berechnung des mittleren quadratischen Fehlers, es können aber auch andere Methoden verwendet werden. Alternativ kann in einigen Ausführungsformen der automatische Schwellenwert so eingestellt werden, dass der Trainings- und Optimierungsprozess auf eine vorbestimmte Anzahl von Iterationen begrenzt wird. Als weitere Alternative kann in einigen Ausführungsformen eine Kombination dieser beiden Faktoren verwendet werden.
  • In einigen Ausführungsformen werden in Schritt 120 (oder Schritt 210) der Teil des niedrig aufgelösten Videos und das Rekonstruktionsmodell für diesen Teil des Videos zur Übertragung ausgegeben. Optional können in einigen Ausführungsformen das Video und das Modell zusammen in einem geeigneten Datencontainerformat wie einem Matroska-Multimedia-Container (auch bekannt als MKV-Container) gespeichert werden. Alternativ dazu können in einigen Ausführungsformen das Video und das Modell mit anderen Abschnitten oder dem gesamten Video kombiniert und in einem geeigneten Datencontainerformat abgelegt werden. In einigen Ausführungsformen können in Schritt 120 (oder Schritt 210) die niedrig aufgelösten Videobilder entweder mit dem ursprünglichen Videocodec, der auf die ursprünglichen Videodaten 70 angewendet wurde, neu kodiert werden, oder es kann alternativ ein optimalerer Videocodec auf die Videodaten angewendet werden, um Ausgangsvideodaten 130 zu erzeugen. Wurde eine Szenenerkennung oder Zeitstempelung durchgeführt, können die für die Übertragung ausgegebenen Daten in einigen Ausführungsformen entweder eine Liste von Szenen bzw. Zeitstempeldaten enthalten, oder diese Daten können im Datencontainer gespeichert werden.
  • Das oben beschriebene Kodierungsschema kann in verschiedenen Ausführungsformen variiert werden. Bei der oben beschriebenen Technik kann in vielen Ausführungsformen davon ausgegangen werden, dass es eine Eins-zu-Eins-Zuordnung zwischen Szene und Modell gibt. Dies muss jedoch nicht zutreffen, da in einigen Ausführungsformen ein lokales Cluster von Szenen zum Trainieren jedes Modells verwendet werden könnte. Umgekehrt wäre es in einigen Ausführungsformen auch möglich, mehrere ähnliche Modelle zu verwenden, um (mittels eines gewichteten Durchschnitts) Anfangsparameter für das Training neuer, ungesehener Szenen zu initialisieren. In einigen Ausführungsformen kann es auch ausreichen, die Modelle einfach zu gewichten, ohne dass eine weitere Optimierung erforderlich ist - ähnlich wie bei Methoden der Etikettenfusion, die z. B. in der medizinischen Bildgebung verwendet werden.
  • In den 4 und 6 werden nun Ausführungsformen zur Rekonstruktion des mit dieser Technik kodierten Videos im Detail beschrieben.
  • Zunächst werden die Daten 130 aus dem Netz empfangen. In Ausführungsformen hängen die empfangenen Daten 130 davon ab, wie die Daten für die Übertragung in Schritt 120 (oder 210) vorbereitet wurden, wie oben in den verschiedenen möglichen Ausführungsformen beschrieben, und die vorbereiteten Daten können die Videodaten und ein oder mehrere Rekonstruktionsmodelle für diese Videodaten enthalten. In einigen Ausführungsformen ist es möglich, dass die Videodaten und ein oder mehrere Rekonstruktionsmodelle nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die zum Dekodieren oder Rekonstruieren des Videos mit höherer Auflösung aus den über das Netzwerk übertragenen Daten erforderlich sind.
  • In den Schritten 140 und 150 (und Schritt 220) werden die empfangenen Daten je nach Ausführungsform für die Rekonstruktion vorbereitet. In den meisten Ausführungsformen umfasst dieser Schritt die Trennung des niedrig aufgelösten Videos von den Rekonstruktionsmodellen (Schritt 220). Optional wird in einigen Ausführungsformen das niedrig aufgelöste Video mit dem für die Übertragung verwendeten Videocodec in Bilder mit voller Auflösung dekomprimiert (Schritt 230) und jedes der Bilder wird mit dem entsprechenden Rekonstruktionsmodell abgeglichen, das ebenfalls in eine bildweise Reihenfolge gebracht wird (Schritt 240).
  • In Schritt 160 (Schritt 250) wird das Rekonstruktionsmodell auf jedes der Bilder angewandt, um je nach Ausführungsform Bilder mit höherer Auflösung auszugeben. Der Rekonstruktions- oder Dekodierungsprozess umfasst in den meisten Ausführungsformen die Anwendung des optimierten neuronalen Faltungsnetzwerkmodells mit hoher Auflösung oder des Rekonstruktionsmodells für jede Szene, um das Video mit niedrigerer Auflösung in seiner ursprünglichen Auflösung wiederherzustellen, die im Wesentlichen dieselbe Qualität aufweist wie das ursprüngliche hochauflösende Video. Mit den entsprechenden Modellen für jedes Einzelbild mit niedrigerer Auflösung können die ursprünglichen Einzelbilder mit höherer Auflösung zumindest bei einigen dieser Ausführungsformen mit hoher Genauigkeit rekonstruiert werden.
  • Die Komplexität des Rekonstruktionsprozesses kann im Vergleich zum Training des Modells in den meisten Fällen sehr viel einfacher sein, d. h. weniger Berechnungen erfordern. In den meisten Fällen ist der Rekonstruktionsprozess einer einzelnen Iteration des Trainingsprozesses sehr ähnlich, wobei jedoch keine Optimierung erforderlich ist und der Prozess einfach das gelernte neuronale Faltungsnetzwerkmodell anwendet, um das Bild Patch für Patch zu rekonstruieren. In einigen Ausführungsformen wird ein einzelnes Modell auf jede Szene angewendet und kann als Begleitdaten im Videocontainer vor der Szene, in der es verwendet wird, gesendet werden. In einigen Ausführungsformen kann das jeder Szene zugeordnete Modell entweder in einem Datenstrom indiziert werden, der mit dem Video- und Audiostrom synchronisiert ist, oder in einer Frame-to-Model-Look-up-Tabelle indiziert werden, die je nach Ausführungsform vor dem Videostrom gesendet werden kann.
  • Die Bildrekonstruktion hat in den meisten Ausführungsformen eine lineare Rechenkomplexität, die von der Gesamtzahl der Pixel jedes Bildes abhängt, da der Rekonstruktionsprozess eine Reihe von Faltungsfunktionen (in der Regel weniger als 3) erfordert, die für jedes relevante Bildpatch um jedes Pixel herum angewendet werden müssen. Ein grundlegender Rekonstruktionsschritt für jedes Bild wird in dem Artikel „Learning a Deep Convolutional Network for Image Superauflösung“ von Chao Dong, Chen Change Loy, Kaiming He und Xiaoou Tang beschrieben, der in D. Fleet et al. (Eds.): ECCV 2014, Part IV, LNCS 8692, pp. 184-199, 2014, veröffemtlicht ist, und dieser Schritt kann mit oder ohne Änderungen in einigen Ausführungsformen verwendet werden. In einigen dieser Ausführungsformen können diese Funktionen jedoch parallel auf mehrere Bilder angewendet werden, und in einigen Ausführungsformen kann es möglich sein, eine Echtzeit-Rekonstruktion für die Videowiedergabe durchzuführen.
  • In den meisten Fällen erfolgt die Hochauflösung patchweise, in einigen Fällen ist es jedoch nicht notwendig, die Hochauflösung für jeden einzelnen Patch eines Bildes durchzuführen. In einigen Fällen, in denen das Patch flach und glatt ist, kann eine bikubische Hochskalierung ausreichen. In einigen Fällen kann es sowohl für das Training als auch für die Rekonstruktion schneller sein, wenn diese Patches umgangen werden können. Um diese Bereiche zu identifizieren, kann ein Ansatz, wie er in dem Artikel „Coupled Dictionary Training for Image Superauflösung“ von Jianchao Yang, Zhaowen Wang, Zhe Lin, Scott Cohen und Thomas Huang (veröffentlicht in IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 21, NO. 8, AUGUST 2012), aufgeführt ist, auf den Bezug genommen wird, in einigen Ausführungsformen verwendet werden, um Bereiche mit geringer Varianz herauszufiltern und diese Bereiche des Bildes zu ignorieren. Alternativ könnten in anderen Ausführungsformen stattdessen Kantendetektoren verwendet werden, um Bereiche von Interesse zu identifizieren.
  • Darüber hinaus kann in einigen Ausführungsformen ein gewisses Maß an Inter-Frame-Vergleich verwendet werden, um Bereiche des Bildes zu identifizieren, die sich von Bild zu Bild nicht ändern, wodurch Bereiche des Bildes davon abgehalten werden, den Aufwand für die Rekonstruktion der hohen Auflösung, die in einem vorherigen Bild auftritt, zu duplizieren. In diesen Ausführungsformen kann der zugrunde liegende Videocode für das Video mit niedriger Auflösung verwendet werden, um die Bereiche der Veränderung als Teil seines Inter-Frame-Kompressionsmechanismus zu identifizieren, und diese Informationen könnten für eine effizientere Echtzeit-Rekonstruktion mit hoher Auflösung und Videowiedergabe genutzt werden. Darüber hinaus kann in einigen Ausführungsformen eine zusätzliche Datenstruktur, wie z. B. ein Zufallsfarn, verwendet werden, um die Einzigartigkeit der rekonstruierten Bereiche zu verfolgen. In Anbetracht der Tatsache, dass ein Bild viele sich wiederholende Patches enthalten kann, könnte die Verwendung dieses Ansatzes in einigen Ausführungsformen eine unnötige Rekonstruktion von Patches verhindern, bei denen das Ergebnis bereits bekannt ist (in einem anderen Patch). Ähnliche Ansätze wurden bei der Erkennung von Schlüsselbildern für die Echtzeit-Lokalisierung von Kameras für Augmented-Reality-Anwendungen verwendet.
  • Das vorgeschlagene Verfahren und System zur Kodierung und Dekodierung von Videos kann zumindest in einigen Ausführungsformen die bestehenden Codecs zur Videokompression und -dekompression ergänzen. Durch die Verwendung desselben Codecs, der auch für die Erstellung der Videodaten verwendet wird, kann das übertragene niedrig aufgelöste Video mit demselben Videocodec kodiert werden, in einigen Ausführungsformen jedoch mit einer niedrigeren Auflösung als die des Originals. So kann das vorgeschlagene Verfahren und System in einigen Ausführungsformen unabhängig vom ursprünglichen Codec sein, der zur Erstellung und Komprimierung des Videos verwendet wird. Alternativ ist es in einigen Ausführungsformen möglich, einen alternativen Codec für die Übertragung zu wählen und das Video wieder in den ursprünglichen Codec zu kodieren, wenn die Videodaten übertragen, entkomprimiert und zu einer hochauflösenden Version der ursprünglichen Videodaten wiederhergestellt worden sind.
  • Durch die Einbeziehung, beipspielsweise in einigen Ausführungsformen, von Bildverbesserungstechniken in einen Videokomprimierungsprozess kann eine Verringerung der Auflösung des Videos während der Übertragung erreicht werden, so dass geringere Datenmengen übertragen werden, da das Bild an dem Knoten, der das Video mit verringerter Auflösung empfängt, verbessert werden kann, um das Video mit der ursprünglichen Auflösung wiederherzustellen. Durch die Verwendung der Superauflösung als Bildverbesserungstechnik in solchen Ausführungsformen und mit der Kenntnis des ursprünglichen hochauflösenden Bildes vor der Anwendung von Bildverbesserungstechniken ist es möglich, das ursprüngliche hochauflösende Bild auf ein Bild mit geringerer Auflösung herunterzurechnen und eine oder mehrere Darstellungen aus einer Bibliothek von Darstellungen auszuwählen, die verwendet werden können, um ein hochauflösendes Bild aus dem heruntergerechneten Bild auf der Grundlage der Kenntnis des ursprünglichen Bildes zu erstellen. In solchen Ausführungsformen führt dies dazu, dass anstelle des ursprünglichen hochauflösenden Videos nur ein verkleinertes Bild und das Modell oder der Parameter für die Rekonstruktion der Superauflösung über ein Netzwerk übertragen werden, wodurch die übertragene Datenmenge verringert wird, während die Bildqualität im Vergleich zum Original ähnlich bleibt, sobald das hochauflösende Bild neu erstellt wurde.
  • In Schritt 170 wird in einigen Ausführungsformen jedes der Videosegmente vom Rekonstruktionsprozess als höher aufgelöste Bilder mit der gleichen Auflösung wie das ursprüngliche Video 70 ausgegeben. In diesen Ausführungsformen ist die Qualität des Ausgangsvideos 180 im Wesentlichen ähnlich wie die des Originalvideos 70, innerhalb der Fehlergrenzen, die optional durch den maschinellen Lernprozess angewendet werden, der das Rekonstruktionsmodell in Schritt 110 (oder Schritt 200) des Codierungsprozesses entwickelt.
  • In Schritt 180 werden in einigen Ausführungsformen die Videosegmente so kombiniert, dass das Video angezeigt werden kann. Optional kann in Schritt 170 oder 180 in anderen Ausführungsformen das Video mit dem ursprünglichen Codec, der für das ursprüngliche Video 70 verwendet wurde, oder einem vorbestimmten optimalen Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • In den meisten Fällen führt die vorgeschlagene Technik keine herkömmliche Komprimierung durch, bei der die Originaldaten neu angeordnet und redundante Daten oder Daten, die als am wenigsten wichtig erachtet werden, verworfen werden, so dass der Großteil der Daten intakt bleibt. Stattdessen bestimmt die Technik in diesen Ausführungsformen eine Reihe einfacher, leichtgewichtiger Funktionen durch maschinelles Lernen, die verwendet werden können, um die ursprünglichen Daten zu rekonstruieren, während der Rekonstruktionsfehler unter Berücksichtigung einer vordefinierten Kostenfunktion minimiert wird (eine Reihe von Optimierungs- oder Suchverfahren, die beim maschinellen Lernen üblich sind, können verwendet werden, wie z. B. Gradientenabstieg oder stochastischer Gradientenabstieg). Daraus folgt, dass die Technik dieser Ausführungsformen als Optimierungsprozess der Rekonstruktionsfunktionen und nicht als Datenredundanz-/Reduktionsprozess herkömmlicher Kompressionstechniken beschrieben werden kann.
  • Subpixel-Faltung
  • Unter Bezugnahme auf die 3 und 5 werden nun Ausführungsformen, die eine andere Technik zur Kodierung visueller Daten verwenden, im Detail beschrieben. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben werden.
  • Auch bei diesen Ausführungsformen werden die ursprünglichen Videodaten 70 in das Verfahren oder System eingespeist und sind ein hochauflösendes Video, z. B. mit einer Auflösung von 1920 mal 1080 Pixeln (auch als „1080p“-Video bekannt) oder 3840 mal 2160 Pixeln (auch als „4K“-Video bekannt). Diese Videodaten können in einer Vielzahl von bekannten Videocodecs wie H.264 oder VP8 kodiert sein, aber es kann sich auch um beliebige visuelle Daten handeln, die das System oder die Methode in die einzelnen Abschnitte dekodieren kann.
  • Die ursprünglichen Videodaten 70 werden dann in Schritt 80 (oder Schritt 190) in Einzelbilder mit voller Auflösung zerlegt, d. h. in eine Folge von Bildern mit der vollen Auflösung der ursprünglichen Videodaten 70. Bei einigen Videocodecs bedeutet dies eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z. B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können in Schritt 90 (oder Schritt 190) die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was auch als „Szenenauswahl“ bezeichnet wird. Die Videodaten werden in Szenen aufgeteilt oder geclustert, um ein spezifischeres Training und eine Optimierung zu ermöglichen. Mit Szene ist eine aufeinander folgende Gruppe oder Abfolge von Bildern gemeint, die auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelnes Bild sein kann.
  • Um ein Bild mit niedriger Auflösung in einen hochauflösenden Raum hochaufzulösen, muss die Dimensionalität des Bildes mit niedriger Auflösung erhöht werden, damit sie mit der des Bildes mit hoher Auflösung zu einem bestimmten Zeitpunkt während des Betriebs des beispielbasierten Modells oder des neuronalen Faltungsnetzwerkes übereinstimmt. Durch die Hochskalierung des Bildes mit niedriger Auflösung auf eine hohe Auflösung als Eingabe für ein beispielbasiertes Modell muss das beispielbasierte Modell nicht die hochauflösenden Filter erlernen, um die Hochskalierung vom Raum mit niedriger Auflösung auf einen Raum mit hoher Auflösung durchzuführen.
  • In 7 ist ein effizientes neuronales Subpixel-Faltungsnetzwerk (ESPCN) 700 dargestellt, das ein niedrig aufgelöstes Eingangsbild 710 mit zwei mit neuronalen Faltungsnetzwerken aufgebauten Merkmalskarten-Extraktionsschichten 720, 730 und einer Subpixel-Faltungsschicht 740 aufweist, die die Merkmalskarten aus dem niedrig aufgelösten Raum zusammenfasst und das hochauflösende Bild 750 in einem einzigen Schritt erstellt.
  • Wie in 7 dargestellt, werden in einer Ausführungsform die hochaufgelösten Daten erst ganz am Ende des Netzes, in der letzten Schicht, von den niedrig aufgelösten Merkmalskarten überlagert, so dass der größte Teil der Berechnungen nicht in der größeren hochaufgelösten Dimensionalität durchgeführt werden muss. Da die Verarbeitungsgeschwindigkeit im Wesentlichen direkt von der Dimensionalität des Eingangsbildes abhängt, ermöglicht der Betrieb im niedrig aufgelösten Raum eine schnellere Verarbeitung. Darüber hinaus ist durch die Durchführung der Merkmalskartenextraktion vor der Hochskalierung eine komplexere und genauere Hochskalierung (d. h. zusätzliche Rekonstruktionsgenauigkeit) durch die letzte Schicht des Netzes möglich, da eine Hochskalierungs- oder Resamplingfunktion erlernt werden kann und inhalts- und datenadaptiv ist, verglichen mit der Anwendung eines expliziten generischen oder handgefertigten Interpolationsfilters zur Durchführung der Hochskalierung (z. B. eines bikubischen Interpolationsfilters), der zuvor heuristisch ausgewählt wird.
  • Die Aufgabe des beispielbasierten Modells, in einigen Ausführungsformen ein Einzelbild-Superauflösungsnetz, besteht darin, ein hochauflösendes Bild zu schätzen, wenn ein Bild mit niedriger Auflösung vorliegt, das von einem entsprechenden hochauflösenden Bild herunterskaliert oder herabgetastet wurde. In einigen Fällen, z. B. bei der Videokomprimierung, kann der Vorgang des Downsamplings deterministisch und bekannt sein: Um das niedrig aufgelöste Bild aus dem hoch aufgelösten Bild zu erzeugen, kann das hoch aufgelöste Bild mit einem Gauß-Filter gefaltet werden (es können aber auch andere Filter verwendet werden), wodurch eine Punktspreizfunktion in einer Kamera simuliert wird, und dann um ein Hochskalierungsverhältnis r downsampled werden. Allerdings sind die allgemeine Superauflösung und die Hochskalierung in der Regel nicht deterministisch, und in einigen Ausführungsformen kann das Training für eine Reihe verschiedener Abwärtsabtastungen durchgeführt werden, um nicht-deterministische Operationen abzuschwächen. In anderen Ausführungsformen kann eine Schätzung durchgeführt werden, z. B. durch das Trainieren eines Klassifizierers oder eines visuellen Vergleichs, der in einigen Ausführungsformen optional für den Superauflösungsprozess parametrisiert werden kann. Im Allgemeinen haben sowohl das Bild mit niedriger als auch das mit hoher Auflösung C Farbkanäle und können daher als reellwertige Tensoren der Größe H × W ×C und rH ×rW ×C dargestellt werden. In einigen Ausführungsformen wird statt der Wiederherstellung eines hochauflösenden Bildes aus einer hochskalierten und interpolierten Version des niedrigauflösenden Bildes das niedrigauflösende Bild von einem dreischichtigen Faltungsnetzwerk verwendet, um eine Hochskalierung zu vermeiden, bevor das niedrigauflösende Bild in das Netzwerk eingespeist wird. In dem Netz wird eine Subpixel-Faltungsschicht angewandt, um die niedrig aufgelösten Merkmalskarten hochzuskalieren und ein hochauflösendes Bild mit Superauflösung zu erzeugen.
  • Bei einem Netz, zusammengesetzt aus L Schichten, können die ersten L-1Schichten wie folgt beschrieben werden: ƒ 1 ( I L R ; W 1 , b 1 ) = ( W 1 * I L R + b 1 ) ,
    Figure DE202016009102U1_0003
    ƒ 1 ( I L R ; W 1 : l , b 1 : l ) = ( W 1 * ƒ l 1 ( I L R ) + b l ) ,
    Figure DE202016009102U1_0004
    wobei Wl, bl, 1 ∈ (1, L - 1) lernbare Netzgewichte bzw. Verzerrungen sind. Wl ist ein 2D-Faltungstensor der Größe nl-1 ×nl ×kL ×kL ist, wobei nl die Anzahl der Merkmale auf der Ebene 1, n0 = C, und kL die Filtergröße und das Niveau 1. Die Verzerrungen bl sind Vektoren der Länge nl. Die Nichtlinearitätsfunktion 0 gilt elementweise und ist fest. Die letzte Schicht f1 muss die niedrig aufgelösten Merkmalskarten in ein hoch aufgelöstes Bild umwandeln ISR.
  • In einer Ausführungsform werden die hochaufgelösten Daten von den niedrig aufgelösten Merkmalskarten durch eine Subpixel-Faltungsschicht hochaufgelöst, um den Hochskalierungsvorgang für die Bild- und Video-Hochauflösung zu erlernen. Wenn die letzte Schicht die Hochskalierung durchführt, erfolgt die Merkmalsextraktion durch nichtlineare Faltungen in den niedrig aufgelösten Dimensionen, so dass eine geringere Filtergröße verwendet werden kann, um dieselben Informationen zu integrieren, als dies in den hochauflösenden Dimensionen der Fall wäre, was die Rechenkomplexität verringert.
  • In einer Ausführungsform besteht das neuronale Faltungsnetzwerk aus einer Vielzahl nichtlinearer Mapping-Schichten, gefolgt von einer Subpixel-Faltungsschicht. Der Vorteil liegt in der geringeren Rechenkomplexität im Vergleich zu einem dreischichtigen Faltungsnetzwerk, das zur Darstellung der Schritte der Patchextraktion und -darstellung, der nichtlinearen Figur und der Rekonstruktion in den herkömmlichen, auf Sparse-Coding basierenden Bildrekonstruktionsverfahren verwendet wird und eine hochskalierte und interpolierte Version der niedrig aufgelösten Eingabe verwendet. Das neuronale Faltungsnetzwerk verwendet gelernte Filter auf den Merkmalskarten, um die niedrig aufgelösten Daten in hochaufgelöste Daten umzuwandeln (anstelle einer handwerklichen Interpolation oder eines einzelnen Filters auf den Eingangsbildern/Bildern).
  • Anstatt eine Entfaltungsschicht zu verwenden, um die Auflösung von Max-Pooling und anderen Bildverkleinerungsebenen wiederherzustellen, wird in einigen Ausführungsformen die Hochskalierung eines Bildes mit niedriger Auflösung durch Faltung durchgeführt.
  • In einer Ausführungsform wird die Faltung mit einer Teilschrittweite von 1 r
    Figure DE202016009102U1_0005
    im niedrig auflösenden Raum durchgeführt, was durch Interpolation, Perforation oder Un-Pooling vom niedrig auflösenden Raum in den hoch auflösenden Raum und anschließende Faltung mit einer Schrittweite von 1 im hoch auflösenden Raum realisiert werden kann.
  • In einer anderen Ausführungsform wird die Faltung mit einer Schrittweite von 1 r
    Figure DE202016009102U1_0006
    im niedrig aufgelösten Raum mit einem Filter Wd der Größe ks mit einem Gewichtsabstand 1 r
    Figure DE202016009102U1_0007
    zur Aktivierung verschiedener Teile von Wd für die Faltung zu aktivieren. Die Gewichte, die zwischen die Pixel fallen, werden nicht aktiviert und daher nicht berechnet. Die Anzahl der Aktivierungsmuster ist r2 und jedes Aktivierungsmuster hat je nach seiner Lage höchstens ( k s 2 ) 2
    Figure DE202016009102U1_0008
    Gewichte aktiviert. Diese Muster werden während der Faltung des Filters über das Bild in Abhängigkeit von den verschiedenen Subpixeln periodisch aktiviert: mod (x, r), mod (y, r), wobei x, y die Ausgangspixelkoordinaten im hochauflösenden Raum sind. Für den Fall, dass mod (ks, rks) = 0, für ein neuronales Netz mit 1 Schichten, die niedrig aufgelösten Merkmalskarten fl-1(ILR) aus der letzten nichtlinearen Mapping-Schicht aggregiert, um die endgültige Schätzung des hochaufgelösten Bildes zu erhalten fl(ILR) unter Verwendung der folgenden Formel: I S R = ƒ l ( I L R ) = P S ( W L * ƒ L 1 ( I L R ) + b L
    Figure DE202016009102U1_0009
    wobei WL und bL für lernfähige Filter bzw. Biaises stehen. Der endgültige Faltungsfilter WL ist von der Größe nL-1 × r2C × kL × kL, wobei C die Anzahl der Farbkanäle im Originalbild ist und r das Wiederabtastverhältnis ist. PS ist ein periodischer Shuffle-Operator. Nach der Faltung, aber vor der Anwendung von PS haben wir einen Tensor der Dimension rH × rW × C · r2, wobei h und v die horizontale und vertikale Dimension des hochaufgelösten Bildes sind. Das Ergebnis der Anwendung von PS ist ein rH × rW ×C Array, d. h. dieselben Abmessungen wie das hochaufgelöste Bild. Dies wird durch periodisches Mischen von PS erreicht, folgendermaßen beschrieben: P S ( T ) x , y , c = T [ x r ] , [ y r ] , c r m o d ( y , r ) + c m o d ( x , r )
    Figure DE202016009102U1_0010
  • Es ist leicht zu erkennen, dass, wenn k L = k s r
    Figure DE202016009102U1_0011
    und mod (ks,r) = 0 gleichbedeutend ist mit einer Subpixel-Faltung im niedrig aufgelösten Raum mit dem Filter Wd. Diese letzte Schicht oder Subpixel-Faltungsschicht erzeugt ein hochaufgelöstes Bild direkt aus den niedrig aufgelösten Merkmalskarten, mit einem besser unterscheidbaren Filter für jede Merkmalskarte, und kann mit erhöhter Effizienz arbeiten, da die beschriebene Operation des periodischen Shufflings parallel in einem einzigen Zyklus verarbeitet werden kann.
  • Bei einem Trainingssatz bestehend aus hochauflösenden Bildbeispielen I n HR ,
    Figure DE202016009102U1_0012
    , n = 1 ... N werden die entsprechenden niedrig aufgelösten Bilder I n LR , n = 1 N
    Figure DE202016009102U1_0013
    erzeugt, und der pixelweise mittlere quadratische Fehler (MSE) der Rekonstruktion wird als Zielfunktion für das Training des Netzes berechnet: l ( W 1 : L , b 1 : L ) = 1 r 2 H W x = 1 r H x = 1 r W ( I x H , y R ƒ x , y L ( I L R ) ) 2
    Figure DE202016009102U1_0014
  • In 8 ist eine Netzarchitektur 800 für die Superauflösung unter Verwendung von drei Eingangsbildern 810a, 810b und 810c (und dann 810b, 810c und 810d) dargestellt. Nur die Eingangsschicht des neuronalen Netzes ist so modifiziert, dass sie drei Eingangsbilder für die Superauflösungsvorhersage nur des mittleren Bildes 830b (oder 830c) gemeinsam verarbeitet. Die verborgenen Schichten 820a, 820b) sind identisch mit denen in 7.
  • Wie in 8 dargestellt, werden in einer Ausführungsform räumlich-zeitliche Faltungen in der ersten Schicht des neuronalen Netzes durchgeführt. Die Verwendung einer räumlich-zeitlichen Eingabeschicht als Erweiterung des Netzwerks zur Verarbeitung von Videodaten ermöglicht eine Verbesserung der Rekonstruktionsleistung für Videodaten durch Ausnutzung der zeitlichen Redundanz zwischen aufeinanderfolgenden Bildern in einem Video.
  • In einigen Ausführungsformen können die Einstellungen 1 = 3, (f1,n1) = (5, 64), (f2,n2) = (3, 32), und f3= 3 verwendet werden. In der Trainingsphase dieser Ausführungsformen, 17r ×17r wurden Pixel-Teilbilder zufällig aus den Trainingsbildern ausgewählt IHR ausgewählt, wobei r der Hochskalierungsfaktor ist. In anderen Ausführungsformen können andere Parameter auf der Grundlage der verfügbaren Computerhardware und/oder der Trainingszeit gewählt werden. Zur Synthese der niedrig aufgelösten Muster wurden ILR, IHR mit Hilfe eines Gauß-Filters unscharf gemacht und mit dem Hochskalierungs-Faktor unterabgetastet. In diesen Ausführungsformen wurden die Teilbilder aus den Originalbildern mit einer Schrittweite von (17 - Σ mod (f, 2)) ×r von IHR und einer Schrittweite von (17 - Σ mod (f, 2)) von ILR extrahiert. In anderen Ausführungsformen können Teilbilder beliebiger Größe gewählt werden: Kleinere Teilbilder können schnellere Aktualisierungen beim Training ermöglichen (da Aktualisierungen schneller durchgeführt werden können, da weniger Faltungen pro Teilbild erforderlich sind) und können auch die Verwendung von mehr einzelnen Trainingsbeispielen und eine weitere Steigerung der Repräsentationen ermöglichen; während größere Teilbilder für Batch-Systeme verarbeitungseffizienter sein können, insbesondere wenn ausreichend Trainingsdaten zur Verfügung stehen. Es sei darauf hingewiesen, dass in den meisten Fällen die untere Grenze der Teilbildgröße von den in einem neuronalen Netz verwendeten Filtergrößen abhängt, während die obere Grenze speicher- und datensatzbezogen ist. Dadurch wird sichergestellt, dass alle Pixel im Originalbild nur einmal als Grundwahrheit der Trainingsdaten erscheinen. tanh kann in diesen Ausführungsformen als Aktivierungsfunktion verwendet werden. In einigen Ausführungsformen kann das Training beendet werden, wenn nach 100 Epochen keine Verbesserung der Kostenfunktion zu beobachten ist. In einigen dieser Ausführungsformen kann die anfängliche Lernrate auf 0,01 und die endgültige Lernrate auf 0,0001 festgelegt und schrittweise aktualisiert werden, wenn die Verbesserung der Kostenfunktion kleiner als ein Schwellenwert µ ist.
  • In einigen Ausführungsformen wird das Netz für die Video-Superauflösung mit einer Änderung der Eingabeschicht angepasst. Anstatt Einzelbilder unabhängig voneinander zu verarbeiten, werden aufeinanderfolgende Bilder gemeinsam verarbeitet, indem die aufeinanderfolgenden Mehrbilddaten so eingespeist werden, dass die Eingabe in einen dreidimensionalen Vektor von entsprechenden Feldern aus mehreren Bildern ausgedrückt oder umgewandelt werden kann, so dass die zeitlichen Änderungen zwischen aufeinanderfolgenden Bildern im Netz erfasst werden. In einer alternativen Ausführungsform kann eine feste zeitliche Abtastung verwendet werden, wenn die Videos unterschiedliche Frameraten haben, wobei optional die niedrigste Framerate ausgewählt wird, wenn das Netzwerk trainiert wird. Nach der Patchextraktion werden die Daten von versteckten Schichten durch das Netzwerk verarbeitet und führen zu einer Ausgabeschicht, die ein Einzelbild mit hoher Auflösung erzeugt, das der Netzwerkvorhersage des mittleren Bildes in den aufeinanderfolgenden Eingangsbildern entspricht. In einigen alternativen Ausführungsformen gibt es sowohl mehrere Eingangsbilder als auch mehrere Ausgangsbilder.
  • Bei der Videoverarbeitung können Blöcke von 3, 5 und 7 (oder mehr) aufeinanderfolgenden Videobildern verwendet werden, um das mittlere Bild oder die mittleren Bilder aufzulösen. Es ist zu beachten, dass eine höhere Anzahl von Bildern unpraktisch werden könnte, da jedes zusätzliche Bild einen immer geringeren Genauigkeitsgewinn bringt. Um die ersten und letzten Bilder von Videos zu behandeln, die nicht genügend benachbarte Bilder haben, um einen Block von aufeinanderfolgenden Bildern zu bilden, können das erste und das letzte Bild jeweils 1, 2 und 3 Mal wiederholt werden. Das Signalsignal-Rausch-Verhältnisses (PSNR) kann als Leistungsmaßstab für die Bewertung der verwendeten Modelle verwendet werden.
  • In den 4 und 6 wird nun eine Ausführungsform zur Rekonstruktion des mit dieser Technik kodierten Videos im Detail beschrieben.
  • Zunächst werden die Daten 130 aus dem Netz empfangen. Die empfangenen Daten 130 hängen davon ab, wie die Daten für die Übertragung in Schritt 120 (oder 210), wie oben beschrieben, vorbereitet wurden, und umfassen die Videodaten und ein oder mehrere Rekonstruktionsmodelle für diese Videodaten. Es ist möglich, dass die Videodaten und ein oder mehrere Rekonstruktionsmodelle nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die zur Dekodierung oder Rekonstruktion des Videos mit höherer Auflösung aus den über das Netz übertragenen Daten erforderlich sind.
  • In den Schritten 140 und 150 (und Schritt 220) werden die empfangenen Daten für die Rekonstruktion vorbereitet. Dieser Schritt umfasst im Allgemeinen die Trennung des niedrig aufgelösten Videos von den Rekonstruktionsmodellen (Schritt 220). Optional wird das niedrig aufgelöste Video mit dem für die Übertragung verwendeten Videocodec in Bilder mit voller Auflösung dekomprimiert (Schritt 230), und jedes der Bilder wird mit dem entsprechenden Rekonstruktionsmodell abgeglichen, das ebenfalls in der Reihenfolge der Bilder entpackt wird (Schritt 240).
  • In Schritt 160 (Schritt 250) wird das Rekonstruktionsmodell auf jedes der Einzelbilder angewandt, um Bilder mit höherer Auflösung auszugeben. Der Rekonstruktions- oder Dekodierungsprozess beinhaltet die Anwendung des optimierten neuronalen Faltungsnetzwerkmodells mit hoher Auflösung oder des Rekonstruktionsmodells für jede Szene, um das Video mit niedrigerer Auflösung in seiner ursprünglichen Auflösung wiederherzustellen, die im Wesentlichen dieselbe Qualität aufweist wie das ursprüngliche hochauflösende Video. Mit den entsprechenden Modellen für jedes Bild mit niedrigerer Auflösung können die ursprünglichen Bilder mit höherer Auflösung mit hoher Genauigkeit rekonstruiert werden.
  • In einer weiteren Ausführungsform kann zumindest ein Teil des in 3 beschriebenen Prozesses in einem „Cloud Computing“-System stattfinden. In dieser Ausführungsform werden die ursprünglichen Videodaten 70 an ein externes Computersystem übertragen, in dem einer oder mehrere der in dieser Beschreibung beschriebenen Prozesse ablaufen. Ein anderer Abschnitt der Videodaten kann parallel auf dem externen Computersystem verarbeitet werden. Die Höchstzahl der parallel verarbeiteten Videoabschnitte hängt von der Rechenkomplexität der Videoabschnitte und der Rechenleistung der Cloud-Server ab. Sobald die Cloud-basierte Verarbeitung abgeschlossen ist, können die Daten zurück an ein lokales Computersystem übertragen werden. Der Cloud-Dienst kann als Echtzeit-Relay-Server genutzt werden, der Videos mit geringerer Auflösung empfängt, deren Auflösung dann vor der erneuten Übertragung erhöht werden muss. Auf diese Weise können Daten von Orten mit eingeschränkter Bandbreite an Orte weitergeleitet werden, an denen keine derartigen Bandbreitenbeschränkungen herrschen.
  • In einer weiteren Ausführungsform findet der Trainingsprozess für die beispielbasierten Modelle ausschließlich für die Rekonstruktion der hochfrequenten Komponenten des höher aufgelösten Videoabschnitts statt. Die Ergebnisse können dann als Residuum zu einem mit bikubischer Interpolation rekonstruierten Videoausschnitt hinzugefügt werden.
  • In einer weiteren Ausführungsform wird die Architektur der bei der Rekonstruktion verwendeten neuronalen Faltungsnetzwerke so geändert, dass die Hochskalierung, d. h. die physikalische Änderung der Pixelzahl, in der mittleren oder letzten Schicht des Netzes durch eine Entfaltungsfunktion erfolgt. Die erste Schicht des Netzes wird so beschrieben, dass sie Merkmale mit niedriger Auflösung erhält, während die Merkmale mit hoher Auflösung erst in der letzten Schicht erlernt werden. Es ist nicht notwendig, die niedrig auflösenden Merkmale in einem hoch auflösenden Raum zu lernen. Indem die Auflösung für die ersten paar Faltungsschichten niedrig gehalten wird, kann die Anzahl der erforderlichen Operationen reduziert werden. Die Rechenleistung hängt dann eher von der Auflösung der Eingabe als von der Auflösung der Ausgabe ab. Alternativ können die Netzschichten so umorganisiert werden, dass die Ausgabe der Subpixel-Faltungsschicht des neuronalen Faltungsnetzwerkes (die je nach Ausführungsform die letzte Schicht oder eine vorhergehende Schicht sein kann) das Quadrat der Anzahl der Pixel des Hochskalierungsfaktors (z. B. r2) statt der Anzahl der Pixel des Hochskalierungsfaktors (z. B. r) vorhersagt. Die anderen Pixel stellen die Nachbarpixel des ursprünglichen Eingabepixels in niedriger Auflösung dar. Alle 4 Pixel müssen dann umgestaltet und neu angeordnet werden, um das hochauflösende Bild zu erzeugen. Mit diesem Ansatz lässt sich eine höhere Videoverarbeitungsgeschwindigkeit bei gleichbleibend hoher Qualität der Ausgabe erzielen. Die Anzahl der erforderlichen Faltungen wird dadurch verringert. Diese Ausführungsform kann in Verbindung mit jeder anderen Ausführungsform verwendet werden.
  • In einigen und anderen Ausführungsformen kann ein neuronales Netz eine mehrstufige Hochskalierung (oder eine andere Funktion) haben, bei der eine frühere Schicht hochskaliert und dann eine spätere Schicht hochskaliert, z. B. eine mittlere Schicht, die um 2x hochskaliert und dann die letzte Schicht, die um 2x hochskaliert. Diese Art von „verkettetem“ Ansatz kann es ermöglichen, neuronale Netze in einem langen Netz (oder einer „Kette“) von Funktionsschichten zu trainieren, z. B. mit einer Reihe von Hochskalierungsfaktoren (z. B. 2x, 3x und 4x) mit mehreren Hochskalierungsschichten und Ausgangsschichten. Eine oder mehrere dieser Schichten können Subpixel-Faltungsschichten der beschriebenen Ausführungsformen sein.
  • Die Komplexität des Rekonstruktionsprozesses ist viel einfacher als die des Trainings des Modells. Der Prozess ist einer einzelnen Iteration des Trainingsprozesses sehr ähnlich, allerdings ist keine Optimierung erforderlich, sondern es wird einfach das gelernte Modell des neuronalen Faltungsnetzwerks angewendet, um das Bild Patch für Patch zu rekonstruieren. Die Größe eines einzelnen Patches kann je nach den Auflösungsanforderungen des ausgegebenen Videoabschnitts variieren. Die Patch-Größe wird offline über Hyperparameter-Optimierungen beim Training der Modelle bestimmt. Im Allgemeinen verringert eine größere Patch-Größe die Rechenanforderungen für die Verarbeitung eines Videoausschnitts und reduziert auch die für die Übertragung des Videoausschnitts erforderliche Bandbreite. Wenn die Bandbreite besonders begrenzt ist, die Verarbeitungsleistung eines Endgeräts gering ist oder ein Benutzer bereit ist, einen Videoabschnitt mit geringerer Qualität zu akzeptieren, kann die Patch-Größe erhöht werden, um eine Videoübertragung unter einer oder mehreren dieser Bedingungen zu ermöglichen. Die Qualität der Rekonstruktion wird beeinträchtigt, aber die erforderliche Verarbeitungsleistung auf dem Endgerät des Nutzers wird erheblich reduziert.
  • Auf jede Szene wird ein einzelnes Modell angewendet, das als Begleitdaten im Videocontainer vor der Szene, in der es verwendet wird, gesendet werden kann. Das jeder Szene zugeordnete Modell kann entweder in einem Datenstrom indiziert werden, der mit dem Video- und Audiostrom synchronisiert ist, oder in einer Frame-to-Model-Look-up-Tabelle indiziert werden, die vor dem Videostrom gesendet werden kann.
  • In Schritt 170 wird jedes der Videosegmente vom Rekonstruktionsprozess als höher aufgelöste Einzelbilder mit der gleichen Auflösung wie das ursprüngliche Video 70 ausgegeben. Die Qualität des Ausgangsvideos 180 ähnelt im Wesentlichen der des Originalvideos 70, innerhalb der Fehlergrenzen, die optional von dem maschinellen Lernprozess angewendet werden, der das Rekonstruktionsmodell in Schritt 110 (oder Schritt 200) des Codierungsprozesses entwickelt.
  • In Schritt 180 werden die Videosegmente so kombiniert, dass das Video angezeigt werden kann. Optional kann das Video in Schritt 170 oder 180 mit dem ursprünglichen Codec, der für das ursprüngliche Video 70 verwendet wurde, oder mit einem vorbestimmten optimalen Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • Die Verwendung der letzten Schicht zur Durchführung der Superauflösung kann zur Hochskalierung von Bildern und/oder Videos mit niedriger Auflösung verwendet werden, ohne dass der ursprüngliche hochauflösende Inhalt bekannt ist, oder wenn es keinen höher auflösenden Inhalt für die Bilder und/oder Videos mit niedriger Auflösung gibt. Darüber hinaus kann der räumlich-zeitliche Ansatz zur Hochskalierung von Bildern und/oder Videos mit niedriger Auflösung verwendet werden, ohne dass der ursprüngliche hochauflösende Inhalt bekannt ist, oder wenn es keinen höher auflösenden Inhalt für die Bilder und/oder Videos mit niedriger Auflösung gibt. Darüber hinaus können sowohl die Verwendung der letzten Schicht zur Durchführung der Superauflösung als auch die Verwendung des räumlich-zeitlichen Ansatzes in Kombination verwendet werden, um eine Hochskalierung für Bilder und/oder Videos mit niedriger Auflösung durchzuführen, ohne dass der ursprüngliche hochauflösende Inhalt bekannt ist, oder wenn es keinen höher auflösenden Inhalt für die Bilder und/oder Videos mit niedriger Auflösung gibt. Insbesondere können einige Ausführungsformen ein oder mehrere generische, auf Beispielen basierende Modelle verwenden, die beispielsweise aus einer Bibliothek generischer, auf Beispielen basierender Modelle ausgewählt werden, und beispielsweise einige Kriterien bei der Auswahl solcher auf Beispielen basierender Modelle anwenden, die entweder auf Beispielen basierende Modelle mit einer abschließenden Schicht verwenden, die eine Superauflösung durchführt, und/oder einen räumlich-zeitlichen Ansatz in der Eingabeschicht des auf Beispielen basierenden Modells verwenden.
  • Entwicklung/Auswahl von Echtzeitmodellen
  • Unter Bezugnahme auf 27 wird nun eine Ausführungsform, bei der die Technik zur Codierung visueller Daten verwendet wird, im Detail beschrieben. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • Die Original-Videodaten 2740 können mit Hilfe einer Kamera 2735 in das Verfahren oder System der vorliegenden Ausführungsform eingespeist werden und umfassen in der Regel ein hochauflösendes Video, beispielsweise mit einer Auflösung von 1920 mal 1080 Pixeln (auch als „1080p“-Video bezeichnet) oder 3840 mal 2160 Pixeln (auch als „4K“-Video bezeichnet). Diese Videodaten können in einer Vielzahl bekannter Videocodecs kodiert sein, wie z. B. H.264 oder VP8, es kann sich aber auch um beliebige Videodaten handeln, die das System oder das Verfahren je nach Ausführungsform in die Einzelbilder des Videos dekodieren kann.
  • In einigen Ausführungsformen werden die ursprünglichen Videodaten 2740 dann in Schritt 150 in Einzelbilder mit voller Auflösung zerlegt, d. h. in eine Folge von Bildern mit der vollen Auflösung der ursprünglichen Videodaten 140. In einigen dieser Ausführungsformen beinhaltet dies bei einigen Videocodecs eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da beispielsweise bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • In einigen Ausführungsformen kann die Modellauswahl oder zumindest die anfängliche Modellauswahl auf der Grundlage der unkomprimierten Videodaten durchgeführt werden.
  • Optional können in Schritt 2750 in einigen Ausführungsformen die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was als „Szenenauswahl“ bezeichnet wird. Die Videodaten werden in Szenen aufgeteilt oder geclustert, um eine spezifischere Optimierung zu ermöglichen. Mit Szene ist eine aufeinander folgende Gruppe oder Abfolge von Bildern gemeint, die einen Abschnitt des Videos umfasst, der auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelnes Bild sein kann. In einigen Ausführungsformen können die Szenen entsprechend der Reihenfolge, in der sie gefilmt wurden, oder in einer Sequenz angeordnet werden, um eine geeignete Dekodierung einer beliebigen Gruppe von Bildern zu ermöglichen (da Szenen in der Regel zusammenhängende visuelle Inhalte enthalten und eine geeignete Anordnung beispielsweise eine effiziente Kompression ermöglicht).
  • In einigen Ausführungsformen kann unabhängig davon, ob das Video in Schritt 150 in Bilder oder Szenen (d. h. Gruppen von mehreren Bildern) unterteilt wurde oder ob es als eine Folge von Bildern aus Schritt 140 verbleibt, jedes Bild in Bilder mit niedrigerer Auflösung mit einer angemessen niedrigen Auflösung unterteilt werden. Optional kann dieser Schritt in einigen Ausführungsformen erfolgen, bevor die Bilder in Schritt 150 zu Szenen gruppiert werden. In einigen Ausführungsformen beträgt das Bild mit niedrigerer Auflösung optional 33 % bis 50 % der Datengröße im Verhältnis zur Datengröße des Bildes mit der ursprünglichen Auflösung, kann aber eine beliebige Auflösung sein, die niedriger ist als die ursprüngliche Auflösung des Videos. In anderen Ausführungsformen kann die Qualität durch Quantisierung und/oder Komprimierung reduziert werden, anstatt die Auflösung der visuellen Daten zu reduzieren oder zusätzlich zur Reduzierung der Auflösung der visuellen Daten.
  • In Schritt 2755 wird in einigen Ausführungsformen eine Szene ausgewählt. In dieser Ausführungsform, die für die Echtzeitcodierung verwendet wird, kann diese Szene zunächst das chronologisch erste Bild sein, das von der Kamera 2735 aufgezeichnet wurde, oder das erste Bild, das in der ursprünglichen Videodatei 2740 erscheint. Nach diesem Bild kann ein zweites Bild ausgewählt werden, das aufgezeichnet werden soll, oder ein zweites Bild, das in der ursprünglichen Videodatei 2740 erscheint. Danach würde ein drittes Bild erscheinen usw., bis die Übertragung abgeschlossen ist.
  • Ein erstes beispielbasiertes Modell wird aus einer Bibliothek von beispielbasierten Modellen entnommen und zur Verwendung bei der Rekonstruktion von Daten in Schritt 2760 analysiert. Ein zweites beispielbasiertes Modell kann parallel in Schritt 2770 entnommen und analysiert werden, ebenso wie ein drittes beispielbasiertes Modell, wie in Schritt 180 gezeigt. Es gibt keine feste Obergrenze für die Variable n, wobei die Variable n die Anzahl der beispielbasierten Modelle ist, die parallel analysiert werden können, wobei n mindestens zwei ist.
  • In Schritt 2795 wird das genaueste beispielbasierte Modell ausgewählt, das für die Rekonstruktion der Daten verwendet werden soll. Das genaueste beispielbasierte Modell kann als ein beispielbasiertes Modell definiert werden, das die höchste Rekonstruktionsqualität ergibt, wobei die Qualität definiert werden kann durch: eine Fehlerrate, ein Spitzensignal-Rausch-Verhältnis oder einen strukturellen Ähnlichkeitsindex im Vergleich zur ursprünglichen Videodatei 2740.
  • In Schritt 210 werden die Szene mit geringerer Auflösung und das auf einem Beispiel basierende Modell für die Rekonstruktion dieser Szene zur Übertragung über ein Netzwerk ausgegeben. Optional kann anstelle des eigentlichen Modells auch ein Verweis auf das Modell übertragen werden. Dies erfordert eine synchronisierte oder abgestimmte Bibliothek sowohl am Sende- als auch am Empfangsknoten des Prozesses, so dass der Verweis von der Bibliothek am Sendeknoten verwendet werden kann und das Modell anhand des Verweises auf dasselbe Modell in der Bibliothek am Empfangsknoten wie in der Bibliothek am Sendeknoten identifiziert werden kann.
  • Optional können das Video und das Modell (oder die Modellreferenz) zusammen in einem geeigneten Datencontainerformat wie einem Matroska Multimedia Container (auch bekannt als MKV-Container) gespeichert werden. Alternativ können das Video und das Modell mit anderen Abschnitten oder dem gesamten Video kombiniert und in einem geeigneten Datencontainerformat abgelegt werden. In Schritt 210 können die niedrig aufgelösten Videobilder entweder mit dem ursprünglichen Videocodec, der auf die ursprünglichen Videodaten 2740 angewendet wurde, neu codiert werden, oder es kann alternativ ein optimalerer Videocodec auf die Videodaten angewendet werden, um eine kleinere Ausgabedatei zu erzeugen. Wurde eine Szenenerkennung oder Zeitstempelung durchgeführt, können die für die Übertragung ausgegebenen Daten entweder eine Liste von Szenen bzw. Zeitstempeldaten enthalten, oder diese Daten können im Datencontainer gespeichert werden.
  • Es kann eine Reihe von Variationen des oben beschriebenen Kodierungsbildes geben. Bei der oben beschriebenen Technik kann davon ausgegangen werden, dass es eine Eins-zu-Eins-Zuordnung zwischen Szene und beispielbasiertem Modell gibt, was jedoch nicht unbedingt der Fall sein muss, da jede Szene von mehr als einem beispielbasierten Modell begleitet werden könnte.
  • In 5 wird nun eine Ausführungsform zur Rekonstruktion des mit dieser Technik kodierten Videos im Detail beschrieben.
  • Zunächst werden die übertragenen Daten 210 aus dem Netz empfangen. Die empfangenen Daten 210 hängen davon ab, wie die Daten für die Übertragung in Schritt 2750, wie oben beschrieben, vorbereitet wurden, und umfassen die Videodaten und ein oder mehrere Rekonstruktionsmodelle für diese Videodaten. Es ist möglich, dass die Videodaten und ein oder mehrere Rekonstruktionsmodelle nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die erforderlich sind, um das Video mit höherer Auflösung aus den über das Netzwerk übertragenen Daten zu dekodieren oder zu rekonstruieren.
  • In Schritt 220 werden die übertragenen Daten für die Rekonstruktion vorbereitet. Dieser Schritt umfasst das Trennen des niedrig aufgelösten Videos von dem einen oder den mehreren beispielbasierten Modellen. Optional wird das niedrig aufgelöste Video mit dem für die Übertragung verwendeten Videocodec in Bilder mit voller Auflösung dekomprimiert, und jedes der Bilder wird mit dem entsprechenden Rekonstruktionsmodell abgeglichen, das ebenfalls in der Reihenfolge der Bilder entpackt wird.
  • In Schritt 250 wird das Rekonstruktionsmodell auf jede der Szenen angewendet, um Szenen mit höherer Auflösung auszugeben. Der Rekonstruktions- oder Dekodierungsprozess beinhaltet die Anwendung des optimierten neuronalen Faltungsnetzwerkmodells mit hoher Auflösung oder des Rekonstruktionsmodells für jede Szene, um das Video mit niedrigerer Auflösung in seiner ursprünglichen Auflösung wiederherzustellen, die im Wesentlichen dieselbe Qualität aufweist wie das ursprüngliche hochauflösende Video. Mit den entsprechenden Modellen für jede Szene mit niedrigerer Auflösung können die ursprünglichen Szenen mit höherer Auflösung mit hoher Genauigkeit rekonstruiert werden, wobei die Genauigkeit wie oben definiert ist.
  • Diese Ausführungsform der Erfindung erfordert keine Optimierung und umfasst die Anwendung eines zuvor erlernten beispielbasierten Modells, um eine Szene zu rekonstruieren, und beinhaltet nicht notwendigerweise eine Anpassung oder Änderung der vorhandenen beispielbasierten Modelle in der Bibliothek. Das eine oder die mehreren beispielbasierten Modelle, die jeder Szene zugeordnet sind, können in einem Datenstrom indiziert werden, der mit dem Video- und Audiostrom synchronisiert ist, oder in einer Frame-to-model-Nachschlagetabelle indiziert werden, die vor dem Videostrom gesendet werden kann.
  • Die Bildrekonstruktion hat eine lineare Rechenkomplexität, die von der Gesamtzahl der Pixel eines jeden Bildes abhängt, da sie eine Reihe von Faltungsfunktionen (in der Regel weniger als 3) erfordert, die für jedes relevante Bildpatch um jedes Pixel herum angewendet werden müssen. Der grundlegende Rekonstruktionsschritt für jedes Bild kann mit oder ohne Modifikation in einigen Ausführungsformen aus dem Ansatz verwendet werden, der in dem Artikel „Learning a Deep Convolutional Network for Image Superauflösung“ von Chao Dong, Chen Change Loy, Kaiming He und Xiaoou Tang, veröffentlicht in D. Fleet et al. (Eds.): ECCV 2014, Part IV, LNCS 8692, pp. 184-199, 2014, beschrieben ist, jedoch können diese Funktionen parallel auf mehrere Bilder angewendet werden und es ist möglich, eine Echtzeit-Rekonstruktion für die Videowiedergabe durchzuführen.
  • In Schritt 250 wird jedes der Videosegmente aus dem Rekonstruktionsprozess als Bilder mit höherer Auflösung und im Wesentlichen mit der gleichen Auflösung wie das ursprüngliche Video 2440 ausgegeben.
  • Im weiteren Verlauf von Schritt 250 werden die Videosegmente so kombiniert, dass das Video angezeigt werden kann. Optional kann das Video mit dem ursprünglichen Codec, der für das ursprüngliche Video 2740 verwendet wurde, oder mit einem vorbestimmten, optimaleren Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • In einer weiteren Ausführungsform kann zumindest ein Teil des in 27 beschriebenen Prozesses innerhalb eines „Cloud-Computing“-Systems stattfinden. In dieser Ausführungsform wird die ursprüngliche Videodatei 2740 an ein ausgelagertes Rechensystem, vorzugsweise ein skalierbares Rechensystem, übertragen, wo die erste Szene 2750 vorbereitet wird. Wie zuvor kann dann eine Vielzahl von beispielbasierten Modellen 2760, 2770, 2780, 2790 auf ihre Verwendung bei der Rekonstruktion der Daten hin analysiert werden, bevor ein genauestes Modell 2795 ausgewählt und ein übertragenes Paket 210 vorbereitet wird. Das übertragene Paket 210 wird dann vom Cloud-Server an einen lokalen Server gesendet, wo der Rekonstruktionsprozess 220, 230, 240, 250 stattfinden kann. Während die erste Szene auf diese Weise verarbeitet wird, kann ein zweiter Videoausschnitt parallel auf dem externen Computersystem verarbeitet werden. Die Grenze für die Anzahl der parallel verarbeiteten Videoabschnitte hängt von der Rechenkomplexität der Videoabschnitte und der Rechenleistung der Cloud-Server ab. Der Cloud-Dienst kann als Echtzeit-Relay-Server eingesetzt werden, der Videos mit geringerer Auflösung empfängt, deren Auflösung dann vor der erneuten Übertragung erhöht werden muss. Auf diese Weise können Daten von Orten mit eingeschränkter Bandbreite an Orte weitergeleitet werden, an denen keine derartigen Bandbreitenbeschränkungen herrschen.
  • In einer weiteren Ausführungsform werden ein oder mehrere Videoabschnitte über das oben beschriebene Verfahren vor einer Live-Aufnahme übertragen. Auf Beispielen basierende Modelle, die wahrscheinlich nützlich sind, können daher identifiziert werden, bevor sie benötigt werden, und die Bibliothek von Modellen, aus der sie ausgewählt werden, kann auf diejenigen reduziert werden, die wahrscheinlich verwendet werden. Das Auswahlverfahren 2795 kann daher schneller oder mit geringerem Rechenaufwand durchgeführt werden, da weniger Modelle zur Auswahl stehen und somit die Zeitspanne zwischen der Aufzeichnung eines Ereignisses und der Anzeige der Rekonstruktion mit höherer Auflösung im Vergleich zum Vergleich der Leistung aller Modelle in der Modellbibliothek verringert werden kann.
  • Modellbibliotheken
  • In 25 wird nun eine Ausführungsform, die eine andere Technik zur Kodierung visueller Daten verwendet, im Detail beschrieben. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • Die Original-Videodaten 2510 werden dem Verfahren oder System unter Verwendung der Technik zugeführt und sind ein hochauflösendes Video, zum Beispiel mit einer Auflösung von 1920 mal 1080 Pixeln (auch als „1080p“-Video bekannt) oder 3840 mal 2160 Pixeln (auch als „4K“-Video bekannt). Diese Videodaten können in einer Vielzahl von bekannten Videocodecs wie H.264, VP8 oder VP9 kodiert sein, aber es kann sich auch um beliebige Videodaten handeln, die das System oder Verfahren in die Einzelbilder des Videos dekodieren kann.
  • Die ursprünglichen Videodaten 2510 werden dann in Schritt 2520 in Einzelbilder mit voller Auflösung zerlegt, d. h. in eine Folge von Bildern mit der vollen Auflösung der ursprünglichen Videodaten 2510. Bei einigen Videocodecs bedeutet dies eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z. B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können in Schritt 2520 die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was auch als „Szenenauswahl“ bezeichnet wird. Die Videodaten werden in Szenen aufgeteilt oder geclustert, um ein spezifischeres Training und eine Optimierung zu ermöglichen. Mit Szene ist eine aufeinander folgende Gruppe oder Abfolge von Bildern gemeint, die auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelnes Bild sein kann.
  • Unabhängig davon, ob das Video in Bilder oder Szenen (d. h. Gruppen von mehreren Bildern) unterteilt wurde oder als eine Folge von Bildern verbleibt, wird jedes Bild in Bilder mit einer niedrigeren Auflösung für die Übertragung über ein Netz, z. B. das Internet, unterteilt. Optional kann dieser Schritt erfolgen, bevor die Bilder in Schritt 2520 zu Szenen gruppiert werden. Das Bild mit der niedrigeren Auflösung beträgt optional 25 % bis 50 % oder 10 % bis 50 % der Datengröße im Verhältnis zur Datengröße des Bildes mit der ursprünglichen Auflösung, aber die niedrigere Auflösung kann eine beliebige Auflösung sein, die niedriger ist als die ursprüngliche Auflösung des Videos. Dies führt dazu, dass das gesamte Video mit niedrigerer Auflösung kleiner ist als das Video mit der ursprünglichen Auflösung.
  • Ein Analyseschritt 2530 wird an den Bildern des downsampled Videos durchgeführt, um ein Rekonstruktionsmodell aus einer Bibliothek zu finden, das zur Erhöhung der Auflösung der Szene und zur Verbesserung der Videoqualität verwendet werden kann. Ein Modell wird auf der Grundlage einer oder mehrerer Metriken der ausgewählten Szene ausgewählt, die mit Metriken verglichen werden können, die mit den in der Bibliothek gespeicherten Rekonstruktionsmodellen verknüpft sind, und es wird ein Bildverbesserungsverfahren für die downsampled Szene durchgeführt. Die Qualität der verbesserten Szene wird mit dem Original unter Verwendung objektiver Metriken wie Fehlerrate, PSNR und SSIM und/oder subjektiver Maße verglichen. In Schritt 240 wird dann auf der Grundlage dieser Qualitätsvergleiche ein geeignetes Modell ausgewählt. Die Bibliothek, aus der die Modelle ausgewählt werden, umfasst eine Reihe von vortrainierten Modellen, die aus Beispiel- oder Trainingsvideos generiert wurden und denen Metriken zugeordnet sind, die einen Vergleich des Videos, aus dem die Modelle generiert wurden, mit der ausgewählten, zu verbessernden Szene ermöglichen. Die Bibliothek, aus der das Modell ausgewählt wird, kann an einem oder mehreren bestimmten Knoten im Netzwerk gespeichert werden oder über zwei oder mehrere Knoten verteilt sein.
  • Durch die Anwendung eines Deep-Learning-Ansatzes bei der Erstellung der Modelle kann ein nichtlineares hierarchisches Modell ausgewählt werden, um ein höher aufgelöstes Bild aus einem niedriger aufgelösten Bild zu rekonstruieren.
  • Die nichtlinearen Modelle sind bei der Rekonstruktion von Bildern mit höherer Auflösung genauer als wörterbuchbasierte Ansätze. Bei den ausgewählten nichtlinearen Modellen handelt es sich um kleine neuronale Faltungsnetzwerke und nicht um überkomplette Wörterbücher. Im Gegensatz zu dem Ansatz der lokalen Mittelwertbildung, der bei der Rekonstruktion mit Hilfe von Wörterbüchern verwendet wird, ermöglicht die Verwendung eines neuronalen Faltungsnetzwerkmodells auch die Auswahl eines geeigneteren Filters für die endgültige Rekonstruktion, bei dem benachbarte Bereiche berücksichtigt werden, was eine unbeabsichtigte Glättung des rekonstruierten Bildes mit höherer Auflösung vermeiden kann.
  • In Schritt 2550 werden der Teil des niedrig aufgelösten Videos und eine Bibliotheksreferenz für das Rekonstruktionsmodell für diesen Teil des Videos zur Übertragung ausgegeben. Optional können das Video und die Bibliotheksreferenz zusammen in einem geeigneten Datencontainerformat wie einem Matroska-Multimedia-Container (auch bekannt als MKV-Container) gespeichert werden. Alternativ können das Video und die Bibliotheksreferenz mit anderen Abschnitten oder dem gesamten Video kombiniert und in einem geeigneten Datencontainerformat abgelegt werden. In Schritt 2550 können die niedrig aufgelösten Videobilder entweder mit dem ursprünglichen Videocodec, der auf die ursprünglichen Videodaten 2510 angewendet wurde, neu codiert werden, oder es kann alternativ ein optimalerer Videocodec auf die Videodaten angewendet werden, um Ausgangsvideodaten zu erzeugen. Wurde eine Szenenerkennung oder Zeitstempelung durchgeführt, können die für die Übertragung ausgegebenen Daten entweder eine Liste von Szenen oder Zeitstempeldaten enthalten, oder diese Daten können im Datencontainer gespeichert werden. Optional kann auch eine Liste (oder ein Datenstrom) von Modellreferenzen enthalten sein, die mit den ausgegebenen Videobildern mit niedriger Auflösung synchronisiert sind. Alternativ kann das Übertragungspaket eine Liste von Verweisen auf Bibliotheksinhalte/Modelle/Parameter für jedes Bild enthalten, die entweder nach der Reihenfolge der Wiedergabe oder der Dekodierung von Bildern geordnet ist und mit den Videobildern synchronisiert werden kann. Eine weitere Alternative ist, dass das Übertragungspaket eine Liste von Szenenübergängen (in bestimmten Bildintervallen) und dann eine Liste von Verweisen auf Bibliotheksinhalte/Modelle/Parameter für eine entsprechende Anzahl von Szenen oder Übergängen enthalten kann.
  • In 26 wird nun eine Ausführungsform zur Rekonstruktion des mit dieser Technik kodierten Videos im Detail beschrieben.
  • Zunächst werden die Daten 2610 aus dem Netz empfangen. Die empfangenen Daten 2610 hängen davon ab, wie die Daten für die Übertragung in Schritt 2550 (siehe oben) vorbereitet wurden, und umfassen die Videodaten und eine oder mehrere Bibliotheksreferenzen für Rekonstruktionsmodelle für diese Videodaten. Es ist möglich, dass die Videodaten und eine oder mehrere Bibliotheksreferenzen nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die zur Dekodierung oder Rekonstruktion des Videos mit höherer Auflösung aus den über das Netzwerk übertragenen Daten erforderlich sind.
  • In den Schritten 2620 und 2630 werden die empfangenen Daten für die Rekonstruktion vorbereitet. Diese Schritte umfassen im Allgemeinen die Trennung des niedrig aufgelösten Videos von den Bibliotheksverweisen auf Rekonstruktionsmodelle. Optional wird das niedrig aufgelöste Video mit Hilfe des für die Übertragung verwendeten Videocodecs in Bilder mit voller Auflösung dekomprimiert, und jedes der Bilder wird mit dem entsprechenden Bibliotheksverweis auf ein Rekonstruktionsmodell abgeglichen, das ebenfalls in der Reihenfolge der einzelnen Bilder entpackt wird.
  • In Schritt 2630 wird das Rekonstruktionsmodell, das der Bibliotheksreferenz entspricht, aus einer gespeicherten Bibliothek von Rekonstruktionsmodellen entnommen und in Schritt 2640 auf jedes der Bilder angewandt, um Bilder mit höherer Auflösung auszugeben. Der Rekonstruktions- oder Dekodierungsprozess beinhaltet die Anwendung des Rekonstruktionsmodells für jede Szene, um das Video mit niedrigerer Auflösung in seiner ursprünglichen Auflösung wiederherzustellen, die im Wesentlichen dieselbe Qualität aufweist wie das ursprüngliche hochauflösende Video. Anhand der entsprechenden Modelle für jedes Bild mit niedrigerer Auflösung können die ursprünglichen Bilder mit höherer Auflösung mit hoher Genauigkeit rekonstruiert werden.
  • Die Komplexität des Rekonstruktionsprozesses ist weitaus einfacher als die des Trainings des Modells. Der Prozess, der als Feed-Forward-Prozess oder Pass für neuronale Netze bekannt ist, ist einer einzelnen Iteration des Trainingsprozesses sehr ähnlich, jedoch ist keine Optimierung erforderlich, sondern es wird einfach das ausgewählte Faltungsmodell des neuronalen Netzes angewendet, um das Bild Patch für Patch zu rekonstruieren. Im Vergleich dazu kann das Training neuronaler Netze je nach Ausführungsform auch einen Back-Propagation-Prozess oder einen Durchlauf beinhalten. Ein einzelnes Modell wird auf jede Szene angewandt, und der Bibliotheksverweis auf dieses Modell kann als Begleitdaten im Videocontainer vor der Szene, in der es verwendet wird, gesendet werden. Die jeder Szene zugeordnete Bibliotheksreferenz kann entweder in einem Datenstrom indiziert werden, der mit dem Video- und Audiostrom synchronisiert ist, oder in einer Frame-to-Model-Look-up-Tabelle indiziert werden, die vor dem Videostrom gesendet werden kann.
  • In Schritt 2650 wird jedes der Videosegmente vom Rekonstruktionsprozess als höher aufgelöste Einzelbilder mit der gleichen Auflösung wie das ursprüngliche Video 210 ausgegeben. Die Qualität des ausgegebenen Videos ähnelt im Wesentlichen der des Originalvideos 210, innerhalb der Fehlergrenzen, die optional durch den maschinellen Lernprozess angewendet werden, der das Rekonstruktionsmodell in Schritt 2650 des Codierungsprozesses auswählt.
  • In Schritt 2650 werden die Videosegmente so kombiniert, dass das Video angezeigt werden kann. Optional kann das Video in Schritt 2650 mit dem ursprünglichen Codec, der für das ursprüngliche Video 2510 verwendet wurde, oder mit einem vorbestimmten optimalen Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • Hochskalierung und visuelle Datenverbesserunq
  • Superauflösungsansätze werden in der Regel in lern- oder beispielbasierte Ansätze und interpolationsbasierte (Mehrbild-)Ansätze unterteilt. Einige Ausführungsformen befassen sich nur mit lern- oder beispielbasierten Ansätzen zur Superauflösung. Insbesondere können diese Ausführungsformen mit den meisten oder allen lern- oder beispielbasierten Verfahren arbeiten, wobei es je nach den gewählten Parametern für die Verfahren eine Reihe unterschiedlicher Hochskalierungsergebnisse geben kann.
  • In einigen Ausführungsformen können Superauflösungstechniken Darstellungen ausgeben, die zur Verbesserung von Bildern mit höherer Auflösung verwendet werden können, die aus Bildern mit niedrigerer Auflösung erstellt wurden. Um die Effektivität dieser Darstellungen zu verbessern, werden in einigen Ausführungsformen lern- oder beispielbasierte Ansätze mit maschinellem Lernen kombiniert. Bei der Verwendung von Wörterbuchrepräsentationen für Bilder wird diese Kombination im Allgemeinen als Wörterbuchlernen bezeichnet. Wenn in einer bestehenden Bibliothek von Darstellungen keine ausreichenden Darstellungen vorhanden sind (oder keine Bibliothek vorhanden ist), werden beim Wörterbuchlernen Techniken des maschinellen Lernens eingesetzt, um Wörterbuchatome so anzupassen, dass sie sich den Bildmerkmalen anpassen können und genauere Darstellungen erhalten.
  • Es wird darauf hingewiesen, dass die Atome nicht lokal innerhalb des Wörterbuchs ausgewählt werden, sondern als die Linearkombination, die das Signalpatch für eine maximal zulässige Anzahl von Atomen und unabhängig von ihrer Position innerhalb des Wörterbuchs am besten annähert. Ohne die Einschränkung, dass die Atome orthogonal zueinander sein müssen, können größere Wörterbücher als der Signalraum, den das Wörterbuch darstellen soll, erstellt werden.
  • In einigen Ausführungsformen können für die Hochskalierung Rekonstruktionsmodelle mit Wörterbuchlernen oder Rekonstruktionsmodelle mit neuronalen Faltungsnetzwerken oder eine Mischung aus diesen beiden Techniken verwendet werden. In einigen Ausführungsformen wird eine Bibliothek von Rekonstruktionsmodellen gespeichert, die aus Beispiel- oder Trainingsvideodaten generiert werden können, wobei sowohl das Originalvideo als auch das Video mit reduzierter Auflösung verglichen werden können. Zusammen mit den Rekonstruktionsmodellen müssen in einigen Ausführungsformen Daten in Bezug auf das Beispiel- oder Trainingsvideo für jedes Rekonstruktionsmodell in der Bibliothek gespeichert werden, damit jedes Modell an eine Szene angepasst werden kann, die hochskaliert wird. In diesen Ausführungsformen können die gespeicherten Daten in Bezug auf das Beispiel- oder Trainingsvideo Metadaten oder Metriken sein, die sich auf die Videodaten beziehen, oder es können Muster oder Merkmale des Beispiel- oder Trainingsvideos sein.
  • Unter Bezugnahme auf 15 werden nun Ausführungsformen beschrieben, die eine Technik 1500 zur Erhöhung der Auflösung visueller Daten verwenden. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • In diesen Ausführungsformen werden die empfangenen Videodaten 1540 in ein Decodersystem eingespeist und sind ein Video mit niedrigerer Auflösung, das in einem Standard-Videoformat codiert ist. Bei diesem Videoformat kann es sich je nach Ausführungsform um eine Vielzahl bekannter Videocodecs handeln, in Ausführungsformen um Codecs wie H.264 oder VP8 oder um beliebige visuelle Daten, die das System in einzelne Abschnitte decodieren kann.
  • In einigen Ausführungsformen zerlegt das System dann in Schritt 1520 die Videodaten 1510 in Einzelbilder, d. h. in eine Folge von Bildern mit der vollen Auflösung der empfangenen Videodaten 310. Bei einigen Videocodecs erfordert dies je nach Ausführungsform eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z. B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können, wie in 16 dargestellt, die in Schritt 1520 aus dem Video 1510 extrahierten Bilder in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was in Schritt 1610 als „Szenenauswahl“ bezeichnet wird. In diesen Ausführungsformen beinhaltet Schritt 1610 die Identifizierung von aufeinanderfolgenden Szenen, sobald diese erkannt wurden. In einigen dieser Ausführungsformen können die erkannten Szenen es ermöglichen, ein oder mehrere genauere Rekonstruktionsmodelle aus der Bibliothek der Rekonstruktionsmodelle auszuwählen, die für die Szene oder die Einzelbilder innerhalb der Szene in Schritt 1620 geeignet sind, was eine modifizierte Version von Schritt 1530 im Verfahren 1500 ist, bei dem das am besten geeignete Modell auf einer Einzelbildbasis ausgewählt wird. Mit Szene ist je nach Ausführungsform eine aufeinanderfolgende Gruppe oder Sequenz von Bildern gemeint, die auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelner Abschnitt eines Bildes sein kann.
  • Alternativ und um eine Verzögerung zwischen dem Eintreffen des Videos mit niedrigerer Auflösung 1510 und der Erzeugung eines Ausgangsvideos mit höherer Auflösung 370 zu verringern, kann in einigen Ausführungsformen die grundlegende Szenenauswahl in Schritt 1610 durch die Gruppierung von Bildern zu Szenen in chronologischer Reihenfolge erfolgen, z. B. durch das Anbringen von Zeitstempeln und das Sammeln eines vorgegebenen Bereichs von Zeitstempeln. In diesen Ausführungsformen kann zunächst das erste Bild oder der erste Bildabschnitt analysiert und eine Metrik erstellt werden, um in Schritt 1620 auf die Bibliothek der Rekonstruktionsmodelle verweisen zu können. Wenn in solchen Ausführungsformen ein nachfolgendes Bild oder ein Abschnitt eines nachfolgenden Bildes gemäß einer Vergleichsmetrik hinreichend ähnlich ist, können das nachfolgende Bild oder die nachfolgenden Bilder als Teil einer Gruppe von Bildern mit dem ersten Bild aufgenommen werden. In diesen Ausführungsformen kann dieser Prozess so lange fortgesetzt werden, bis ein nachfolgendes Bild dem vorhergehenden Bild oder den vorhergehenden Bildern nicht mehr ausreichend ähnlich ist, woraufhin das Bild oder die Gruppe von Bildern in Schritt 410 zu einer Szene zusammengefasst werden. In solchen Ausführungsformen wird jede Szene in der Reihenfolge verarbeitet, in der sie aus dem empfangenen Video 1510 dekodiert wurde.
  • Um zu dem in 15 dargestellten Verfahren 1500 zurückzukehren, wird in einigen Ausführungsformen ein Analyseschritt 1530 an den Bildern des empfangenen Videos durchgeführt, um in Schritt 1540 ein Rekonstruktionsmodell aus einer Bibliothek zu finden, das verwendet werden kann, um die Auflösung der Szene zu erhöhen und die Qualität des Videos in Schritt 1550 zu verbessern, und zwar auf der Grundlage einer Metrik der ausgewählten Szene, die mit Metriken verglichen werden kann, die mit den in der Bibliothek gespeicherten Rekonstruktionsmodellen verbunden sind. In Schritt 1540 wird ein Modell ausgewählt, und in Schritt 1550 wird eine Bildverbesserungsprozedur durchgeführt, bei der sowohl das in Schritt 1540 ausgewählte Modell als auch das in Schritt 1520 aus dem empfangenen Video 1510 erzeugte ausgewählte Bild verwendet werden. Die Bibliothek, aus der das Modell in Schritt 1540 ausgewählt wird, umfasst eine Reihe von vorab trainierten Modellen, die aus Beispiel- oder Trainingsvideos generiert wurden und die mit Metriken verknüpft sind, um einen Vergleich des Videos, aus dem die Modelle generiert wurden, mit einem ausgewählten Bild, das in Schritt 1550 verbessert wird, zu ermöglichen.
  • Es gibt eine Reihe von Methoden zur Merkmalsextraktion, die zur Erstellung von Metriken für jedes Bild verwendet werden können und die daher in der Bibliothek in Verbindung mit den vorab trainierten Rekonstruktionsmodellen gespeichert werden können. In vielen Bildverarbeitungsanwendungen wird häufig ein visueller Bag-of-Words-Ansatz verwendet. Andere beliebte Methoden sind die Histogrammextraktion und die skaleninvariante Merkmalstransformation (SIFT) oder GIST-Merkmale. Nach der Merkmalsextraktion in Schritt 1530 kann jede Szene aus einem Zielvideo in Schritt 1540 auf verschiedene Weise mit der „ähnlichsten“ Szene aus einer Bibliothek abgeglichen werden. Der einfachste Ansatz ist die Verwendung einer vordefinierten Ähnlichkeits- oder Abstandsmetrik wie Manhattan-Abstand, euklidischer Abstand oder strukturelle Ähnlichkeit (SSIM) oder zusätzlich eine erlernte Abstandsmetrik. Zur Erleichterung der direkten Suche nach den nächsten Nachbarn kann eine Datenstruktur mit k-nächsten Nachbarn (kNN) wie ein Kugelbaum oder eine ortsabhängige Hashtabelle verwendet werden. Alternativ kann jede einzelne Szene als „etikettiert“ betrachtet werden. Dann kann eine Vielzahl von Ansätzen des maschinellen Lernens zur Szenenerkennung und - anpassung verwendet werden, um neue Szenen in die „etikettierten“ Szenen der Bibliothek einzuordnen, wie z. B. kontradiktorische Trainingstechniken, bei denen ein anderes neuronales Netz trainiert wird, um anzuzeigen, ob die Szene richtig etikettiert ist.
  • In Schritt 1560 wird die rekonstruierte Szene für diesen Abschnitt des Videos optional für die Ausgabe 1510 vorbereitet. Optional kann in Schritt 1560 das Ausgangsvideo 1570 mit dem ursprünglichen Codec, der für das ursprüngliche Video 1510 verwendet wurde, oder einem vorbestimmten optimalen Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • Es sollte klar sein, dass der Begriff „Bild“, insbesondere in Bezug auf die Gruppierung mehrerer Bilder zu Szenen, sich sowohl auf ein ganzes Bild eines Videos als auch auf einen Bereich beziehen kann, der einen kleineren Abschnitt eines Bildes umfasst.
  • Das Video 1510 im Prozess 1500 oder 1600 kann von physischen Medien wie einer DVD oder einem anderen physischen Datenspeichermedium stammen, aber auch von einem lokalen oder entfernten Streaming-Netzwerkdienst.
  • 17 zeigt ein modifiziertes Verfahren 1700 (das auf Verfahren 1600 basiert, aber auch eine modifizierte Version von Verfahren 1500 sein könnte).
  • Hier wird der Prozess 1600 in einigen Ausführungsformen durch weitere Schritte modifiziert. Insbesondere beginnt Schritt 1710 mit einer hochauflösenden Videodatei, zum Beispiel in HD-Auflösung. In Schritt 1720 wird das Video dann z. B. auf eine SD-Auflösung heruntergerechnet, um die Übertragung über ein Netzwerk mit begrenzter Bandbreite zu ermöglichen. Optional kann in anderen Ausführungsformen eine Quantisierung verwendet werden, um die Bitrate von visuellen Daten wie Video zu verringern. In Schritt 1730 wird das niedrigere Auflösungs- oder Quantisierungsvideo (je nach Ausführungsform) über ein Netzwerk übertragen und wird zu den Eingangsvideodaten 1510 des Prozesses 1500 oder 1600, die oben in Bezug auf die 15 bzw. 16 beschrieben wurden.
  • Darüber hinaus kann die Videoausgabe 1570 im Prozess 1500 oder 1600 direkt auf einem Bildschirm ausgegeben oder zur Anzeige auf einem Bildschirm auf einem lokalen oder entfernten Speichergerät gespeichert oder an einen entfernten Knotenpunkt zur Speicherung oder Anzeige weitergeleitet werden, je nach Bedarf.
  • In alternativen Ausführungsformen kann es sich bei dem betreffenden Eingangsvideo um Medien für die Wiedergabe handeln, z. B. aufgezeichnetes Video oder live gestreamtes Video, oder es kann ein Videokonferenzvideo oder eine andere Videoquelle sein, z. B. ein Video, das auf einem tragbaren Gerät wie einem Mobiltelefon oder einem Videoaufnahmegerät wie einer Videokamera oder einer Überwachungskamera aufgezeichnet wurde oder wird.
  • Es sollte auch gewürdigt werden, dass bestimmte Kombinationen der verschiedenen Merkmale, die in jedem Aspekt der Erfindung beschrieben und definiert sind, unabhängig voneinander implementiert und/oder bereitgestellt und/oder verwendet werden können.
  • Spezifische Beschreibung - Optimierung des maschinellen Lernens
  • Es werden nun Ausführungsformen eines Wörterbuch-Lernansatzes mit wörterbuchbasierten Modellen und Ausführungsformen eines Deep-Learning-Ansatzes mit neruonalen Faltungsnetzwerkmodellen beschrieben. Andere geeignete maschinelle Lerntechniken können ebenfalls von der Verwendung einer Bibliothek mit vortrainierten Modellen profitieren. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben werden.
  • In 9 wird nun eine Ausführungsform eines maschinellen Lernprozesses im Detail beschrieben.
  • Die Daten 910 werden dem Verfahren oder System 900 zur Verfügung gestellt und können z. B. in Form einer Videodatendatei oder von Bilddaten vorliegen. Es können auch andere Datenformate verwendet werden. In Schritt 920 werden spezifische Metriken aus den Daten extrahiert oder auf deren Grundlage generiert. Die Metriken können darauf basieren, zu messen, welches der vorab trainierten Modelle die hochwertigsten Ausgabedaten erzeugt. Die Qualität kann durch eine beliebige oder eine Kombination aus einer Fehlerrate, einem Spitzensignal-Rausch-Verhältnis oder einem strukturellen Ähnlichkeitsindex definiert werden. Diese Metriken werden dann verwendet, um in Schritt 930 ein vortrainiertes Modell aus einer Bibliothek 942 auszuwählen. Das ausgewählte vortrainierte Modell wird dann in Schritt 940 so entwickelt, dass es die gewünschte Ausgabefunktion für die Eingabedaten 910 genauer ausführen kann. Das Ausgabemodell 950 kann dann entweder sofort oder zu einem späteren Zeitpunkt auf die Eingabedaten 910 angewendet werden.
  • Um die ersten vortrainierten Modelle zu erzeugen, kann derselbe Prozess 900 verwendet werden, aber anstelle der Eingabe von Live-Daten 910 werden Trainings- oder Beispieldaten verwendet.
  • Das entwickelte Modell wird dann in Schritt 941 in der Bibliothek 942 gespeichert, um bei Bedarf in der Zukunft verwendet zu werden. Ein Modell muss also nicht neu entwickelt werden, wenn in Zukunft ähnliche Daten eingegeben werden. Die Bibliothek 942 wächst also mit der Nutzung des Systems.
  • Bei Verwendung eines Deep-Learning-Ansatzes zur Erstellung des Modells in Schritt 940 kann ein nichtlineares hierarchisches Modell 950 erstellt werden.
  • Der Trainings- und Optimierungsprozess 900 kann je nach gewünschtem Kompromiss zwischen der aufgewendeten Rechenzeit und der gewünschten Qualität der Ergebnisse konfiguriert werden. Im Allgemeinen führt die Anzahl der während des Trainingsprozesses 940 verwendeten Iterationen zu einem annähernd logarithmischen Gewinn an Rekonstruktionsgenauigkeit, so dass es vorzuziehen ist, einen automatischen Schwellenwert zu verwenden, um die weitere Optimierung zu stoppen. Um die Qualität der Ergebnisse zu verbessern, kann der automatische Schwellenwert auf einen vorbestimmten Wert des Rekonstruktionsfehlers gesetzt werden, z. B. durch Berechnung des mittleren quadratischen Fehlers, aber es können auch andere Methoden verwendet werden. Alternativ kann der automatische Schwellenwert so eingestellt werden, dass der Trainings- und Optimierungsprozess auf eine vorgegebene Anzahl von Iterationen begrenzt wird. Als weitere Alternative kann eine Kombination dieser beiden Faktoren verwendet werden.
  • Dieser Prozess 900 kann im Bereich der Bild- und Videoverbesserung von Nutzen sein. Wenn die Eingabedaten 910 in Form eines Videoabschnitts (Bild oder Bilder) vorliegen, kann die Auswahl eines Ausgangsmodells aus der Bibliothek 930 auf Metriken basieren, die mit der Art des zu verarbeitenden Videos verbunden sind, z. B. einer sich schnell bewegenden Actionszene oder einer stationären Hintergrundszene. Das Modell 950 kann dann in Schritt 940 weiterentwickelt werden, um den Videoabschnitt, für den es verwendet werden soll, genauer darzustellen.
  • Der Trainings- und Optimierungsprozess 900 kann auch im Falle der Bildregistrierung und -ausrichtung in Betracht gezogen werden. Es kann eine Initialisierung vorgenommen werden, die näher an der optimalen Bildausrichtung in Bezug auf eine Metrik, z. B. eine abstandsmetrische Kostenfunktion, liegt.
  • Spezifische Beschreibung - Verbesserte Bibliotheken
  • Unter Bezugnahme auf 10 wird nun eine Ausführungsform, bei der die Technik zur Codierung visueller Daten verwendet wird, im Detail beschrieben. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • Die Original-Videodaten 1010 werden dem Verfahren oder System unter Verwendung der Technik zugeführt und sind ein hochauflösendes Video, z. B. mit einer Auflösung von 1920 mal 1080 Pixeln (auch als „1080p“-Video bekannt) oder 3840 mal 2160 Pixeln (auch als „4K“-Video bekannt). Diese Videodaten können in einer Vielzahl von bekannten Videocodecs wie H.264 oder VP9 kodiert sein, aber es kann sich auch um beliebige Videodaten handeln, die das System oder Verfahren in die Einzelbilder des Videos dekodieren kann.
  • Die ursprünglichen Videodaten 1010 werden dann in Schritt 1020 in Einzelbilder mit voller Auflösung zerlegt, d. h. in eine Folge von Bildern mit der vollen Auflösung der ursprünglichen Videodaten 210. Bei einigen Videocodecs bedeutet dies eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z. B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können in Schritt 1020 die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was auch als „Szenenauswahl“ bezeichnet wird. Die Videodaten werden in Szenen aufgeteilt oder geclustert, um ein spezifischeres Training und eine Optimierung zu ermöglichen. Mit Szene ist eine aufeinander folgende Gruppe oder Abfolge von Bildern gemeint, die auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelnes Bild sein kann.
  • Unabhängig davon, ob das Video in Schritt 1020 in Bilder oder Szenen (d. h. Gruppen von mehreren Bildern) unterteilt wurde oder als eine Folge von Bildern verbleibt, wird jedes Bild entweder in Bilder mit einer niedrigeren Auflösung unterteilt oder als eine Reihe von Darstellungen des Bildes reproduziert, wie z. B. eine Matrix von Vektoren mit allgemeinen Informationen für Teile des Bildes oder Gruppen von einem oder mehreren Pixeln. Optional kann dieser Schritt erfolgen, bevor die Bilder zu Szenen gruppiert werden. Das Bild mit niedrigerer Auflösung beträgt vorzugsweise 33 % bis 50 % der Datengröße im Verhältnis zur Datengröße des Bildes mit der ursprünglichen Auflösung, während die Darstellungen des Bildes zwischen 1 % und 50 % der Datengröße des Bildes mit der ursprünglichen Auflösung betragen können. Das Bild mit der niedrigeren Auflösung kann eine beliebige Auflösung haben, die niedriger ist als die ursprüngliche Auflösung des Videos.
  • In Schritt 1030 wird eine Analyse von Bildern des heruntergerechneten Videos oder der Darstellungen oder der Modelle allein durchgeführt, um ein Rekonstruktionsmodell aus einer Bibliothek von Modellen zu finden, das verwendet werden kann, um entweder eine genaue Annäherung an das hochauflösende Video allein anhand eines Modells wiederherzustellen oder eine genaue Annäherung an das hochauflösende Video anhand eines Satzes von Darstellungen des hochauflösenden Videos wiederherzustellen oder die Auflösung des heruntergerechneten Videos zu erhöhen und die Qualität des Videos zu verbessern. Ein Ausgangsmodell wird auf der Grundlage einer Metrik der ausgewählten Szene ausgewählt, die mit Metriken verglichen werden kann, die mit den in der Bibliothek gespeicherten Rekonstruktionsmodellen verbunden sind. Alternativ können mehrere Ausgangsmodelle unabhängig voneinander auf das heruntergerechnete Video angewendet werden, um ein verbessertes Bild mit niedrigerer Auflösung zu erzeugen oder ein Bild neu zu erstellen, wobei die Qualität des verbesserten oder neu erstellten Bildes mit der ursprünglichen Szene verglichen wird, um das am besten geeignete Ausgangsmodell aus der Gruppe auszuwählen. Die Qualität der neu erstellten oder verbesserten Szene wird mit dem Original verglichen, wobei objektive Metriken wie Fehlerrate, PSNR und SSIM und/oder subjektive Maße verwendet werden. In Schritt 1040 wird dann ein geeignetes Modell auf der Grundlage dieser Qualitätsvergleiche sowie der Entscheidung, ob nur ein Modell oder ein Satz von Darstellungen des Bildes oder des Bildes mit geringerer Auflösung verwendet werden soll, ausgewählt. Die Bibliothek, aus der die Modelle ausgewählt werden, umfasst eine Reihe von vorab trainierten Modellen, die aus Beispiel- oder Trainingsvideos generiert wurden und denen Metriken zugeordnet sind, die einen Vergleich des Videos, aus dem die Modelle generiert wurden, mit der ausgewählten, zu verbessernden Szene ermöglichen.
  • In Schritt 1060 werden Superauflösungstechniken eingesetzt, um ein spezifisches Modell zu erstellen, das das in Schritt 1040 ausgewählte Modell als Ausgangsmodell verwendet und maschinelles Lernen für jedes Bild einsetzt, so dass das Modell verwendet werden kann, um im Wesentlichen die ursprüngliche Auflösungsversion eines Bildes mit geringerer Auflösung oder eines Satzes von Darstellungen nachzubilden, oder ohne Verwendung des ursprünglichen oder des Bildes mit geringerer Auflösung oder der Darstellungen, und das mit maschinellem Lernen auf der Grundlage der Kenntnis des Bildes mit der ursprünglichen Auflösung trainiert wird. Dieser Schritt wird als Trainings- und Optimierungsprozess bezeichnet.
  • In Schritt 1070 wird das optimierte Rekonstruktionsmodell in der Bibliothek gespeichert, um in Schritt 1030 als Ausgangsmodell verwendet zu werden.
  • Alternativ kann das geänderte Modell auch von Grund auf neu entwickelt werden, ohne ein bekanntes Modell als Ausgangspunkt zu verwenden. Ein bekanntes Modell kann dann mit dem erstellten Modell verglichen werden, um eine Liste der Änderungen zu erstellen, die erforderlich sind, um das modifizierte Modell aus dem bekannten Modell zu erstellen.
  • In Schritt 1050 werden der Teil des niedrig aufgelösten Videos oder die Darstellungen und/oder das Rekonstruktionsmodell für dieses Bild oder diesen Teil des Videos zur Übertragung ausgegeben. Anstatt das vollständige Rekonstruktionsmodell zu übertragen, kann ein Bibliotheksverweis auf das in Schritt 1040 ausgewählte Ausgangsmodell zusammen mit den Änderungen ausgegeben werden, die erforderlich sind, um daraus das Rekonstruktionsmodell zu erstellen. Alternativ kann anstelle des Videos mit geringerer Auflösung auch eine Darstellung des Bildes übertragen werden, um die übertragenen Daten weiter zu reduzieren. Eine weitere Alternative besteht darin, nur ein Modell zu übermitteln, was die übertragenen Daten noch weiter reduziert. Optional können das Video oder die Darstellungen und das Modell zusammen in einem geeigneten Datencontainerformat wie einem Matroska-Multimedia-Container (auch bekannt als MKV-Container) gespeichert werden. Alternativ können das Video oder die Darstellungen und das Modell mit anderen Abschnitten oder dem gesamten Video kombiniert und in einem geeigneten Datencontainerformat abgelegt werden. In Schritt 250 können die niedrig aufgelösten Videobilder entweder mit dem ursprünglichen Videocodec, der auf die ursprünglichen Videodaten 1010 angewendet wurde, neu codiert werden, oder es kann alternativ ein optimalerer Videocodec auf die Videodaten angewendet werden, um Ausgangsvideodaten 1050 zu erzeugen. Wurde eine Szenenerkennung oder Zeitstempelung durchgeführt, können die für die Übertragung ausgegebenen Daten entweder eine Liste von Szenen bzw. Zeitstempeldaten enthalten, oder diese Daten können im Datencontainer gespeichert werden. Alternativ kann eine Liste von Einzelbildreferenzen (die entweder nach der Reihenfolge der Bildwiedergabe oder der Dekodierung geordnet sind) verwendet werden, die mit den Videobildern synchronisiert ist. Eine weitere Alternative ist die Aufnahme einer Liste von Szenenübergängen (definiert durch Bildnummern) zusammen mit einer geordneten Liste von Referenzen, die mit der Anzahl der Szenen übereinstimmen. Der Fachmann wird verstehen, dass auch andere Beispiele möglich sind.
  • In 11 wird nun eine Ausführungsform zur Rekonstruktion des mit dieser Technik kodierten Videos im Detail beschrieben.
  • Zunächst werden die Daten 1100 aus dem Netz empfangen. Die empfangenen Daten 1100 hängen davon ab, wie die Daten für die Übertragung in Schritt 1050, wie oben beschrieben, vorbereitet wurden, und umfassen die Videodaten oder Darstellungen der Videodaten und/oder Verweise auf ein oder mehrere anfängliche Rekonstruktionsmodelle, um hochauflösende Videodaten wiederherzustellen, zusammen mit allen Änderungen an den referenzierten Modellen, die erforderlich sind, um die endgültigen Rekonstruktionsmodelle zu reproduzieren. Es ist möglich, dass die Videodaten oder -darstellungen, die Verweise auf das eine oder die mehreren anfänglichen Rekonstruktionsmodelle und die Änderungen an diesen Modellen nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die für die Dekodierung oder Rekonstruktion des Videos mit höherer Auflösung aus den über das Netz übertragenen Daten erforderlich sind.
  • In den Schritten 1120 und 1130 werden die empfangenen Daten für die Rekonstruktion vorbereitet. Dieser Schritt umfasst im Allgemeinen die Trennung des niedrig aufgelösten Videos oder der übertragenen Darstellungen von den Verweisen auf bekannte Rekonstruktionsmodelle und die Änderungen an diesen Modellen, die zur Reproduktion des optimierten Rekonstruktionsmodells erforderlich sind. Optional wird das niedrig aufgelöste Video in Schritt 1120 unter Verwendung des für die Übertragung verwendeten Videocodecs in Bilder mit voller Auflösung dekomprimiert, und jedes der Bilder wird mit dem entsprechenden Rekonstruktionsmodell abgeglichen, das ebenfalls in der Reihenfolge der einzelnen Bilder entpackt wird.
  • Die in Schritt 1170 entwickelten Rekonstruktionsmodelle werden anhand der Referenz zu einem bekannten Rekonstruktionsmodell und der in Schritt 1110 erhaltenen Änderungen neu erstellt. In Schritt 1130 wird die empfangene Referenz verwendet, um das bekannte Rekonstruktionsmodell, aus dem das optimierte Rekonstruktionsmodell entwickelt wurde, in einer Bibliothek von im zweiten Knoten gespeicherten Modellen zu finden. Die empfangenen Änderungen werden dann in Schritt 1160 auf dieses bekannte Rekonstruktionsmodell angewendet, wodurch das optimierte Rekonstruktionsmodell neu erstellt wird. Nach dieser Rekonstruktion wird das optimierte Rekonstruktionsmodell in der Bibliothek des zweiten Knotens für eine spätere Bezugnahme in Schritt 1170 gespeichert, wobei dieselbe Referenz verwendet wird wie beim Speichern des Modells in der Bibliothek des ersten Knotens in Schritt 1170. Ein inkrementeller (oder dekrementeller) Zähler kann verwendet werden, um neue Referenzen für den geänderten Algorithmus zu erstellen, die dann für beide Knoten gleich wären (in einem verteilten System). Alternativ könnte dies auch über eine zentrale Datenbank erfolgen.
  • In Schritt 1140 wird das modifizierte Rekonstruktionsmodell auf jedes der Bilder oder Darstellungen angewandt, wenn diese übertragen werden, um Bilder mit höherer Auflösung auszugeben, andernfalls werden sie verwendet, um die Bilder mit höherer Auflösung ohne ein Bild oder Darstellungen mit niedriger Auflösung zu reproduzieren. Der Rekonstruktions- oder Dekodierungsprozess beinhaltet die Anwendung des optimierten Modells des hochauflösenden neuronalen Netzes oder des Rekonstruktionsmodells für jede Szene, um ein Video mit höherer Auflösung zu erzeugen, das im Wesentlichen die gleiche Qualität wie das ursprüngliche hochauflösende Video aufweist. Ausgehend von den entsprechenden Modellen und wenn jedes Bild mit niedrigerer Auflösung oder jeder Satz von Darstellungen übertragen wird, kann ein Bild mit höherer Auflösung, das im Wesentlichen visuell identisch mit den ursprünglichen Bildern mit höherer Auflösung ist, mit hoher Genauigkeit rekonstruiert werden.
  • In Schritt 1150 wird jedes der Videosegmente vom Rekonstruktionsprozess als höher aufgelöste Bilder mit der gleichen Auflösung wie das ursprüngliche Video 210 ausgegeben. Die Qualität des Ausgangsvideos 1150 ähnelt im Wesentlichen der des Originalvideos 210, innerhalb der Fehlergrenzen, die optional durch den maschinellen Lernprozess angewendet werden, der das Rekonstruktionsmodell in Schritt 1060 des Codierungsprozesses entwickelt.
  • In Schritt 1140 werden die Videosegmente so kombiniert, dass das Video angezeigt werden kann. Optional kann das Video in Schritt 1140 mit dem ursprünglichen Codec, der für das ursprüngliche Video 1010 verwendet wurde, oder mit einem vorbestimmten optimalen Codec neu kodiert werden, um die Wiedergabe auf einem Decoder oder Anzeigegerät zu ermöglichen.
  • Eine modifizierte Ausführungsform des oben beschriebenen Verfahrens ist in den 4 und 5 dargestellt. Bei dieser Ausführungsform wird das downsampled Video nicht vom ersten Knotenpunkt zum zweiten Knotenpunkt übertragen. Stattdessen können alle Daten, die zur Erstellung des rekonstruierten Videos erforderlich sind, in die übertragenen Änderungen eines bekannten Rekonstruktionsmodells einbezogen werden. Es ist möglich, dass keine Daten erforderlich sind und dass nur die Verwendung eines Modells erforderlich ist, um das hochauflösende Video im Wesentlichen zu rekonstruieren. Der zweite Knotenpunkt rekonstruiert das Video nur unter Verwendung des modifizierten Rekonstruktionsmodells, das durch Anwendung der Modifikationen auf das bekannte Rekonstruktionsmodell, auf das in der Übertragung verwiesen wird, erhalten wurde, und gegebenenfalls der Daten, die zur Erstellung des rekonstruierten Videos erforderlich sind. Dieses Verfahren kann vorteilhaft eingesetzt werden, um die über das Netz übertragene Datenmenge weiter zu reduzieren, so dass die zu übertragende Datenmenge verringert wird.
  • 12 zeigt ein weiteres Verfahren zur Videocodierung. Die ersten Schritte verlaufen wie in 10. Das Video mit höherer Auflösung (1210) wird vorbereitet, indem es in Szenen aufgeteilt und in Schritt 1220 heruntergerechnet wird. In Schritt 1230 wird eine Analyse jeder Szene durchgeführt, um zu bestimmen, welche bekannten Modelle als Ausgangspunkt für den Modelloptimierungsprozess verwendet werden sollen. In Schritt 1240 werden ein oder mehrere geeignete Modelle auf der Grundlage einer Metrik für jede Szene oder jedes Bild ausgewählt, die mit den Metriken der in der Bibliothek gespeicherten Rekonstruktionsmodelle verglichen werden kann. Die ausgewählten bekannten Modelle werden in Schritt 1260 durch maschinelles Lernen optimiert. Sie werden jedoch nicht so trainiert, dass sie das Video mit höherer Auflösung aus dem heruntergerechneten Video reproduzieren, sondern so, dass sie das Video mit höherer Auflösung 1210 im Wesentlichen reproduzieren, wobei nur das optimierte Modell selbst oder das optimierte Modell und alle Daten verwendet werden, die in das Modell integriert werden können, um die Rekonstruktion des Videobildes oder der Szene zu starten. Ein Verweis auf das bekannte Ausgangsrekonstruktionsmodell zusammen mit den Änderungen, die erforderlich sind, um das optimierte Rekonstruktionsmodell für jede Szene oder jedes Bild zu reproduzieren, wird in Schritt 1260 zusammen mit einer Liste von Szenen, sofern bekannt, an den zweiten Knoten übermittelt.
  • 13 zeigt ein weiteres Verfahren zur Dekodierung der empfangenen Informationen am zweiten Knotenpunkt, um das Video mit der höheren Auflösung im Wesentlichen wiederzugeben. Das in Schritt 1260 von 12 übertragene Paket wird in Schritt 1310 vom zweiten Knoten empfangen und in Schritt 1320 entpackt. Die Verweise auf bekannte Modelle werden verwendet, um die bekannten Rekonstruktionsmodelle zu finden, die in einer Bibliothek am zweiten Knotenpunkt in Schritt 1330 gespeichert sind. Die Änderungen, die diesen bekannten Rekonstruktionsmodellen entsprechen, werden dann in Schritt 1340 angewendet, um das optimierte Rekonstruktionsmodell zu reproduzieren, das durch den maschinellen Lernprozess in Schritt 1260 von 12 erzeugt wurde. Dieses Modell ist so optimiert, dass es das ursprüngliche Video mit höherer Auflösung 1260 im Wesentlichen wiedergibt, ohne dass es auf ein entsprechendes Videomuster mit niedriger Auflösung angewendet werden muss. Daher kann der zweite Knoten das ursprüngliche hochauflösende Video im Wesentlichen nur aus dem modifizierten Rekonstruktionsmodell rekonstruieren. Diese Rekonstruktion wird in Schritt 1350 durchgeführt, und das resultierende rekonstruierte Video mit höherer Auflösung wird in Schritt 1360 ausgegeben.
  • Spezifische Beschreibung - Entfernung von Artefakten
  • Um die oben genannten Ansätze zur Entfernung von Bildartefakten zu verbessern, wird vorgeschlagen, Deep-Learning-Techniken und neuronale Netze wie rekurrente neuronale Netze und neuronale Faltungsnetzwerke zu verwenden.
  • In einigen Fällen können vollständig verbundene neuronale Netze nicht ohne weiteres auf größere Netze skaliert werden, da die Rechenkomplexität mit zunehmender Größe des Netzes bald zu groß wird; dies hängt jedoch von der Anwendung des neuronalen Netzes und auch von anderen Faktoren wie den Kernel- und Filtergrößen ab.
  • Neuronale Netzwerkmodelle können zusammen mit Videodaten mit niedriger Auflösung und/oder niedriger Bitrate und/oder geringer Qualität übertragen werden, da die Datengröße eines neuronalen Faltungsnetzwerkmodells oder eines rekurrenten neuronalen Netzwerkmodells im Vergleich zur Größe eines gelernten Wörterbuchs bei gleicher Genauigkeit klein genug ist. Im Vergleich dazu bedeutet die Datengröße von gelernten Wörterbüchern, dass es unpraktisch ist, diese Wörterbücher zusammen mit den niedrig aufgelösten Bildern zu übertragen, insbesondere dann, wenn die Wörterbücher als überkomplette Wörterbücher gelernt werden.
  • 22 zeigt einen Überblick über Ausführungsformen eines Verfahrens zur Erzeugung von Modellen zur Verwendung bei der Entfernung von Bildartefakten. Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • In einigen Ausführungsformen wird die Trainingsbild- oder -videodatei in Schritt 2210 aus einer Bibliothek von Trainingsbildern oder -videos ausgewählt, die in einem Netzknoten gespeichert sind, und in Schritt 2220 je nach ihrem Inhalt in Einzelbilder, Teilbilder oder Bildfolgen (hier zusammenfassend als Szenen bezeichnet) unterteilt. In diesen Ausführungsformen kann der Szenentyp dann anhand einer Metrik in Abhängigkeit von seinem Inhalt in eine bestimmte Kategorie eingestuft werden.
  • In einigen Ausführungsformen werden in Schritt 2230 gezielt Bildartefakte in der Szene erzeugt, indem aggressive Komprimierungs- und/oder Quantisierungsalgorithmen auf die Szene angewendet werden, wobei das Ausmaß der erwarteten Artefakte durch die Komprimierungs- bzw. Quantisierungsstufe oder das Qualitätsniveau gesteuert wird. So entsteht eine Trainingsszene. In einigen dieser Ausführungsformen wird auf diese Trainingsszene in Schritt 2240 eine Artefaktbewertungsmethode angewandt, um den Schweregrad der induzierten Artefakte zu quantifizieren.
  • In Schritt 2250 wird in einigen Ausführungsformen ein Modell zur Entfernung von Bildartefakten mit Hilfe von Techniken des maschinellen Lernens an der Trainingsszene trainiert. In diesen Ausführungsformen kann das Modell zur Entfernung von Bildartefakten so erstellt werden, dass es die Trainingsszene im Wesentlichen von Bildartefakten bereinigt. In einigen dieser Ausführungsformen werden Bildqualitätsmetriken verwendet, um die „bereinigte“ Szene mit dem Original zu vergleichen, und der Trainingsprozess kann fortgesetzt werden, bis der Vergleich Ergebnisse innerhalb eines vordefinierten Schwellenwerts ergibt.
  • In einigen Ausführungsformen wird das resultierende Modell zur Entfernung von Bildartefakten dann in Schritt 2260 zusammen mit metrischen Daten, die sich auf die Klassifizierung des Szenentyps beziehen, und einem Artefaktgrad, der sich auf die Arten und/oder den Schweregrad der Artefakte in der Trainingsszene bezieht, gespeichert.
  • Der Prozess kann je nach Ausführungsform mehrfach an derselben Trainingsszene mit unterschiedlichen Komprimierungs- und Quantisierungsgraden wiederholt werden, um eine Reihe von Modellen für unterschiedliche Artefaktschweregrade zu trainieren.
  • In einigen Ausführungsformen kann der Prozess auch mit verschiedenen Trainingsszenen wiederholt werden, um eine Bibliothek mit verschiedenen Modellen zur Entfernung von Bildartefakten zu erstellen, die sowohl nach Inhaltstyp als auch nach Artefaktschweregrad indiziert sind. In diesen Ausführungsformen kann eine „Matrix“ von Bibliotheksmodellen erstellt werden, wobei eine Achse der Matrix als der Inhaltstyp und die andere als der Artefaktschweregrad angesehen werden kann.
  • Die einzelnen Schritte des obigen Verfahrens, wie sie in einigen Ausführungsformen angewandt werden, werden im Folgenden näher beschrieben.
  • Die Aufteilung des Trainingsbildes oder -videos in eine Szene oder mehrere Szenen in Schritt 2220 kann in verschiedenen Ausführungsformen auf unterschiedliche Weise erfolgen. In bestimmten Ausführungsformen kann das Trainingsbild oder -video bereits in Szenen unterteilt sein, bevor es in der Bibliothek der Trainingsbilder oder - videos gespeichert wird, so dass dieser Schritt des Verfahrens nicht immer erforderlich ist. Für das Training des Modells zur Entfernung von Bildartefakten wird in einigen Ausführungsformen nur eine Szene für jedes erzeugte Modell verwendet. In diesen Ausführungsformen kann daher ein einziges Trainingsbild oder -video verwendet werden, um mehrere verschiedene Modelle zur Entfernung von Bildartefakten zu trainieren, die sich auf unterschiedliche Inhaltstypen im Bild oder Video beziehen.
  • Betrachten wir zunächst den Fall von Videodaten, so können die Bibliotheksvideodaten in einigen Ausführungsformen in Einzelbilder mit voller Auflösung aufgeteilt werden, d. h. in eine Folge von Bildern mit der vollen Auflösung der ursprünglichen Videodaten. Bei einigen Videocodecs bedeutet dies in bestimmten Ausführungsformen eine „Dekomprimierung“ oder Wiederherstellung der Videodaten, da z. B. bei gängigen Videokomprimierungsverfahren redundante (sich nicht ändernde) Merkmale aus aufeinanderfolgenden Bildern entfernt werden.
  • Optional können in anderen Ausführungsformen die Bilder mit voller Auflösung in Szenen oder Abschnitte von Bildern mit gemeinsamen Merkmalen gruppiert werden, was als „Szenenauswahl“ bezeichnet wird. In solchen Fällen können die Videodaten in Szenen aufgeteilt oder geclustert werden, um ein spezifischeres Training und eine Optimierung zu ermöglichen. Mit Szene ist eine aufeinanderfolgende Gruppe oder Abfolge von Bildern gemeint, die je nach Ausführungsform auf der gröbsten Ebene das gesamte Video oder auf der feinsten Ebene ein einzelnes Bild oder einen Teil eines Bildes darstellen kann.
  • Für das Training des Modells zur Entfernung von Bildartefakten wird in einigen Ausführungsformen nur eine Szene für jedes erzeugte Modell verwendet. Ein einziges Trainingsbild oder -video kann daher in solchen Ausführungsformen verwendet werden, um mehrere verschiedene Modelle zur Entfernung von Bildartefakten zu trainieren, die sich auf unterschiedliche Inhaltstypen beziehen.
  • Sobald eine Szene generiert wurde, wird sie in einigen Ausführungsformen anhand von Metriken klassifiziert, die sich auf die Eigenschaften der Szene beziehen. In einigen Ausführungsformen können Metriken, die für diese Klassifizierung verwendet werden können, die Wahrscheinlichkeit oder den Abstand umfassen, je nach Art des Klassifizierers oder der Clusterbildung, die in jeder Ausführungsform verwendet wird, und je nach Ausführungsform kann eine Funktion des Fehlers oder der Unterschiede in die Metrik einbezogen werden. Beispielmetriken können die Unterschiede zwischen Pixeln oder Histogrammunterschiede wie die Summe der absoluten Unterschiede oder der euklidische Abstand in diesen Ausführungsformen umfassen. Zu den Beispielmetriken können in einigen Ausführungsformen auch der mittlere quadratische Fehler und das Spitzensignal-Rausch-Verhältnis gehören. In anderen Ausführungsformen kann die Klassifizierung auch anhand von vorher trainierten Klassifizierungen durchgeführt werden, z. B. könnte es vorher trainierte Klassifizierungen für eine Vielzahl von Szenen oder Objekten geben, wie z. B. draußen, drinnen, Berge, Fahrrad usw. Die Wahrscheinlichkeit würde durch den in der Ausführungsform verwendeten Klassifikator bestimmt, z. B. könnte ein statistisches Ähnlichkeitsmaß wie die Kullback-Leibler-Divergenz verwendet werden. In anderen Ausführungsformen wäre eine weitere Alternative die Verwendung von maschinellem Lernen zur Entwicklung einer auf den Bildraum anzuwendenden Metrik, die eine Formel für die Abstände bestimmen würde. Diese Klassifizierung anhand von Metriken wird zumindest in einigen Ausführungsformen zur Unterscheidung von Szenen mit unterschiedlichen Inhalten verwendet. Die auf diese Weise ermittelten metrischen Daten weisen der Szene in solchen Ausführungsformen effektiv einen Inhaltstyp zu.
  • Nachdem die Szene erzeugt und klassifiziert wurde, wird sie in zumindest einigen Ausführungsformen in Schritt 2230 komprimiert und/oder quantifiziert. In diesen Ausführungsformen kann die Komprimierung der Szene mit jedem bekannten verlustbehafteten Bild-/Videokomprimierungsalgorithmus durchgeführt werden. In solchen Ausführungsformen können die Quantisierungsverfahren sowohl die Farbquantisierung, beispielsweise mit einem Medianschnitt-Algorithmus oder einem Clustering-Algorithmus, als auch die Frequenzquantisierung umfassen.
  • In einigen Ausführungsformen werden durch den Komprimierungs- oder Quantisierungsprozess Bildartefakte in die Szene eingebracht, wodurch eine Trainingsszene erzeugt wird, die zusammen mit der unkomprimierten und nicht quantisierten Originalversion der Szene zum Trainieren und/oder Optimieren eines Modells zur Entfernung von Bildartefakten verwendet wird. In diesen Ausführungsformen können verschiedene Stufen der Artefaktschwere eingeführt werden, indem der Grad der in dieser Phase durchgeführten Kompression und/oder Quantisierung variiert wird.
  • Bevor der Trainings- und Optimierungsprozess in einigen Ausführungsformen beginnt, wird in Schritt 2240 die Artefaktschwere der Trainingsszene mit Hilfe eines Algorithmus zur Artefaktbewertung bestimmt. Beispiele für solche Algorithmen, die in Ausführungsformen verwendet werden können, finden sich in dem Artikel „No-Reference Image Quality Assessment in the Spatial Domain“ von Anish Mittal, Anush Krishna Moorthy und Alan Conrad Bovik, veröffentlicht in IEEE TRANSACTIONS ON IMAGE PROCESSING, Vol. 21, No. 12, DECEMBER 2012, der hier durch Bezugnahme aufgenommen wird. Durch die Einstufung der Artefaktschwere einer Trainingsszene können Modelle zur Entfernung von Bildartefakten sowohl auf der Grundlage der Art des Szeneninhalts als auch der Schwere der vorhandenen Artefakte trainiert werden.
  • In Schritt 250 wird das Modelltraining und der Optimierungsprozess in einigen Ausführungsformen an der Trainingsszene durchgeführt. In einigen Ausführungsformen werden Superauflösungstechniken und Techniken des maschinellen Lernens eingesetzt, um ein Modell zur Entfernung von Bildartefakten zu erstellen, so dass das Modell verwendet werden kann, um die ursprüngliche „saubere“ Version der Trainingsszene im Wesentlichen wiederherzustellen. Durch den Einsatz eines Deep-Learning-Ansatzes zur Erzeugung des Modells kann zumindest in einigen Ausführungsformen ein nichtlineares hierarchisches Modell erstellt werden, um die ursprüngliche saubere Szene aus der komprimierten und/oder quantisierten Szene zu rekonstruieren.
  • Ein Beispiel für einen Deep-Learning-Ansatz, allerdings nur für Standbilder und in Bezug auf Jpeg-Kompressionsartefakte (aber beispielsweise nicht für andere Videoartefakte wie Bewegungsunschärfe und Inter-Frame-Artefakte), der jedoch in einigen Ausführungsformen mit oder ohne Modifikation verwendet werden kann, wird in dem Artikel „Compression Artifacts Reduction by a Deep Convolutional Network“ von Chao Dong, Yubin Deng, Chen Change Loy und Xiaoou Tang beschrieben, das als arXiv:1504.06993v1 [cs.CV] am 27. April 2015 veröffentlicht ist, und dieses Papier ist hier durch Bezugnahme aufgenommen. Dieser Artikel befasst sich mit der Erzeugung eines verbesserten tiefen Superauflösung neuronalen Faltungsnetzwerks für die Entfernung von Bildartefakten aus einem flachen Netzwerkmodell.
  • In einigen Ausführungsformen kann die Qualität der neu erstellten oder gereinigten Szene mit dem Original unter Verwendung objektiver Metriken wie Fehlerrate, PSNR und SSIM und/oder subjektiver Maße verglichen werden. Wenn die Qualität innerhalb eines vordefinierten Schwellenwerts liegt, kann das Modell zusammen mit den Ergebnissen eines Klassifizierers gespeichert werden, der den Inhalt der Szene und den Schweregrad des Artefakts, auf das sich das Modell bezieht, identifiziert. Andernfalls wird in einigen Ausführungsformen der Trainingsprozess fortgesetzt, bis der vordefinierte Schwellenwert erreicht ist. Alternativ oder zusätzlich kann in einigen Ausführungsformen eine vordefinierte Anzahl von Iterationen des maschinellen Lernprozesses verwendet werden, um die für das Training des Modells benötigte Rechenzeit zu begrenzen.
  • In einigen Ausführungsformen kann das auf diese Weise trainierte Modell zur Korrektur von Bildartefakten einer der folgenden Algorithmen sein: ein nichtlinearer hierarchischer Algorithmus, ein neuronales Faltungsnetzwerk, ein rekurrentes neuronales Netzwerk, ein mehrschichtiges (neuronales) Netzwerk, ein künstliches neuronales Netzwerk, ein Deep Belief Network, ein Wörterbuch-Lernalgorithmus, ein Parameter, eine Mapping-Funktion, ein mehrschichtiges Feed-Forward-Netzwerk, ein nichtlinearer Filter, ein Wörterbuch, ein Satz oder eine Reihe von Parametern oder Funktionen oder eine Reihe von Funktionen.
  • In einigen Ausführungsformen wird die ursprüngliche Trainingsszene, die bei der Szenenauswahl erzeugt wurde, verwendet, um mehrere Modelle für denselben Szenentyp zu erzeugen, indem der Komprimierungs- und Quantisierungsprozess mit unterschiedlichen Komprimierungs- und/oder Quantisierungsgraden wiederholt wird oder indem unterschiedliche Komprimierungs- und/oder Quantisierungsalgorithmen verwendet werden. In diesen Ausführungsformen führt dieser Ansatz zu einer unterschiedlichen Schwere der Artefakte in der Szene. Außerdem kann in einigen dieser Ausführungsformen der Trainings- und Optimierungsprozess wiederholt werden, um ein neues Modell zur Entfernung von Bildartefakten für denselben Inhalt, aber mit einem anderen Grad an Artefaktschwere zu erstellen.
  • In einigen Ausführungsformen werden die trainierten und/oder optimierten Modelle zur Entfernung von Bildartefakten in einer Bibliothek von Modellen zur Entfernung von Bildartefakten gespeichert. In einigen dieser Ausführungsformen ist jedes Modell in der Bibliothek mit einem Klassifikator verknüpft, der den Inhalt der Szene und den Schweregrad des Artefakts identifiziert, für den das Modell trainiert wurde. In diesen Ausführungsformen kann man sich die Bibliothek daher als eine „Matrix“ beispielbasierter Modelle verstehen, deren Zeilen dem Typ des Szeneninhalts und deren Spalten dem Schweregrad der Bildartefakte entsprechen.
  • In bestimmten Ausführungsformen kann die Bibliothek auf einem Knoten innerhalb eines Netzes gespeichert werden.
  • In 23 wird nun ein Verfahren zur Verwendung der Modelle zur Entfernung von Bildartefakten gemäß einigen Ausführungsformen beschrieben.
  • In einigen Ausführungsformen wird in Schritt 2310 ein Video- oder Bildausschnitt von einem Netzwerk an einem empfangenden Netzknoten empfangen. In diesen Ausführungsformen hängen die empfangenen Daten davon ab, wie die Daten für die Übertragung an einem sendenden Netzknoten vorbereitet wurden, und umfassen die Video-/Bilddaten oder Darstellungen der Video-/Bilddaten. In einigen dieser Ausführungsformen ist es möglich, dass Videodaten oder Darstellungen nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle erforderlichen Komponenten zu warten, bevor der Prozess der Artefaktentfernung stattfinden kann.
  • In einigen Ausführungsformen werden die empfangenen Video- oder Bilddaten in Schritt 2320 entpackt und je nach Inhalt in Szenen unterteilt, wobei das oben in Bezug auf den Prozess zur Entfernung von Bildartefakten beschriebene Verfahren angewendet wird. In einigen dieser Ausführungsformen werden die Szenen dann in Schritt 2330 anhand von Metriken klassifiziert, um den Inhaltstyp der Szene zu bestimmen.
  • Alternativ können in anderen Ausführungsformen die empfangenen Video-/Bilddaten bereits vom übertragenden Netzknoten in Szenen unterteilt und klassifiziert worden sein. In diesem Fall enthalten die vom empfangenden Knoten empfangenen Daten Metadaten für jede der darin enthaltenen Szenen, die den Typ des Szeneninhalts angeben.
  • In jedem Fall werden in einigen Ausführungsformen in Schritt 2330 die empfangenen Szenen einem Artefaktbewertungsalgorithmus oder Klassifikator unterzogen, um den Schweregrad der in der Szene vorhandenen Artefakte zu bestimmen. In einigen dieser Ausführungsformen kann die Quelle dieser Artefakte der Video-/Bildkomprimierungs- und -quantisierungsprozess sein, der vom Übertragungsknoten vor der Übertragung der Video-/Bilddaten durchgeführt wird, oder sie können durch eine fehlerhafte oder verlustbehaftete Netzübertragung verursacht werden.
  • In einigen Ausführungsformen werden der Inhaltstyp der Szene und der Schweregrad der Bildartefakte verwendet, um das Modell zur Beseitigung von Bildartefakten aus der Bibliothek der Modelle zur Beseitigung von Bildartefakten auszuwählen, das am besten zu dem Inhaltstyp der Szene und dem Schweregrad der Artefakte der empfangenen Szene passt. In diesen Ausführungsformen kann dieser Abgleich am empfangenden Netzknoten durchgeführt werden, wenn die Bibliothek dort gespeichert ist. Alternativ kann in anderen Ausführungsformen, wenn die Bibliothek entfernt vom empfangenden Netzknoten gespeichert ist, eine Anforderung für das am besten geeignete Modell zur Entfernung von Bildartefakten vom empfangenden Knoten an den Ort der Modellbibliothek übertragen werden. In einigen dieser Ausführungsformen überträgt die Modellbibliothek dann das entsprechende Modell zur Entfernung von Bildartefakten an den empfangenden Netzknoten. Ist in der Bibliothek kein geeignetes Modell zur Entfernung von Bildartefakten gespeichert, kann stattdessen ein allgemeines Modell verwendet werden. In solchen Fällen kann ein geeignetes Modell z. B. dadurch bestimmt werden, dass die metrischen Daten bezüglich des Inhaltstyps und der Artefaktschwere der empfangenen Video- oder Bilddaten innerhalb eines vordefinierten Bereichs von mindestens einem der in der Bibliothek gespeicherten Modelle zur Entfernung von Bildartefakten liegen müssen.
  • In einigen Ausführungsformen wird das Modell zur Entfernung von Bildartefakten, das sich als das geeignetste herausgestellt hat (oder das generische Modell, falls kein geeignetes Modell in der Bibliothek vorhanden ist oder das generische Modell das geeignetste Modell ist), dann in Schritt 2350 auf die empfangene Szene angewendet, um die ursprüngliche Video-/Bilddatei weitgehend frei von Bildartefakten wiederherzustellen. In solchen Ausführungsformen kann dieser Treuekorrekturprozess zu einem sauber rekonstruierten Video/Bild führen, das dann von dem empfangenden Knoten in Schritt 2360 ausgegeben wird.
  • Bezugnehmend auf 24 wird nun ein alternatives Verfahren zur Verwendung der Modelle zur Entfernung von Bildartefakten gemäß einigen Ausführungsformen beschrieben.
  • In solchen Ausführungsformen bezieht sich dieses Verfahren auf den kombinierten Einsatz von Bildartefaktentfernung und Superauflösungstechniken zur Rekonstruktion eines Videos oder Bildes aus downsampled (d. h. mit geringerer Auflösung als die ursprüngliche höhere Auflösung) Video- oder Bilddaten, die von einem Netzwerk empfangen wurden.
  • In einigen Ausführungsformen wird zunächst in Schritt 2410 das Datenpaket vom Netzwerk empfangen. In diesen Ausführungsformen hängen die in dem Paket empfangenen Daten davon ab, wie die Daten für die Übertragung durch den übertragenden Netzknoten vorbereitet wurden, und können downsampled Video- oder Bilddaten oder Darstellungen der Video- oder Bilddaten und/oder Einzelheiten eines oder mehrerer Rekonstruktionsmodelle zur Wiederherstellung hochauflösender Videodaten aus den downsampled Video- oder Bilddaten enthalten. In solchen Ausführungsformen können diese Details die Rekonstruktionsmodelle selbst oder Verweise auf bekannte Rekonstruktionsmodelle sein, die im empfangenden Knoten oder im Netzwerk gespeichert sind.
  • In einigen Ausführungsformen ist es möglich, dass die Videodaten oder - darstellungen, die Verweise auf das eine oder die mehreren anfänglichen Rekonstruktionsmodel(le) und die Änderungen an diesen Modellen nicht gleichzeitig übertragen und/oder empfangen werden, so dass eine gewisse Pufferung erforderlich sein kann, um auf alle Komponenten zu warten, die zur Dekodierung oder Rekonstruktion des Videos mit höherer Auflösung aus den über das Netz übertragenen Daten erforderlich sind.
  • In Schritt 2420 werden die empfangenen Daten dann für die Rekonstruktion vorbereitet. In diesen Ausführungsformen beinhaltet dieser Schritt im Allgemeinen die Trennung des niedrig aufgelösten Videos/Bildes oder der Darstellungen, falls diese übertragen werden, von den Details der relevanten Rekonstruktionsmodelle. In anderen Ausführungsformen wird das niedrig aufgelöste Video oder Bild mit Hilfe des für die Übertragung verwendeten Video- oder Bildcodecs in Szenen mit voller Auflösung dekomprimiert, und jedes der Bilder wird mit dem entsprechenden Rekonstruktionsmodell abgeglichen, das ebenfalls in eine szenenweise Reihenfolge gebracht wird.
  • In Schritt 2430 wird in einigen Ausführungsformen der Szeneninhalt, wenn er nicht bereits vom Sendeknoten bestimmt wurde, nun vom Empfangsknoten bestimmt.
  • In einigen Ausführungsformen werden die entpackten Video- oder Bildszenen dann mithilfe eines Algorithmus zur Artefaktbewertung eingestuft, um den Schweregrad der Artefakte zu bestimmen.
  • In einigen Ausführungsformen werden in Schritt 2440 der Inhaltstyp der Szene und der Schweregrad der Bildartefakte verwendet, um das Modell zur Beseitigung von Bildartefakten aus der Bibliothek der Modelle zur Beseitigung von Bildartefakten auszuwählen, das dem Inhaltstyp der Szene und dem Schweregrad der Artefakte der empfangenen Szene am besten entspricht. In solchen Ausführungsformen kann dieser Abgleich am empfangenden Netzknoten durchgeführt werden, wenn die Bibliothek dort gespeichert ist. Alternativ kann in anderen Ausführungsformen, in denen die Bibliothek entfernt vom empfangenden Netzknoten gespeichert ist, eine Anforderung für das am besten geeignete Modell zur Entfernung von Bildartefakten vom empfangenden Knoten an den Standort der Modellbibliothek übertragen werden. In solchen Fällen überträgt die Modellbibliothek dann das entsprechende Modell zur Beseitigung von Bildartefakten an den empfangenden Netzknoten. Wenn in der Bibliothek kein geeignetes Modell zur Entfernung von Bildartefakten gespeichert ist, kann in einigen dieser Ausführungsformen stattdessen ein allgemeines Modell verwendet werden.
  • In einigen Ausführungsformen wird das für jede Szene ermittelte Modell zur Entfernung von Bildartefakten dann in Schritt 2450 auf die heruntergerechnete Szene angewandt, um das vom Sendeknoten übertragene ursprüngliche heruntergerechnete Bild im Wesentlichen wiederherzustellen. In anderen Ausführungsformen kann das ermittelte Modell nach dem Hochskalierungsprozess in Schritt 2460 verwendet werden, um die hochskalierten Bildartefakte aus dem neu erstellten Video mit höherer Auflösung weitgehend zu entfernen.
  • In Schritt 2460 werden dann in einigen Ausführungsformen die entsprechenden Rekonstruktionsmodelle auf jede der Szenen angewendet, um Szenen mit höherer Auflösung auszugeben. In solchen Ausführungsformen kann der Rekonstruktions- oder Dekodierungsprozess die Anwendung des optimierten superauflösenden neuronalen Faltungsnetzwerkmodells oder Rekonstruktionsmodells für jede Szene beinhalten, um ein Video oder Bild mit höherer Auflösung wiederherzustellen, das im Wesentlichen die gleiche Qualität aufweist wie das ursprüngliche hochauflösende Video oder Bild, aus dem das heruntergerechnete Video oder Bild durch den übertragenden Knoten erzeugt wurde. Ausgehend von den entsprechenden Rekonstruktionsmodellen und jeder Szene oder jedem Satz von Darstellungen mit niedrigerer Auflösung kann in einigen Ausführungsformen ein Bild mit höherer Auflösung, das visuell im Wesentlichen identisch mit den ursprünglichen Bildern mit höherer Auflösung ist, mit hoher Genauigkeit rekonstruiert werden.
  • In einigen Ausführungsformen wird die rekonstruierte Szene mit höherer Auflösung dann in Schritt 470 vom empfangenden Knoten ausgegeben.
  • Der oben beschriebene Prozess wird als Nachbearbeitung des Standard-Dekompressionsprozesses durchgeführt, der am Dekodierknoten für empfangene Übertragungen von z. B. Video nach dem herkömmlichen Dekodierschritt verwendet wird, und daher zumindest in einigen Ausführungsformen „außerhalb“ der herkömmlichen Kompressionspipeline.
  • Alternativ kann in anderen Ausführungsformen die Beseitigung von Bildartefakten auch als Teil des Hochskalierungsprozesses selbst durchgeführt werden. In solchen Fällen können mehrere Rekonstruktionsmodelle trainiert werden, um das Bild oder Video mit höherer Auflösung am ersten Knotenpunkt aus einer Reihe verschiedener heruntergerechneter Bilder oder Videos mit jeweils unterschiedlichem Artefaktgrad zu reproduzieren. In solchen Fällen können diese entweder alle zusammen mit dem heruntergerechneten Video übertragen werden, oder das erforderliche Modell kann vom ersten Knoten an den zweiten Netzwerkknoten übertragen werden, sobald eine Anforderung für das Modell, das den Artefaktgrad des empfangenen heruntergerechneten Bildes oder Videos enthält, vom zweiten Knoten an den ersten Knoten gesendet wurde. In jedem Fall wird in einigen Ausführungsformen das Modell, das dem Artefaktgrad des empfangenen heruntergerechneten Bildes oder Videos am besten entspricht, verwendet, um das ursprüngliche hochauflösende Video im Wesentlichen wiederherzustellen.
  • Räumlich-zeitliche Interpolation
  • In einigen Ausführungsformen können die empfangenen visuellen Daten von geringerer als der gewünschten Qualität sein, z. B. mit einer niedrigen Auflösung oder einer niedrigen Bildrate. Es wird deutlich, dass andere Merkmale die Qualität der visuellen Daten verschlechtern können. Ein oder mehrere hierarchische Algorithmen können verwendet werden, um die Qualität der visuellen Daten auf eine wünschenswerte Qualität zu erhöhen. In einigen Ausführungsformen kann der hierarchische Algorithmus beispielsweise die Auflösung des oder der empfangenen visuellen Datenabschnitte erhöhen. In einer anderen Ausführungsform kann der hierarchische Algorithmus Zwischenabschnitte entwickeln, z. B. einen Abschnitt, der zwischen zwei empfangene Abschnitte visueller Daten gesetzt wird. In einer weiteren Ausführungsform kann der hierarchische Algorithmus verwendet werden, um die Qualität der empfangenen visuellen Daten durch Kombination der oben genannten Ausführungsformen zu verbessern.
  • Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • In einigen Ausführungsformen können ein oder mehrere hierarchische Algorithmen verwendet werden, um Versionen mit höherer Auflösung von empfangenen Bildern mit niedrigerer Auflösung zu schätzen. In solchen Fällen kann beim Empfang mehrerer Bilder mit niedrigerer Auflösung ein hierarchischer Algorithmus verwendet werden, um eine Version mit höherer Auflösung eines bestimmten empfangenen Bildes zu schätzen. In einigen Ausführungsformen kann beim Empfang von drei oder mehr aufeinanderfolgenden Bildern mit visuellen Daten niedrigerer Auflösung ein hierarchischer Algorithmus verwendet werden, um eine Version mit höherer Auflösung eines der mittleren Bilder zu schätzen. In solchen Fällen kann diese Schätzung nicht nur auf der niedriger aufgelösten Version des empfangenen Bildes beruhen, sondern auch auf der niedriger aufgelösten Version des vorhergehenden und des nachfolgenden Bildes, die ebenfalls empfangen wurden. In anderen Ausführungsformen kann der hierarchische Algorithmus auch verwendet werden, um ein unbekanntes Zwischenbild mit der gleichen Auflösung wie die vorhergehenden und nachfolgenden empfangenen Bilder zu bestimmen.
  • Alternativ kann in einigen anderen Ausführungsformen ein hierarchischer Algorithmus verwendet werden, um höher aufgelöste Versionen der empfangenen Bilder mit niedrigerer Auflösung sowie eine höher aufgelöste Version eines unbekannten Zwischenbildes zu schätzen. In einigen Ausführungsformen kann der hierarchische Algorithmus auch verwendet werden, um ein unbekanntes zukünftiges oder vergangenes Bild auf der Grundlage der empfangenen Bilder mit niedrigerer Auflösung zu schätzen.
  • Online-Training
  • In einigen Ausführungsformen haben neue visuelle Daten, die von einem Knoten an einen oder mehrere andere Knoten übertragen werden, keine hierarchischen Algorithmen, die darauf trainiert sind, eine qualitativ schlechtere Version der neuen visuellen Daten zu verbessern. In einigen Ausführungsformen kann es sich bei diesen neuen visuellen Daten beispielsweise um live übertragene Videodaten handeln, und in einigen Ausführungsformen können die neuen visuellen Daten gestreamte oder gerenderte E-Gaming-Videoinhalte sein. Wenn es keine hierarchischen Algorithmen für diese neuen visuellen Daten gibt, müssen spezifische oder generische hierarchische Algorithmen trainiert werden, um Versionen der neuen visuellen Daten von geringerer Qualität in einigen dieser Ausführungsformen und gemäß einigen der an anderer Stelle beschriebenen Ausführungsformen zu verbessern.
  • In einigen Ausführungsformen können mehrere hierarchische Algorithmen parallel auf denselben visuellen Daten trainiert werden. In solchen Fällen kann innerhalb eines bestimmten Zeitrahmens ein breiteres Spektrum hierarchischer Algorithmen erprobt werden. In einigen dieser Ausführungsformen kann der am besten geeignete Algorithmus aus diesen entwickelten Algorithmen für die Übertragung über das Netzwerk mit den visuellen Daten ausgewählt werden. In einigen Ausführungsformen kann die parallele Entwicklung der hierarchischen Algorithmen in Situationen nützlich sein, in denen nur eine begrenzte Zeit für die Entwicklung des hierarchischen Algorithmus zur Verfügung steht.
  • Parallel zur Entwicklung von hierarchischen Algorithmen (einzeln oder mehrfach parallel) können in einigen Ausführungsformen die visuellen Daten in einem Kodierer kodiert werden, um ihre Übertragung über das Netz vorzubereiten. Auf diese Weise kann die Zeit, die für die Vorbereitung sowohl des hierarchischen Algorithmus als auch der visuellen Daten für die Übertragung benötigt wird, im Vergleich zur Entwicklung des hierarchischen Algorithmus und der seriellen Kodierung der visuellen Daten in solchen Ausführungsformen reduziert werden.
  • Sobald generische oder spezifische hierarchische Algorithmen entwickelt oder trainiert wurden, z. B. für ein neues Spiel, das als E-Gaming-Videoinhalt gestreamt wird, können diese verwendet werden, um die Qualität der gestreamten visuellen Daten geringerer Qualität an den Empfangsknoten zu verbessern.
  • Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind
  • Offline-Training
  • In einigen Ausführungsformen haben neue visuelle Daten, die von einem Knoten zu einem oder mehreren anderen Knoten übertragen werden sollen, keine hierarchischen Algorithmen, die darauf trainiert sind, eine qualitativ schlechtere Version der neuen visuellen Daten zu verbessern. In einigen Ausführungsformen kann es sich bei diesen neuen visuellen Daten beispielsweise um neue Videodaten wie einen neuen Film oder eine neue Fernsehserie handeln, und in einigen Ausführungsformen kann es sich bei den neuen visuellen Daten um ein Computerspiel handeln, das in Zukunft zur Erzeugung von gestreamten E-Gaming-Videoinhalten verwendet werden soll. Wenn es keine hierarchischen Algorithmen für diese neuen visuellen Daten gibt, müssen spezifische oder generische hierarchische Algorithmen trainiert werden, um Versionen der neuen visuellen Daten von geringerer Qualität in einigen dieser Ausführungsformen und gemäß einigen der anderswo beschriebenen Ausführungsformen zu verbessern.
  • Häufig werden die visuellen Daten vor der Übertragung über das Netz kodiert, wobei in bestimmten Fällen ein Kodierer verwendet wird. Der Kodierungsprozess kann in solchen Fällen zu kodierungsspezifischen Artefakten in den visuellen Daten führen. Durch Verfeinerung des hierarchischen Algorithmus durch weitere Trainingsschritte für das kodierte Video in einigen Ausführungsformen kann der hierarchische Algorithmus so trainiert werden, dass er durch den Kodierer eingeführte Bildartefakte im Wesentlichen korrigiert.
  • In einigen Ausführungsformen können die hierarchischen Algorithmen mit Trainingsdaten trainiert werden, die genau den visuellen Daten entsprechen, die über das Netz übertragen werden sollen. In solchen Ausführungsformen kann dieser Ansatz besonders in Situationen nützlich sein, in denen die visuellen Daten im Voraus bekannt sind und in denen die visuellen Daten wahrscheinlich mehrfach über das Netz übertragen werden. In einigen Ausführungsformen können die hierarchischen Modelle beispielsweise anhand von Abschnitten einer Episode einer Fernsehsendung trainiert werden, die über einen On-Demand-Streaming-Dienst verfügbar gemacht wird. In solchen Fällen können die Modelle, die für diese bestimmte Episode trainiert wurden, zusammen mit den visuellen Daten geringerer Qualität übertragen werden und dazu verwendet werden, die visuellen Daten geringerer Qualität zu einer Version höherer Qualität dieser Episode zu verbessern.
  • Alternativ können in anderen Ausführungsformen die hierarchischen Algorithmen auch auf Trainingsdaten trainiert werden, die den erwarteten visuellen Daten, auf die sie angewendet werden sollen, ähnlich, aber nicht identisch sind. In einer solchen Ausführungsform können diese trainierten Modelle mit metrischen Daten verknüpft werden, die sich auf die Eigenschaften der visuellen Daten beziehen, auf denen sie trainiert wurden. In einigen dieser Ausführungsformen können diese metrischen Daten später zur Auswahl eines geeigneten hierarchischen Algorithmus verwendet werden, um visuelle Daten zu verbessern, für die kein spezifisches Modell trainiert wurde. In einigen Fällen werden visuelle Daten im Wesentlichen gleichzeitig erzeugt und über das Netz übertragen, beispielsweise während einer Live-Übertragung. In solchen Fällen kann es sein, dass nicht genügend Zeit zur Verfügung steht, um einen spezifischen hierarchischen Algorithmus für die visuellen Daten zu erstellen, ohne die Live-Übertragung wesentlich zu verzögern. In solchen Fällen kann die Auswahl eines hierarchischen Algorithmus, der zuvor mit ähnlichen visuellen Daten trainiert wurde, diese Verzögerung verringern.
  • Sobald hierarchische Algorithmen trainiert wurden, um Versionen der neuen visuellen Daten von geringerer Qualität zu verbessern, können diese gespeichert werden, um mit den visuellen Daten gesendet zu werden, oder sie können an die empfangenden Knoten verteilt werden, bevor die visuellen Daten gesendet werden, je nach Ausführungsform.
  • Diese Ausführungsformen können in Kombination mit anderen Ausführungsformen und alternativen und optionalen Teilen von Ausführungsformen verwendet werden, die an anderer Stelle in dieser Spezifikation beschrieben sind.
  • Strided Convolutions
  • 18 zeigt optional ein alternatives Verfahren 1800 des in 15 dargestellten Verfahrens 1500 gemäß einigen Ausführungsformen. In diesen Ausführungsformen kann, nachdem die visuellen Daten 1510 in Schritt 1520 in Einzelbilder zerlegt worden sind, die Dimension der extrahierten Bilder mit voller Auflösung 2110 in Schritt 1810 auf der Grundlage mindestens eines vorbestimmten Faktors reduziert werden. In diesen Ausführungsformen kann in Schritt 1810 der mindestens eine vorbestimmte Faktor verwendet werden, um einzelne Pixel aus den extrahierten Bildern 2110 mit voller Auflösung auszuwählen, um eine Darstellung 2120 mit niedrigerer Auflösung der extrahierten Bilder 2110 mit voller Auflösung zu bilden. Zum Beispiel kann in einigen Ausführungsformen ein vorbestimmter Faktor von 2 bedeuten, dass jedes zweite Pixel sowohl in der horizontalen als auch in der vertikalen Dimension ausgewählt wird, wie in 21 gezeigt. Es wird deutlich, dass in anderen Ausführungsformen andere Werte des vorbestimmten Faktors verwendet werden können, und dass in einigen dieser anderen Ausführungsformen sowohl auf die horizontale als auch auf die vertikale Dimension jeweils ein anderer vorbestimmter Faktor angewendet werden kann.
  • In einigen Ausführungsformen können die visuellen Daten mit reduzierter Dimension in Schritt 1820 verkettet werden, um eine Darstellung 2120 mit geringerer Auflösung der extrahierten Bilder mit voller Auflösung 2110 zu bilden. In diesen Ausführungsformen kann die Darstellung mit geringerer Auflösung 2120 dann als Grundlage für beliebige Bildverbesserungstechniken und -analysen verwendet werden, was die Verwendung größerer hochauflösender Netzwerke ohne Beeinträchtigung der Laufzeit ermöglicht. In einigen Ausführungsformen können verschiedene vorbestimmte Faktoren und Größen von hochauflösenden Netzwerken verwendet werden, um eine optimale Leistung zu erzielen.
  • Alternativ in anderen Ausführungsformen zeigt 19 ein Verfahren 1900, das auf dem in 16 gezeigten Verfahren 1600 basiert. Im Verfahren 1900 dieser anderen Ausführungsformen können die Schritte 1810 und 1820 erfolgen, nachdem die Bilder in Schritt 1610 zu Szenen gruppiert wurden.
  • In 20 ist ein modifiziertes Verfahren 2000 gemäß einigen Ausführungsformen dargestellt (das auf dem Verfahren 1900 basiert, aber auch eine modifizierte Version des Verfahrens 1800 sein könnte).
  • In diesen Ausführungsformen wird der Prozess 1900 durch weitere Schritte modifiziert. Insbesondere kann in einigen dieser Ausführungsformen der Schritt 1710 mit hochauflösenden visuellen Daten beginnen, zum Beispiel mit HD-Auflösung. In Schritt 1720 dieser Ausführungsformen können die visuellen Daten dann z. B. auf eine SD-Auflösung heruntergerechnet werden, um die Übertragung über ein Netzwerk mit eingeschränkter Bandbreite zu ermöglichen. In Schritt 1730 dieser Ausführungsformen können die visuellen Daten mit niedrigerer Auflösung über ein Netzwerk übertragen werden und werden so zu den visuellen Eingangsdaten 310 des Prozesses 1800 oder 1900, die oben in Bezug auf die 18 bzw. 19 beschrieben wurden.
  • Spezifische Beschreibung - Flexibilität der beschriebenen Aspekte und Ausführungsformen
  • Jedes hier beschriebene Systemmerkmal kann auch als Verfahrensmerkmal bereitgestellt werden und umgekehrt.
  • Wie hier verwendet, können Mittel plus Funktion Merkmale alternativ auch durch ihre entsprechende Struktur ausgedrückt werden.
  • Insbesondere können Verfahrensaspekte auf Systemaspekte angewandt werden und umgekehrt.
  • Darüber hinaus können alle, einige und/oder alle Merkmale eines Aspekts auf alle, einige und/oder alle Merkmale eines anderen Aspekts in jeder geeigneten Kombination angewendet werden.
  • Es sollte auch gewürdigt werden, dass bestimmte Kombinationen der verschiedenen Merkmale, die in jedem Aspekt der Erfindung beschrieben und definiert sind, unabhängig voneinander implementiert und/oder bereitgestellt und/oder verwendet werden können.
  • In alternativen Ausführungsformen kann es sich bei den betreffenden visuellen Eingangsdaten um Medien zur Wiedergabe handeln, wie z. B. aufgezeichnete visuelle Daten oder live gestreamte visuelle Daten, oder es kann sich um Videokonferenzvideo oder eine andere visuelle Datenquelle handeln, wie z. B. ein Video, das auf einem tragbaren Gerät wie einem Mobiltelefon oder einem Videoaufzeichnungsgerät wie einer Videokamera oder Überwachungskamera aufgezeichnet wurde oder wird.
  • Es sollte auch gewürdigt werden, dass der Begriff „visuelle Daten“ sich auch auf ein einzelnes Bild, eine Bildfolge, ein Video oder einen Abschnitt visueller Daten beziehen kann.
  • Es sollte weiter gewürdigt werden, dass der Begriff „Verbesserung“ sich auch auf die Hochskalierung, die Erhöhung der Auflösung und/oder der Qualität der visuellen Daten beziehen kann. Verweise auf die Verbesserung oder Erhöhung der Qualität visueller Daten können sich auf die Hochskalierung oder die Verwendung von Verbesserungstechniken der beschriebenen möglichen Ausführungsformen beziehen. Verweise auf Downsampling können sich auf die Verringerung der Auflösung und/oder der Qualität der visuellen Daten beziehen (z. B. durch Quantisierung, um die Bitrate der visuellen Daten zu verringern).
  • Es sollte auch gewürdigt werden, dass der Begriff „Bild“ sich sowohl auf ein ganzes Bild eines Videos als auch auf einen Bereich beziehen kann, der einen kleineren Abschnitt eines Bildes umfasst, insbesondere wenn es darum geht, mehrere Bilder zu Szenen zusammenzufassen.
  • In einigen Aspekten und/oder Ausführungsformen können die Begriffe Algorithmen und/oder Modelle und/oder Parameter austauschbar verwendet oder gegeneinander ausgetauscht werden. Darüber hinaus können in bestimmten Aspekten und/oder Ausführungsformen die Begriffe hierarchischer Algorithmus, hierarchisches Modell und hierarchischer Parameter mit den Begriffen konvolutionäre neuronale Netze und/oder Modell eines konvolutionären neuronalen Netzes, Algorithmus eines konvolutionären neuronalen Netzes und Parameter eines konvolutionären neuronalen Netzes ausgetauscht werden. Diese Spezifikation sieht auch den Gegenstand der folgenden Klauseln vor::
    • Klausel 1. Verfahren zum Verbessern mindestens eines Abschnitts visueller Daten geringerer Qualität unter Verwendung eines hierarchischen Algorithmus, wobei das Verfahren die folgenden Schritte umfasst Empfangen mindestens eines Abschnitts von visuellen Daten geringerer Qualität; Extrahieren einer Teilmenge von Merkmalen aus dem mindestens einen Abschnitt von visuellen Daten geringerer Qualität; Bilden einer Vielzahl von Schichten von visuellen Daten mit reduzierter Dimension aus den extrahierten Merkmalen; und Verbessern der Vielzahl von Schichten visueller Daten mit reduzierter Dimension, um mindestens einen Abschnitt visueller Daten höherer Qualität zu bilden, wobei der mindestens eine Abschnitt visueller Daten höherer Qualität dem mindestens einen Abschnitt empfangener visueller Daten geringerer Qualität entspricht.
    • Klausel 2. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die extrahierte Teilmenge von Merkmalen von einem oder mehreren vorbestimmten Faktoren abhängig ist.
    • Klausel 3. Verfahren nach Klausel 2, wobei die Anzahl der Schichten von einem oder mehreren vorbestimmten Faktoren abhängig ist.
    • Klausel 4. Verfahren nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus für jeden Abschnitt der visuellen Daten unterschiedlich ist.
    • Klausel 5. Verfahren nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus aus einer Bibliothek von Algorithmen ausgewählt wird.
    • Klausel 6. Verfahren nach Klausel 5, wobei standardisierte Merkmale des mindestens einen Abschnitts der empfangenen visuellen Daten geringerer Qualität extrahiert und zur Auswahl des hierarchischen Algorithmus aus der Bibliothek von Algorithmen verwendet werden.
    • Klausel 7. Verfahren nach einem der Klauseln 5 oder 6, wobei der aus der Bibliothek von Algorithmen auszuwählende hierarchische Algorithmus auf der Erzeugung der qualitativ hochwertigsten Version der visuellen Daten geringerer Qualität basiert, wobei die Qualität vorzugsweise definiert werden kann durch: eine Fehlerrate; eine Bitfehlerrate; ein Spitzensignal-Rausch-Verhältnis; oder einen strukturellen Ähnlichkeitsindex.
    • Klausel 8. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die hierarchischen Algorithmen unter Verwendung eines erlernten Ansatzes entwickelt werden.
    • Klausel 9. Verfahren nach Klausel 8, wobei der erlernte Ansatz maschinelle Lerntechniken umfasst.
    • Klausel 10. Verfahren nach nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus ein nichtlinearer hierarchischer Algorithmus ist.
    • Klausel 11. Verfahren nach Klausel 10, wobei der nichtlineare hierarchische Algorithmus ein oder mehrere neuronale Faltungsnetzwerke umfasst.
    • Klausel 12. Verfahren nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus eine Bildverbesserung durchführt, vorzugsweise unter Verwendung von Superauflösungstechniken.
    • Klausel 13. Verfahren nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus einen räumlich-zeitlichen Ansatz verwendet.
    • Klausel 14. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die visuellen Daten höherer Qualität eine höhere Auflösung aufweisen als die visuellen Daten geringerer Qualität.
    • Klausel 15. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die visuellen Daten geringerer Qualität einen höheren Anteil an Artefakten enthalten als die visuellen Daten höherer Qualität.
    • Klausel 16. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die visuellen Daten eine Vielzahl von Einzelbildern eines Videos oder eine Vielzahl von Bildern umfassen.
    • Klausel 17. Verfahren nach irgendeiner vorhergehenden Klausel, wobei die Verbesserung der Qualität der visuellen Daten eine Hochskalierung der Qualität der visuellen Daten bedeutet.
    • Klausel 18. Verfahren nach irgendeiner vorhergehenden Klausel, wobei ein Abschnitt visueller Daten Folgendes umfasst: ein Einzelbild visueller Daten, eine Folge von Bildern visueller Daten und einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten.
    • Klausel 19. Verfahren nach irgendeiner vorhergehenden Klausel, wobei der hierarchische Algorithmus eine Vielzahl von Schichten umfasst.
    • Klausel 20. Verfahren nach Klausel 19, wobei die Schichten sequentiell, rekurrent, rekursiv, verzweigend oder verschmelzend sind.
    • Klausel 21. Verfahren im Wesentlichen wie oben in bezug auf die 18 bis 21 beschrieben.
    • Klausel 22. Vorrichtung zur Durchführung des Verfahrens nach irgendeiner vorhergehenden Klausel.
    • Klausel 23. Computerprogrammprodukt mit Softwarecode zur Durchführung des Verfahrens nach einem der Klauseln 1 bis 20.

Claims (30)

  1. Vorrichtung, die einen oder mehrere Computer aufweist, wobei der eine oder die mehreren Computer ein neuronales Faltungsnetzwerk speichern und so konfiguriert sind, dass sie Operationen durchführen, die Folgendes aufweisen: Empfangen eines Abschnitts von visuellen Daten mit niedriger Auflösung; Anwenden des neuronalen Faltungsnetzwerks auf den empfangenen Abschnitt von visuellen Daten mit niedriger Auflösung, um den Abschnitt von visuellen Daten mit niedriger Auflösung auf einen Abschnitt von visuellen Daten mit hoher Auflösung hochzuskalieren; und Ausgeben des Abschnitts der visuellen Daten mit hoher Auflösung, wobei das neuronale Faltungsnetzwerk eine Vielzahl von Faltungsschichten aufweist, wobei die Vielzahl von Schichten aufweist: eine anfängliche Merkmalskarten-Extraktionsschicht, die so konfiguriert ist, dass sie anfängliche niedrig aufgelöste Merkmalskarten aus dem Abschnitt von visuellen Daten mit niedriger Auflösung extrahiert; eine oder mehrere aufeinanderfolgende weitere Merkmalskarten-Extraktionsschichten, die so konfiguriert sind, dass sie weitere niedrig aufgelöste Merkmalskarten erzeugen, wobei jede weitere Merkmalskarten-Extraktionsschicht als Eingabe niedrig aufgelöste Merkmalskarten empfängt, die von einer vorangehenden Merkmalskarten-Extraktionsschicht ausgegeben werden; und im Anschluss an die eine oder die mehreren weiteren Merkmalskarten-Extraktionsschichten eine Subpixel-Faltungsschicht, die so konfiguriert ist, dass sie die weiteren niedrig aufgelösten Merkmalskarten hochskaliert, um den Abschnitt von visuellen Daten mit hoher Auflösung zu erzeugen, wobei die Hochskalierung der weiteren niedrig aufgelösten Merkmalskarten zur Erzeugung des Abschnitts von visuellen Daten mit hoher Auflösung Folgendes aufweist: Anwenden eines Faltungsfilters der Größe nL-1 × rZC × kL × kL auf die weiteren Merkmalskarten, wobei nL-1 die Anzahl der weiteren Merkmalskarten ist, C eine Anzahl von Farbkanälen in dem Abschnitt der visuellen Daten mit niedriger Auflösung ist, rein Hochskalierungsverhältnis ist und kL eine Filtergröße ist; und Anwenden eines periodischen Shuffling-Operators auf die Ausgabe des Faltungsfilters, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen.
  2. Die Vorrichtung nach Anspruch 1, wobei der periodische Shuffling-Operator gegeben ist durch: P S ( T ) x , y , c = T [ x r ] , [ y r ] , c r m o d ( y , r ) + c m o d ( x , r )
    Figure DE202016009102U1_0015
    wobei PS(T)i,j,k der Abschnitt von visuellen Daten mit hoher Auflösung in Tensorform ist, T[i],[j],k die Ausgabe des Faltungsfilters in Tensorform ist und x, y und c Indizes sind, die Tensorkomponenten kennzeichnen, die jeweils einer horizontalen Pixelposition, einer vertikalen Pixelposition und einem Farbkanal entsprechen.
  3. Die Vorrichtung nach einem der vorhergehenden Ansprüche, wobei die Subpixel-Faltungsschicht die letzte Schicht in dem neuronalen Faltungsnetzwerk ist.
  4. Die Vorrichtung nach einem der Ansprüche 1 oder 2, wobei die mehreren Faltungsschichten eine oder mehrere weitere Subpixel-Faltungsschichten umfassen, wobei jede weitere Subpixel-Faltungsschicht so konfiguriert ist, dass sie eine weitere Hochskalierungsoperation durchführt, um einen jeweiligen weiteren Abschnitt visueller Daten mit hoher Auflösung mit einer höheren Auflösung als der Abschnitt visueller Daten mit hoher Auflösung zu erzeugen.
  5. Die Vorrichtung nach einem der vorhergehenden Ansprüche, wobei die visuellen Daten mit niedriger Auflösung (710) eines der folgenden Elemente umfassen: ein einzelnes Bild visueller Daten; eine Folge von Bildern visueller Daten; einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten; ein Bild; oder ein Video.
  6. Die Vorrichtung nach einem der vorhergehenden Ansprüche, wobei: der Abschnitt der visuellen Daten mit niedriger Auflösung eine Vielzahl von Bildern von Videodaten mit niedriger Auflösung umfasst; wobei die anfängliche Merkmalskarten-Extraktionsschicht so konfiguriert ist, dass sie die Vielzahl von Bildern von Videodaten unter Verwendung von räumlich-zeitlichen Faltungen gemeinsam verarbeitet, um die anfänglichen Merkmalskarten mit niedriger Auflösung zu extrahieren; und wobei der Abschnitt visueller Daten mit hoher Auflösung ein Videobild mit hoher Auflösung umfasst, das einem mittleren Bild der Vielzahl von Bildern der Videodaten mit niedriger Auflösung entspricht.
  7. Die Vorrichtung nach Anspruch 6, wobei die Vielzahl von Bildern von Videodaten mit niedriger Auflösung unter Verwendung einer festen zeitlichen Abtastung aus einem Eingangsvideo erhalten wird.
  8. Vorrichtung, die einen oder mehrere Computer aufweist, wobei der eine oder die mehreren Computer ein neuronales Faltungsnetzwerk speichern und so konfiguriert sind, dass sie Operationen durchführen, die Folgendes aufweisen: Empfangen einer Vielzahl von Abschnitten visueller Daten mit niedriger Auflösung, die von einer entsprechenden Vielzahl von Abschnitten visueller Daten mit hoher Auflösung der Grundwahrheit herunterskaliert oder herabgetastet werden; Anwenden des neuronalen Faltungsnetzwerks auf die empfangene Vielzahl von visuellen Daten mit niedriger Auflösung, um den Abschnitt der visuellen Daten mit niedriger Auflösung auf eine Vielzahl von Abschnitten der visuellen Daten mit hoher Auflösung hochzuskalieren; Vergleichen der Vielzahl von Abschnitten visueller Daten mit hoher Auflösung mit der entsprechenden Vielzahl von Abschnitten visueller Daten mit hoher Auflösung der Grundwahrheit unter Verwendung einer Zielfunktion; und Aktualisieren lernfähiger Filter des neuronalen Faltungsnetzwerks auf der Grundlage des Vergleichs, wobei das neuronale Faltungsnetzwerk eine Vielzahl von Faltungsschichten aufweist, wobei die Vielzahl von Schichten aufweist: eine anfängliche Merkmalskarten-Extraktionsschicht, die so konfiguriert ist, dass sie anfängliche niedrig aufgelöste Merkmalskarten aus dem Abschnitt visueller Daten mit niedriger Auflösung extrahiert; eine oder mehrere aufeinanderfolgende weitere Merkmalskarten-Extraktionsschichten, die so konfiguriert sind, dass sie weitere niedrig aufgelöste Merkmalskarten erzeugen, wobei jede weitere Merkmalskarten-Extraktionsschicht als Eingabe niedrig aufgelöste Merkmalskarten empfängt, die von einer vorangehenden Merkmalskarten-Extraktionsschicht ausgegeben wurden; und im Anschluss an die eine oder die mehreren weiteren Merkmalskarten-Extraktionsschichten eine Subpixel-Faltungsschicht, die so konfiguriert ist, dass sie die weiteren niedrig aufgelösten Merkmalskarten hochskaliert, um den Abschnitt von visuellen Daten mit hoher Auflösung zu erzeugen, wobei die Hochskalierung der weiteren niedrig auflösenden Merkmalskarten zur Erzeugung des Abschnitts von visuellen Daten mit hoher Auflösung Folgendes aufweist: Anwenden eines Faltungsfilters der Größe nL-1 × rZC × kL × kL auf die weiteren Merkmalskarten, wobei nL-1 die Anzahl der weiteren Merkmalskarten ist, C eine Anzahl von Farbkanälen in dem Abschnitt der visuellen Daten mit niedriger Auflösung ist, rein Hochskalierungsverhältnis ist und kL eine Filtergröße ist; und Anwenden eines periodischen Shufflings auf die Ausgabe des Faltungsfilters, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen.
  9. Die Vorrichtung nach Anspruch 8, wobei die Operationen ferner das Synthetisieren des Abschnitts der visuellen Daten mit niedriger Auflösung durch Anwenden eines Gauß-Filters und Unterabtastung auf den entsprechenden Abschnitt der visuellen Daten mit hoher Auflösung der Grundwahrheit umfassen.
  10. Die Vorrichtung nach einem der Ansprüche 8 oder 9, wobei die Zielfunktion eine pixelweise mittlere quadratische Fehlerzielfunktion ist.
  11. Die Vorrichtung nach einem der Ansprüche 8 bis 10, wobei der periodische Shuffling-Operator gegeben ist durch: P S ( T ) x , y , c = T [ x r ] , [ y r ] , c r m o d ( y , r ) + c m o d ( x , r )
    Figure DE202016009102U1_0016
    wobei PS(T)i,j,k der Abschnitt der hochauflösenden visuellen Daten in Tensorform ist, T[i],[j],k die Ausgabe des Faltungsfilters in Tensorform ist und x, y und c Indizes sind, die Tensorkomponenten bezeichnen, die jeweils einer horizontalen Pixelposition, einer vertikalen Pixelposition und einem Farbkanal entsprechen.
  12. Die Vorrichtung nach einem der Ansprüche 8 bis 11, wobei die Subpixel-Faltungsschicht die letzte Schicht in dem neuronalen Faltungsnetzwerk ist.
  13. Die Vorrichtung nach einem der Ansprüche 8 bis 12, wobei die visuellen Daten mit niedriger Auflösung (710) eines der folgenden Elemente umfassen: ein einzelnes Bild visueller Daten; eine Folge von Bildern visueller Daten; einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten; ein Bild; oder ein Video.
  14. Die Vorrichtung nach einem der Ansprüche 8 bis 13, wobei: der Abschnitt der visuellen Daten mit niedriger Auflösung eine Vielzahl von Bildern von Videodaten mit niedriger Auflösung umfasst; wobei die anfängliche Merkmalskarten-Extraktionsschicht so konfiguriert ist, dass sie die Vielzahl von Bildern von Videodaten unter Verwendung von räumlich-zeitlichen Faltungen gemeinsam verarbeitet, um die anfänglichen Merkmalskarten mit niedriger Auflösung zu extrahieren; und wobei der Abschnitt der visuellen Daten mit hoher Auflösung ein Videobild mit hoher Auflösung umfasst, das einem mittleren Bild der Vielzahl von Bildern der Videodaten mit niedriger Auflösung entspricht.
  15. Die Vorrichtung nach Anspruch 14, wobei die Vielzahl von Bildern von Videodaten mit niedriger Auflösung unter Verwendung einer festen zeitlichen Abtastung aus einem Eingangsvideo erhalten wird.
  16. Nicht-transitorisches computerlesbares Medium, das computerlesbare Anweisungen speichert, die, wenn sie von einem System mit einem oder mehreren Computern ausgeführt werden, das System veranlassen, ein Verfahren durchzuführen, das Folgendes aufweist: Empfangen eines Abschnitts von visuellen Daten mit niedriger Auflösung; Anwenden des neuronalen Faltungsnetzwerks auf den empfangenen Abschnitt der visuellen Daten mit niedriger Auflösung, um den Abschnitt der visuellen Daten mit niedriger Auflösung auf einen Abschnitt von visuellen Daten mit hoher Auflösung hochzuskalieren; und Ausgeben des Abschnitts der visuellen Daten mit hoher Auflösung, wobei das neuronale Faltungsnetzwerk eine Vielzahl von Faltungsschichten aufweist, wobei die Vielzahl von Schichten aufweist: eine anfängliche Merkmalskarten-Extraktionsschicht, die so konfiguriert ist, dass sie anfängliche niedrig aufgelöste Merkmalskarten aus dem Abschnitt visueller Daten mit niedriger Auflösung extrahiert; eine oder mehrere aufeinanderfolgende weitere Merkmalskarten-Extraktionsschichten, die so konfiguriert sind, dass sie weitere niedrig aufgelöste Merkmalskarten erzeugen, wobei jede weitere Merkmalskarten-Extraktionsschicht als Eingabe niedrig aufgelöste Merkmalskarten empfängt, die von einer vorangehenden Merkmalskarten-Extraktionsschicht ausgegeben werden; und im Anschluss an die eine oder die mehreren weiteren Merkmalskarten-Extraktionsschichten eine Subpixel-Faltungsschicht, die so konfiguriert ist, dass sie die weiteren niedrig aufgelösten Merkmalskarten hochskaliert, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen, wobei die Hochskalierung der weiteren niedrig aufgelösten Merkmalskarten zur Erzeugung des Abschnitts der visuellen Daten mit hoher Auflösung Folgendes aufweist: Anwenden eines Faltungsfilters der Größe nL-1 × rZC × kL × kL auf die weiteren Merkmalskarten, wobei nL-1 i die Anzahl der weiteren Merkmalskarten ist, C eine Anzahl von Farbkanälen in dem Abschnitt der visuellen Daten mit niedriger Auflösung ist, rein Hochskalierungsverhältnis ist und kL eine Filtergröße ist; und Anwenden eines periodischen Shuffling-Operators auf die Ausgabe des Faltungsfilters, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen.
  17. Das nicht-transitorische computerlesbare Medium nach Anspruch 16, wobei der periodische Shuffling-Operator gegeben ist durch: P S ( T ) x , y , c = T [ x r ] , [ y r ] , c r m o d ( y , r ) + c m o d ( x , r )
    Figure DE202016009102U1_0017
    wobei PS(T)i,j,k der Abschnitt der visuellen Daten mit hoher Auflösung in Tensorform ist, T[i],[j],k die Ausgabe des Faltungsfilters in Tensorform ist und x, y und c Indizes sind, die Tensorkomponenten bezeichnen, die jeweils einer horizontalen Pixelposition, einer vertikalen Pixelposition und einem Farbkanal entsprechen.
  18. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 16 oder 17, wobei die Subpixel-Faltungsschicht die letzte Schicht in dem neuronalen Faltungsnetzwerk ist.
  19. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 16 oder 17, wobei die Vielzahl von Faltungsschichten eine oder mehrere weitere Subpixel-Faltungsschichten umfasst, wobei jede weitere Subpixel-Faltungsschicht so konfiguriert ist, dass sie eine weitere Hochskalierungsoperation durchführt, um einen weiteren Abschnitt von visuellen Daten mit hoher Auflösung mit einer höheren Auflösung als der Abschnitt von visuellen Daten mit hoher Auflösung zu erzeugen.
  20. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 16 bis 19, wobei die visuellen Daten mit niedriger Auflösung (710) eines der folgenden Elemente umfassen: ein einzelnes Bild visueller Daten; eine Folge von Bildern visueller Daten; einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten; ein Bild; oder ein Video.
  21. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 16 bis 20, wobei: der Abschnitt der visuellen Daten mit niedriger Auflösung eine Vielzahl von Bildern von Videodaten mit niedriger Auflösung umfasst; wobei die anfängliche Merkmalskarten-Extraktionsschicht so konfiguriert ist, dass sie die Vielzahl von Bildern von Videodaten unter Verwendung von räumlich-zeitlichen Faltungen gemeinsam verarbeitet, um die anfänglichen Merkmalskarten mit niedriger Auflösung zu extrahieren; und wobei der Abschnitt der visuellen Daten mit hoher Auflösung ein Videobild miot hoher Auflösung umfasst, das einem mittleren Bild der Vielzahl von Bildern der Videodaten mit niedriger Auflösung entspricht.
  22. Das nicht-transitorische computerlesbare Medium nach Anspruch 21, wobei die Vielzahl von Bildern von Videodaten mit niedriger Auflösung unter Verwendung einer festen zeitlichen Abtastung aus einem Eingangsvideo erhalten wird.
  23. Nicht-transitorisches computerlesbares Medium, das computerlesbare Anweisungen speichert, die, wenn sie von einem System mit einem oder mehreren Computern ausgeführt werden, das System veranlassen, ein Verfahren durchzuführen, das Folgendes aufweist: Empfangen einer Vielzahl von Abschnitten visueller Daten mit niedriger Auflösung, die von einer entsprechenden Vielzahl von Abschnitten visueller Daten mit hoher Auflösung der Grundwahrheit herunterskaliert oder herabgetastet werden; Anwenden des neuronalen Faltungsnetzwerks auf die empfangene Vielzahl von visuellen Daten mit niedriger Auflösung, um den Abschnitt der visuellen Daten mit niedriger Auflösung auf eine Vielzahl von Abschnitten der visuellen Daten mit hoher Auflösung hochzuskalieren; Vergleichen der Vielzahl von Abschnitten visueller Daten mit hoher Auflösung mit der entsprechenden Vielzahl von Abschnitten visueller Daten mit hoher Auflösung der Grundwahrheit unter Verwendung einer Zielfunktion; und Aktualisieren lernfähiger Filter des neuronalen Faltungsnetzwerks auf der Grundlage des Vergleichs, wobei das neuronale Faltungsnetzwerk eine Vielzahl von Faltungsschichten umfasst, wobei die Vielzahl von Schichten umfasst: eine anfängliche Merkmalskarten-Extraktionsschicht, die so konfiguriert ist, dass sie anfängliche niedrig aufgelöste Merkmalskarten aus dem Abschnitt visueller Daten mit niedriger Auflösung extrahiert; eine oder mehrere aufeinanderfolgende weitere Merkmalskarten-Extraktionsschichten, die so konfiguriert sind, dass sie weitere niedrig aufgelöste Merkmalskarten erzeugen, wobei jede weitere Merkmalskarten-Extraktionsschicht als Eingabe niedrig aufgelöste Merkmalskarten empfängt, die von einer vorangehenden Merkmalskarten-Extraktionsschicht ausgegeben wurden; und im Anschluss an die eine oder die mehreren weiteren Merkmalskarten-Extraktionsschichten eine Subpixel-Faltungsschicht, die so konfiguriert ist, dass sie die weiteren niedrig aufgelösten Merkmalskarten hochskaliert, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen, wobei die Hochskalierung der weiteren niedrig aufgelösten Merkmalskarten zur Erzeugung des Abschnitts der visuellen Daten mit hoher Auflösung Folgendes umfasst: Anwenden eines Faltungsfilters der Größe nL-1 × rZC × kL × kL auf die weiteren Merkmalskarten, wobei nL-1 die Anzahl der weiteren Merkmalskarten ist, C eine Anzahl von Farbkanälen in dem Abschnitt der visuellen Daten mit niedriger Auflösung ist, r ein Hochskalierungsverhältnis ist und kL eine Filtergröße ist; und Anwenden eines periodischen Shufflings auf die Ausgabe des Faltungsfilters, um den Abschnitt der visuellen Daten mit hoher Auflösung zu erzeugen.
  24. Das nicht-transitorische computerlesbare Medium nach Anspruch 23, wobei die Operationen ferner das Synthetisieren des Abschnitts der visuellen Daten mit niedriger Auflösung durch Anwenden eines Gauß-Filters und einer Unterabtastung auf den entsprechenden Abschnitt der visuellen Daten mit hoher Auflösung der Grundwahrheit umfassen.
  25. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 23 oder 24, wobei die Zielfunktion eine pixelweise mittlere quadratische Fehlerzielfunktion ist.
  26. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 23 bis 25, wobei der periodische Shuffling-Operator gegeben ist durch: P S ( T ) x , y , c = T [ x r ] , [ y r ] , c r m o d ( y , r ) + c m o d ( x , r )
    Figure DE202016009102U1_0018
    wobei PS(T)i,j,k der Abschnitt der hochauflösenden visuellen Daten in Tensorform ist, T[i],[j],k die Ausgabe des Faltungsfilters in Tensorform ist und x, y und c Indizes sind, die Tensorkomponenten bezeichnen, die jeweils einer horizontalen Pixelposition, einer vertikalen Pixelposition und einem Farbkanal entsprechen.
  27. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 23 bis 26, wobei die Subpixel-Faltungsschicht die letzte Schicht in dem neuronalen Faltungsnetzwerk ist.
  28. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 23 bis 26, wobei die visuellen Daten mit niedriger Auflösung (710) Folgendes aufweisen: ein einzelnes Bild visueller Daten; eine Folge von Bildern visueller Daten; einen Bereich innerhalb eines Bildes oder einer Folge von Bildern visueller Daten; ein Bild; oder ein Video.
  29. Das nicht-transitorische computerlesbare Medium nach einem der Ansprüche 23 bis 28, wobei: der Abschnitt der visuellen Daten mit niedriger Auflösung eine Vielzahl von Bildern von Videodaten mit niedriger Auflösung umfasst; wobei die anfängliche Merkmalskarten-Extraktionsschicht so konfiguriert ist, dass sie die Vielzahl von Bildern von Videodaten unter Verwendung von räumlich-zeitlichen Faltungen gemeinsam verarbeitet, um die anfänglichen Merkmalskarten mit niedriger Auflösung zu extrahieren; und wobei der Abschnitt der visuellen Daten mit hoher Auflösung ein hochauflösendes Videobild umfasst, das einem mittleren Bild der Vielzahl von Bildern der Videodaten mit nierdriger Auflösung entspricht.
  30. Das nicht-transitorische computerlesbare Medium nach Anspruch 29, wobei die Vielzahl von Bildern von Videodaten mit niedriger Auflösung unter Verwendung einer festen zeitlichen Abtastung aus einem Eingangsvideo erhalten wird.
DE202016009102.7U 2015-02-19 2016-02-19 Verbesserung visueller Daten mittels gestufter Faltungen Active DE202016009102U1 (de)

Applications Claiming Priority (16)

Application Number Priority Date Filing Date Title
GB201502753 2015-02-19
GB201502753A GB201502753D0 (en) 2015-02-19 2015-02-19 Method for encoding and decoding video data
GB201503427 2015-02-27
GB201503427A GB201503427D0 (en) 2015-02-27 2015-02-27 Method for adaptive upscaling of video data
GB201505544 2015-03-31
GBGB1505544.5A GB201505544D0 (en) 2015-03-31 2015-03-31 Method for accelerating machine optimisation processes or algorithms
GB201507141 2015-04-27
GBGB1507141.8A GB201507141D0 (en) 2015-04-27 2015-04-27 Method for encoding and decoding video data using reconstruction libraries
GB201508742 2015-05-21
GBGB1508742.2A GB201508742D0 (en) 2015-05-21 2015-05-21 A method for encoding and decoding video data
GBGB1511231.1A GB201511231D0 (en) 2015-06-25 2015-06-25 Method for real-time encoding and decoding of video data
GB201511231 2015-06-25
GBGB1519425.1A GB201519425D0 (en) 2015-11-03 2015-11-03 Image fidelity correction and restoration
GB201519425 2015-11-03
GB201519687 2015-11-06
GBGB1519687.6A GB201519687D0 (en) 2015-02-19 2015-11-06 Method for encoding and decoding video data

Publications (1)

Publication Number Publication Date
DE202016009102U1 true DE202016009102U1 (de) 2022-04-22

Family

ID=56688725

Family Applications (6)

Application Number Title Priority Date Filing Date
DE202016009102.7U Active DE202016009102U1 (de) 2015-02-19 2016-02-19 Verbesserung visueller Daten mittels gestufter Faltungen
DE202016009101.9U Active DE202016009101U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009100.0U Active DE202016009100U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009089.6U Active DE202016009089U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009091.8U Active DE202016009091U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009107.8U Active DE202016009107U1 (de) 2015-02-19 2016-02-19 Visuelle Verarbeitung durch zeitliche und räumliche Interpolation

Family Applications After (5)

Application Number Title Priority Date Filing Date
DE202016009101.9U Active DE202016009101U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009100.0U Active DE202016009100U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009089.6U Active DE202016009089U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009091.8U Active DE202016009091U1 (de) 2015-02-19 2016-02-19 Online-Training von hierarchischen Algorithmen
DE202016009107.8U Active DE202016009107U1 (de) 2015-02-19 2016-02-19 Visuelle Verarbeitung durch zeitliche und räumliche Interpolation

Country Status (6)

Country Link
US (10) US10887613B2 (de)
EP (11) EP3259919A1 (de)
DE (6) DE202016009102U1 (de)
ES (2) ES2873845T3 (de)
GB (5) GB2539846B (de)
WO (10) WO2016132152A1 (de)

Families Citing this family (282)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
WO2016132152A1 (en) 2015-02-19 2016-08-25 Magic Pony Technology Limited Interpolating visual data
RU2596062C1 (ru) 2015-03-20 2016-08-27 Автономная Некоммерческая Образовательная Организация Высшего Профессионального Образования "Сколковский Институт Науки И Технологий" Способ коррекции изображения глаз с использованием машинного обучения и способ машинного обучения
GB201604672D0 (en) 2016-03-18 2016-05-04 Magic Pony Technology Ltd Generative methods of super resolution
GB201603144D0 (en) 2016-02-23 2016-04-06 Magic Pony Technology Ltd Training end-to-end video processes
GB201604345D0 (en) 2016-03-14 2016-04-27 Magic Pony Technology Ltd Super resolution using fidelity transfer
EP3278559B1 (de) 2015-03-31 2021-05-05 Magic Pony Technology Limited Training von end-zu-end-videoverfahren
WO2017120247A1 (en) 2016-01-05 2017-07-13 Reald Spark, Llc Gaze correction of multi-view images
US10373019B2 (en) * 2016-01-13 2019-08-06 Ford Global Technologies, Llc Low- and high-fidelity classifiers applied to road-scene images
US10402700B2 (en) * 2016-01-25 2019-09-03 Deepmind Technologies Limited Generating images using neural networks
EP3395073A4 (de) * 2016-02-04 2019-04-10 Mediatek Inc. Verfahren und vorrichtung für nichtlokale adaptive in-schleifen-filter bei der videocodierung
US11755913B2 (en) * 2016-03-11 2023-09-12 Telecom Italia S.P.A Convolutional neural networks, particularly for image analysis
US10387743B2 (en) * 2016-03-16 2019-08-20 Ramot At Tel-Aviv University Ltd. Reconstruction of high-quality images from a binary sensor array
US10089717B2 (en) * 2016-04-05 2018-10-02 Flipboard, Inc. Image scaling using a convolutional neural network
WO2017178808A1 (en) 2016-04-12 2017-10-19 Magic Pony Technology Limited Visual data processing using energy networks
WO2017178782A1 (en) 2016-04-15 2017-10-19 Magic Pony Technology Limited Motion compensation using temporal picture interpolation
GB201608259D0 (en) 2016-05-11 2016-06-22 Magic Pony Technology Ltd Feature transfer
US10319076B2 (en) * 2016-06-16 2019-06-11 Facebook, Inc. Producing higher-quality samples of natural images
CN106447609A (zh) * 2016-08-30 2017-02-22 上海交通大学 一种基于深度卷积神经网络的图像超分辨方法
CN106355579A (zh) * 2016-09-14 2017-01-25 南京理工大学 烟条表面褶皱的缺陷检测方法
CN109952598B (zh) * 2016-09-18 2023-08-04 耶达研究及发展有限公司 基于荧光照明来生成3d图像的系统和方法
CN109952581A (zh) 2016-09-28 2019-06-28 D5A1有限责任公司 用于机器学习系统的学习教练
KR102384234B1 (ko) * 2016-10-26 2022-04-07 삼성전자주식회사 영상처리장치, 영상처리방법 및 컴퓨터 판독가능 기록 매체
US10289951B2 (en) 2016-11-02 2019-05-14 Adobe Inc. Video deblurring using neural networks
US10573040B2 (en) * 2016-11-08 2020-02-25 Adobe Inc. Image modification using detected symmetry
US10192295B2 (en) * 2016-11-09 2019-01-29 AI Analysis, Inc. Methods and systems for normalizing images
US10701394B1 (en) 2016-11-10 2020-06-30 Twitter, Inc. Real-time video super-resolution with spatio-temporal networks and motion compensation
CN108133222B (zh) * 2016-12-01 2021-11-02 富士通株式会社 为数据库确定卷积神经网络cnn模型的装置和方法
US10748062B2 (en) 2016-12-15 2020-08-18 WaveOne Inc. Deep learning based adaptive arithmetic coding and codelength regularization
CN106791927A (zh) * 2016-12-23 2017-05-31 福建帝视信息科技有限公司 一种基于深度学习的视频增强与传输方法
CN106686385B (zh) 2016-12-30 2018-09-25 平安科技(深圳)有限公司 视频压缩感知重构方法及装置
US20190205758A1 (en) * 2016-12-30 2019-07-04 Konica Minolta Laboratory U.S.A., Inc. Gland segmentation with deeply-supervised multi-level deconvolution networks
CN106910161B (zh) * 2017-01-24 2020-06-19 华南理工大学 一种基于深度卷积神经网络的单幅图像超分辨率重建方法
CN109074521A (zh) * 2017-02-03 2018-12-21 松下知识产权经营株式会社 学得模型提供方法和学得模型提供装置
WO2018170393A2 (en) * 2017-03-17 2018-09-20 Portland State University Frame interpolation via adaptive convolution and adaptive separable convolution
US10276134B2 (en) 2017-03-22 2019-04-30 International Business Machines Corporation Decision-based data compression by means of deep learning technologies
EP3602316A4 (de) 2017-03-24 2020-12-30 D5A1 Llc Lerntrainer für maschinelles lernsystem
CN108664981B (zh) * 2017-03-30 2021-10-26 北京航空航天大学 显著图像提取方法及装置
US10838922B2 (en) * 2017-03-31 2020-11-17 International Business Machines Corporation Data compression by using cognitive created dictionaries
US10482609B2 (en) 2017-04-04 2019-11-19 General Electric Company Optical flow determination system
US10410322B2 (en) 2017-04-05 2019-09-10 Here Global B.V. Deep convolutional image up-sampling
US11037330B2 (en) 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
US10489887B2 (en) * 2017-04-10 2019-11-26 Samsung Electronics Co., Ltd. System and method for deep learning image super resolution
US10552977B1 (en) 2017-04-18 2020-02-04 Twitter, Inc. Fast face-morphing using neural networks
US11164071B2 (en) * 2017-04-18 2021-11-02 Samsung Electronics Co., Ltd. Method and apparatus for reducing computational complexity of convolutional neural networks
US10922556B2 (en) * 2017-04-28 2021-02-16 Intel Corporation Storage system of DNN outputs for black box
CN107103585B (zh) * 2017-04-28 2020-09-11 广东工业大学 一种图像超分辨率系统
GB201707912D0 (en) * 2017-05-17 2017-06-28 Microsoft Technology Licensing Llc Data compression system
KR102511059B1 (ko) * 2017-05-17 2023-03-17 삼성전자주식회사 동영상의 초해상 처리 방법 및 이를 위한 영상 처리 장치
WO2018212599A1 (en) 2017-05-17 2018-11-22 Samsung Electronics Co., Ltd. Super-resolution processing method for moving image and image processing apparatus therefor
CN108959312B (zh) * 2017-05-23 2021-01-29 华为技术有限公司 一种多文档摘要生成的方法、装置和终端
KR20230035145A (ko) * 2017-05-26 2023-03-10 에이에스엠엘 네델란즈 비.브이. 기계 학습에 기초한 어시스트 피처 배치
EP3635636A4 (de) 2017-06-05 2021-03-24 D5A1 Llc Asynchrone agenten mit lerncoaches und strukturmodifizierten tiefen neuronalen netzen ohne leistungsabfall
CN109218727B (zh) * 2017-06-30 2021-06-25 书法报视频媒体(湖北)有限公司 视频处理的方法和装置
US10776982B2 (en) 2017-07-03 2020-09-15 Artomatix Ltd. Systems and methods for providing non-parametric texture synthesis of arbitrary shape and/or material data in a unified framework
US10986356B2 (en) 2017-07-06 2021-04-20 Samsung Electronics Co., Ltd. Method for encoding/decoding image and device therefor
WO2019009449A1 (ko) * 2017-07-06 2019-01-10 삼성전자 주식회사 영상을 부호화/복호화 하는 방법 및 그 장치
WO2019009490A1 (ko) * 2017-07-06 2019-01-10 삼성전자 주식회사 영상을 부호화/복호화 하는 방법 및 그 장치
US11308361B1 (en) 2017-07-07 2022-04-19 Twitter, Inc. Checkerboard artifact free sub-pixel convolution
US11475542B2 (en) 2017-07-27 2022-10-18 Nvidia Corporation Neural network system with temporal feedback for adaptive sampling and denoising of rendered sequences
US11557022B2 (en) 2017-07-27 2023-01-17 Nvidia Corporation Neural network system with temporal feedback for denoising of rendered sequences
US11861811B2 (en) 2017-07-27 2024-01-02 Nvidia Corporation Neural network system with temporal feedback for denoising of rendered sequences
US10740985B2 (en) 2017-08-08 2020-08-11 Reald Spark, Llc Adjusting a digital representation of a head region
EP3447721A1 (de) * 2017-08-24 2019-02-27 Agfa Nv Verfahren zur erzeugung eines verbesserten tomographischen bildes eines objekts
CN111034183B (zh) * 2017-09-04 2022-05-13 株式会社半导体能源研究所 图像处理方法、半导体装置及电子设备
US11170467B2 (en) * 2017-09-05 2021-11-09 Dish Network L.L.C. Systems and methods for graphics adjustment based on output resolution
US10713535B2 (en) * 2017-09-15 2020-07-14 NovuMind Limited Methods and processes of encrypted deep learning services
US10891715B2 (en) * 2017-09-22 2021-01-12 Continental Automotive Systems, Inc. Deep neural network for image enhancement
US10482575B2 (en) * 2017-09-28 2019-11-19 Intel Corporation Super-resolution apparatus and method for virtual and mixed reality
US10043113B1 (en) * 2017-10-04 2018-08-07 StradVision, Inc. Method and device for generating feature maps by using feature upsampling networks
US9984325B1 (en) * 2017-10-04 2018-05-29 StradVision, Inc. Learning method and learning device for improving performance of CNN by using feature upsampling networks, and testing method and testing device using the same
US11122238B1 (en) * 2017-11-07 2021-09-14 Twitter, Inc. Frame interpolation with multi-scale deep loss functions and generative adversarial networks
WO2019102476A2 (en) * 2017-11-26 2019-05-31 Yeda Research And Development Co. Ltd. Signal enhancement and manipulation using a signal-specific deep network
CN108012157B (zh) * 2017-11-27 2020-02-04 上海交通大学 用于视频编码分数像素插值的卷积神经网络的构建方法
CN108108738B (zh) * 2017-11-28 2018-11-16 北京达佳互联信息技术有限公司 图像处理方法、装置及终端
CN111328448B (zh) * 2017-12-01 2021-08-03 华为技术有限公司 图像处理的方法和设备
US10460259B2 (en) 2017-12-04 2019-10-29 Bank Of America Corporation Dynamic progress recognition and recommendations based on machine learning
US10540574B2 (en) * 2017-12-07 2020-01-21 Shanghai Cambricon Information Technology Co., Ltd Image compression method and related device
US10722210B2 (en) * 2017-12-14 2020-07-28 Siemens Healthcare Gmbh Method for memorable image generation for anonymized three-dimensional medical image workflows
US10579908B2 (en) * 2017-12-15 2020-03-03 Google Llc Machine-learning based technique for fast image enhancement
US11074671B2 (en) * 2017-12-18 2021-07-27 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof
EP3506633A1 (de) * 2017-12-19 2019-07-03 Axis AB Videocodierungsverfahren und -system
CN109961396B (zh) * 2017-12-25 2020-12-22 中国科学院沈阳自动化研究所 一种基于卷积神经网络的图像超分辨率重建方法
KR102314703B1 (ko) * 2017-12-26 2021-10-18 에스케이하이닉스 주식회사 이미지 처리를 위한 조인트 딕셔너리 생성 방법, 그 조인트 딕셔너리들을 이용한 인터레이스 기반 하이 다이나믹 레인지 이미징 장치 및 그 이미지 처리 방법
CN108062780B (zh) * 2017-12-29 2019-08-09 百度在线网络技术(北京)有限公司 图像压缩方法和装置
KR102050780B1 (ko) * 2018-01-10 2019-12-02 한국과학기술원 신경망을 이용한 컨텐츠 인지 기반 컨텐츠 전송 서버 장치 및 방법
CN108184128A (zh) * 2018-01-11 2018-06-19 安徽优思天成智能科技有限公司 基于深度神经网络的视频序列丢失帧预测恢复方法
CN108322685B (zh) * 2018-01-12 2020-09-25 广州华多网络科技有限公司 视频插帧方法、存储介质以及终端
CN108259994B (zh) * 2018-01-15 2020-10-30 复旦大学 一种提高视频空间分辨率的方法
US20190228313A1 (en) * 2018-01-23 2019-07-25 Insurance Services Office, Inc. Computer Vision Systems and Methods for Unsupervised Representation Learning by Sorting Sequences
US11289125B1 (en) * 2018-01-25 2022-03-29 Disney Enterprises, Inc. Digital conformation of media content
CN110087084B (zh) * 2018-01-25 2022-03-18 联咏科技股份有限公司 视频处理装置及视频处理方法
US11321612B2 (en) 2018-01-30 2022-05-03 D5Ai Llc Self-organizing partially ordered networks and soft-tying learned parameters, such as connection weights
CN108495132B (zh) * 2018-02-05 2019-10-11 西安电子科技大学 基于轻量级深度卷积网络的遥感影像大倍率压缩方法
KR102237288B1 (ko) * 2018-02-07 2021-04-07 울산과학기술원 기계학습 알고리즘을 이용한 이미지 변환 방법 및 장치
CN108416748A (zh) * 2018-02-26 2018-08-17 阿博茨德(北京)科技有限公司 Jpeg压缩文档的图像预处理方法及装置
US11017575B2 (en) 2018-02-26 2021-05-25 Reald Spark, Llc Method and system for generating data to provide an animated visual representation
US11394552B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US10938852B1 (en) 2020-08-14 2021-03-02 Private Identity Llc Systems and methods for private authentication with helper networks
US11210375B2 (en) 2018-03-07 2021-12-28 Private Identity Llc Systems and methods for biometric processing with liveness
US11392802B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11170084B2 (en) 2018-06-28 2021-11-09 Private Identity Llc Biometric authentication
US11138333B2 (en) 2018-03-07 2021-10-05 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11265168B2 (en) 2018-03-07 2022-03-01 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11789699B2 (en) 2018-03-07 2023-10-17 Private Identity Llc Systems and methods for private authentication with helper networks
US11502841B2 (en) 2018-03-07 2022-11-15 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US10721070B2 (en) * 2018-03-07 2020-07-21 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11489866B2 (en) 2018-03-07 2022-11-01 Private Identity Llc Systems and methods for private authentication with helper networks
CN108346133B (zh) * 2018-03-15 2021-06-04 武汉大学 一种面向视频卫星超分辨率重建的深度学习网络训练方法
CN110324635B (zh) * 2018-03-30 2021-06-15 北京大学 分像素插值方法、系统、计算机设备和介质
CN110324620B (zh) * 2018-03-30 2021-08-24 杭州海康威视数字技术股份有限公司 帧内预测方法、装置、电子设备及机器可读存储介质
WO2019197712A1 (en) * 2018-04-09 2019-10-17 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US11657264B2 (en) * 2018-04-09 2023-05-23 Nokia Technologies Oy Content-specific neural network distribution
CN110710186A (zh) * 2018-04-09 2020-01-17 鲁门无线电通信公司 使用约束动态多跳网络进行流传输
WO2019197715A1 (en) * 2018-04-09 2019-10-17 Nokia Technologies Oy An apparatus, a method and a computer program for running a neural network
WO2019209005A1 (ko) * 2018-04-24 2019-10-31 주식회사 지디에프랩 인공지능 기반 해상도 개선 시스템
WO2019209006A1 (ko) * 2018-04-24 2019-10-31 주식회사 지디에프랩 스트리밍 파일의 해상도 개선 방법
KR102179436B1 (ko) * 2018-04-24 2020-11-16 주식회사 지디에프랩 변화 매크로블록 추출 기법을 이용한 동영상 화질 개선 시스템
WO2019209008A1 (ko) * 2018-04-24 2019-10-31 주식회사 지디에프랩 변화 매크로블록 추출 기법을 이용한 동영상 화질 개선 시스템
WO2019209007A1 (ko) * 2018-04-24 2019-10-31 주식회사 지디에프랩 Ai 기반의 영상 압축 및 복원 시스템
CN108596855A (zh) * 2018-04-28 2018-09-28 国信优易数据有限公司 一种视频图像质量增强方法、装置以及视频画质增强方法
CN110458754B (zh) * 2018-05-07 2021-12-03 Tcl科技集团股份有限公司 图像生成方法及终端设备
CN108765287B (zh) * 2018-05-09 2022-02-11 浙江师范大学 一种基于非局部均值的图像超分辨率方法
US11423312B2 (en) 2018-05-14 2022-08-23 Samsung Electronics Co., Ltd Method and apparatus for universal pruning and compression of deep convolutional neural networks under joint sparsity constraints
JP7014044B2 (ja) * 2018-05-15 2022-02-01 コニカミノルタ株式会社 超音波診断装置
DE112019002749T5 (de) * 2018-05-29 2021-04-08 Lg Electronics Inc. Signalverarbeitungsvorrichtung und bildanzeigegerät mit selbiger
US11941501B2 (en) * 2018-05-30 2024-03-26 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof
WO2019236251A1 (en) * 2018-06-04 2019-12-12 Lightmatter, Inc. Convolutional layers for neural networks using programmable nanophotonics
US10885608B2 (en) * 2018-06-06 2021-01-05 Adobe Inc. Super-resolution with reference images
JP7282487B2 (ja) * 2018-06-07 2023-05-29 キヤノンメディカルシステムズ株式会社 医用画像診断装置
US10969935B2 (en) 2018-06-08 2021-04-06 Microsoft Technology Licensing, Llc System for generation of novel artifacts with user-guided discovery and navigation of the creative space
WO2019234291A1 (en) * 2018-06-08 2019-12-12 Nokia Technologies Oy An apparatus, a method and a computer program for selecting a neural network
CN108900848B (zh) * 2018-06-12 2021-03-02 福建帝视信息科技有限公司 一种基于自适应可分离卷积的视频质量增强方法
CN109146777B (zh) * 2018-06-15 2020-10-27 国网浙江省电力有限公司 利用预训练网络的感知相似性进行混合图像超分辨方法
US10692184B2 (en) 2018-07-05 2020-06-23 SVXR, Inc. Super-resolution X-ray imaging method and apparatus
KR102570562B1 (ko) 2018-07-16 2023-08-24 삼성전자주식회사 영상 처리 장치 및 그 동작방법
KR102022648B1 (ko) 2018-08-10 2019-09-19 삼성전자주식회사 전자 장치, 이의 제어 방법 및 서버의 제어 방법
CN109190520A (zh) * 2018-08-16 2019-01-11 广州视源电子科技股份有限公司 一种超分辨率重建人脸图像方法及装置
US10332035B1 (en) * 2018-08-29 2019-06-25 Capital One Services, Llc Systems and methods for accelerating model training in machine learning
CN112602088B (zh) * 2018-09-06 2024-03-12 Oppo广东移动通信有限公司 提高弱光图像的质量的方法、系统和计算机可读介质
US11062210B2 (en) 2018-10-02 2021-07-13 Nokia Technologies Oy Method and apparatus for training a neural network used for denoising
CN109361919A (zh) * 2018-10-09 2019-02-19 四川大学 一种联合超分辨率和去压缩效应的图像编码性能提升方法
US11429867B2 (en) 2018-10-11 2022-08-30 International Business Machines Corporation Down-sampling for convolutional neural networks
KR20200044653A (ko) 2018-10-19 2020-04-29 삼성전자주식회사 딥 뉴럴 네트워크를 이용한 영상의 ai 부호화 및 ai 복호화 방법, 및 장치
WO2020080751A1 (ko) * 2018-10-19 2020-04-23 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2020080827A1 (en) 2018-10-19 2020-04-23 Samsung Electronics Co., Ltd. Ai encoding apparatus and operation method of the same, and ai decoding apparatus and operation method of the same
WO2020080665A1 (en) 2018-10-19 2020-04-23 Samsung Electronics Co., Ltd. Methods and apparatuses for performing artificial intelligence encoding and artificial intelligence decoding on image
KR102525578B1 (ko) * 2018-10-19 2023-04-26 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2020080765A1 (en) 2018-10-19 2020-04-23 Samsung Electronics Co., Ltd. Apparatuses and methods for performing artificial intelligence encoding and artificial intelligence decoding on image
KR102525577B1 (ko) * 2018-10-19 2023-04-26 삼성전자주식회사 데이터 스트리밍 방법 및 장치
US11720997B2 (en) 2018-10-19 2023-08-08 Samsung Electronics Co.. Ltd. Artificial intelligence (AI) encoding device and operating method thereof and AI decoding device and operating method thereof
WO2020080873A1 (en) 2018-10-19 2020-04-23 Samsung Electronics Co., Ltd. Method and apparatus for streaming data
KR102525576B1 (ko) * 2018-10-19 2023-04-26 삼성전자주식회사 영상의 ai 부호화 및 ai 복호화 방법, 및 장치
US11616988B2 (en) 2018-10-19 2023-03-28 Samsung Electronics Co., Ltd. Method and device for evaluating subjective quality of video
WO2020082263A1 (en) * 2018-10-24 2020-04-30 Alibaba Group Holding Limited Fast computation of convolutional neural network
CN109410141B (zh) * 2018-10-26 2021-03-02 北京金山云网络技术有限公司 一种图像处理方法、装置、电子设备及存储介质
CN109448070B (zh) * 2018-11-06 2020-10-09 明峰医疗系统股份有限公司 一种ct宽展视野的重建方法
JP7024687B2 (ja) * 2018-11-07 2022-02-24 日本電信電話株式会社 データ分析システム、学習装置、方法、及びプログラム
WO2020093782A1 (en) 2018-11-08 2020-05-14 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method, system, and computer-readable medium for improving quality of low-light images
CN111178491A (zh) * 2018-11-09 2020-05-19 佳能株式会社 神经网络模型的训练和应用方法、装置、系统及存储介质
KR102622950B1 (ko) * 2018-11-12 2024-01-10 삼성전자주식회사 디스플레이장치, 그 제어방법 및 기록매체
US10885384B2 (en) * 2018-11-15 2021-01-05 Intel Corporation Local tone mapping to reduce bit depth of input images to high-level computer vision tasks
KR20200057849A (ko) * 2018-11-15 2020-05-27 삼성전자주식회사 영상의 리타겟팅을 위한 영상 처리 장치 및 방법
KR20200063303A (ko) * 2018-11-19 2020-06-05 삼성전자주식회사 영상 처리 장치 및 그 제어방법
CN113168684B (zh) * 2018-11-26 2024-04-05 Oppo广东移动通信有限公司 提升低亮度图像的质量的方法、系统和计算机可读介质
CN109495741B (zh) * 2018-11-29 2023-03-31 四川大学 基于自适应下采样和深度学习的图像压缩方法
KR102641423B1 (ko) * 2018-12-11 2024-02-28 삼성전자주식회사 영상 처리 장치 및 그 동작방법
US11601644B2 (en) * 2018-12-11 2023-03-07 Google Llc Image and video coding using machine learning prediction coding models
US10909659B2 (en) * 2018-12-12 2021-02-02 Apical Limited Super-resolution image processing using a machine learning system
CN109685750A (zh) * 2018-12-14 2019-04-26 厦门美图之家科技有限公司 图像增强方法及计算设备
US10963757B2 (en) 2018-12-14 2021-03-30 Industrial Technology Research Institute Neural network model fusion method and electronic device using the same
CN109767386A (zh) * 2018-12-22 2019-05-17 昆明理工大学 一种基于深度学习的快速图像超分辨率重建方法
RU2697928C1 (ru) 2018-12-28 2019-08-21 Самсунг Электроникс Ко., Лтд. Способ сверхразрешения изображения, имитирующего повышение детализации на основе оптической системы, выполняемый на мобильном устройстве, обладающем ограниченными ресурсами, и мобильное устройство, его реализующее
IN201911000737A (de) * 2019-01-07 2019-09-22 Hcl Technologies Limited
US11080835B2 (en) * 2019-01-09 2021-08-03 Disney Enterprises, Inc. Pixel error detection system
US11521131B2 (en) * 2019-01-24 2022-12-06 Jumio Corporation Systems and methods for deep-learning based super-resolution using multiple degradations on-demand learning
CN109886990B (zh) * 2019-01-29 2021-04-13 理光软件研究所(北京)有限公司 一种基于深度学习的图像分割系统
EP3925214A4 (de) 2019-02-15 2022-11-23 Nokia Technologies Oy Vorrichtung, verfahren und computerprogramm zur videocodierung und -decodierung
US11487739B2 (en) * 2019-02-19 2022-11-01 Nasdaq, Inc. System and methods for data model detection and surveillance
WO2020172019A1 (en) * 2019-02-20 2020-08-27 Saudi Arabian Oil Company Method for fast calculation of seismic attributes using artificial intelligence
EP3912343A4 (de) * 2019-03-08 2022-07-20 Beijing Bytedance Network Technology Co., Ltd. Beschränkungen bei modellbasierter umformung in der videoverarbeitung
KR20200114436A (ko) * 2019-03-28 2020-10-07 국방과학연구소 스케일러블 영상 부호화를 수행하는 장치 및 방법
US10909700B2 (en) * 2019-04-02 2021-02-02 Samsung Electronics Co., Ltd. Display apparatus and image processing method thereof
CA3135968A1 (en) 2019-04-18 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. Restriction on applicability of cross component mode
JP7317991B2 (ja) 2019-04-23 2023-07-31 北京字節跳動網絡技術有限公司 クロスコンポーネント依存性を低減するための方法
CN110147252A (zh) * 2019-04-28 2019-08-20 深兰科技(上海)有限公司 一种卷积神经网络的并行计算方法及装置
US20220215511A1 (en) * 2019-04-29 2022-07-07 Deep Render Ltd System and method for lossy image and video compression and/or transmission utilizing a metanetwork or neural networks
US11216917B2 (en) 2019-05-03 2022-01-04 Amazon Technologies, Inc. Video enhancement using a neural network
WO2020227179A1 (en) * 2019-05-03 2020-11-12 Amazon Technologies, Inc. Video enhancement using a neural network
US11017506B2 (en) 2019-05-03 2021-05-25 Amazon Technologies, Inc. Video enhancement using a generator with filters of generative adversarial network
US11210769B2 (en) 2019-05-03 2021-12-28 Amazon Technologies, Inc. Video enhancement using a recurrent image date of a neural network
CN113994366A (zh) * 2019-05-03 2022-01-28 华为技术有限公司 用于视频超分辨率的多阶段多参考自举
EP3966778A1 (de) * 2019-05-06 2022-03-16 Sony Group Corporation Elektronische vorrichtung, verfahren und computerprogramm
CN110121110B (zh) * 2019-05-07 2021-05-25 北京奇艺世纪科技有限公司 视频质量评估方法、设备、视频处理设备及介质
JP7407206B2 (ja) 2019-05-08 2023-12-28 北京字節跳動網絡技術有限公司 クロスコンポーネントコーディングの適用条件
KR102236582B1 (ko) 2019-05-14 2021-04-06 삼성전자주식회사 영상 처리 장치 및 그 동작방법
CN110163802B (zh) * 2019-05-20 2020-09-01 电子科技大学 一种基于神经网络的sar图像超分辨方法
CN110099280B (zh) * 2019-05-24 2020-05-08 浙江大学 一种无线自组织网络带宽受限下的视频业务质量增强方法
CN112085652A (zh) * 2019-06-14 2020-12-15 深圳市中兴微电子技术有限公司 一种图像处理的方法、装置、计算机存储介质及终端
CN113994697A (zh) 2019-06-22 2022-01-28 北京字节跳动网络技术有限公司 色度残差缩放的语法元素
KR20210004702A (ko) * 2019-07-05 2021-01-13 삼성전자주식회사 Ai 프로세서 및 이의 신경망 연산 수행 방법
KR102660738B1 (ko) 2019-07-07 2024-04-26 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 크로마 잔차 스케일링의 시그널링
CN110378854B (zh) * 2019-07-17 2021-10-26 上海商汤智能科技有限公司 机器人图像增强方法及装置
CN110378976B (zh) * 2019-07-18 2020-11-13 北京市商汤科技开发有限公司 图像处理方法及装置、电子设备和存储介质
CN110428378B (zh) 2019-07-26 2022-02-08 北京小米移动软件有限公司 图像的处理方法、装置及存储介质
CN112308200B (zh) * 2019-07-30 2024-04-26 华为技术有限公司 神经网络的搜索方法及装置
CN110650339A (zh) * 2019-08-08 2020-01-03 合肥图鸭信息科技有限公司 一种视频压缩方法、装置及终端设备
KR102248097B1 (ko) * 2019-08-19 2021-05-06 네이버 주식회사 컨텐츠전송방법 및 이를 이용한 컨텐츠 생성 단말
US10839565B1 (en) * 2019-08-19 2020-11-17 Samsung Electronics Co., Ltd. Decoding apparatus and operating method of the same, and artificial intelligence (AI) up-scaling apparatus and operating method of the same
US11551054B2 (en) 2019-08-27 2023-01-10 International Business Machines Corporation System-aware selective quantization for performance optimized distributed deep learning
US10972749B2 (en) * 2019-08-29 2021-04-06 Disney Enterprises, Inc. Systems and methods for reconstructing frames
EP4024875A4 (de) * 2019-08-30 2022-10-26 Sony Group Corporation Empfangsvorrichtung, empfangsverfahren sowie übertragungsvorrichtung und übertragungsverfahren
US11012718B2 (en) 2019-08-30 2021-05-18 Disney Enterprises, Inc. Systems and methods for generating a latent space residual
US11392799B2 (en) * 2019-09-09 2022-07-19 Apple Inc. Method for improving temporal consistency of deep neural networks
EP4028984A4 (de) * 2019-09-11 2023-01-11 The State of Israel, Ministry of Agriculture & Rural Development, Agricultural Research Organization (ARO) (Volcani Center) Verfahren und systeme zur superauflösung für infrarotbilder
KR102166337B1 (ko) * 2019-09-17 2020-10-15 삼성전자주식회사 영상의 ai 부호화 방법 및 장치, 영상의 ai 복호화 방법 및 장치
KR20190117416A (ko) * 2019-09-26 2019-10-16 엘지전자 주식회사 동영상 프레임 해상도를 향상시키기 위한 방법 및 장치
US11445222B1 (en) 2019-09-30 2022-09-13 Isize Limited Preprocessing image data
US10789354B1 (en) * 2019-10-01 2020-09-29 Capital One Services, Llc Computer-based systems configured for detecting and sandboxing external resources and methods of use thereof
US11341688B2 (en) * 2019-10-02 2022-05-24 Nokia Technologies Oy Guiding decoder-side optimization of neural network filter
KR102624027B1 (ko) 2019-10-17 2024-01-11 삼성전자주식회사 영상 처리 장치 및 방법
KR102436512B1 (ko) 2019-10-29 2022-08-25 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
DE102019217147A1 (de) * 2019-11-06 2021-05-06 Robert Bosch Gmbh Verwendung von Kostenkarten und Konvergenzkarten zur Lokalisierung und Kartierung
KR20210056179A (ko) * 2019-11-08 2021-05-18 삼성전자주식회사 Ai 부호화 장치 및 그 동작방법, 및 ai 복호화 장치 및 그 동작방법
CN110853040B (zh) * 2019-11-12 2023-04-28 北京深境智能科技有限公司 一种基于超分辨率重建的图像协同分割方法
EP4060998A4 (de) * 2019-11-15 2023-11-15 Korea Advanced Institute of Science and Technology System und verfahren zur aufnahme von live-video
US11544815B2 (en) 2019-11-18 2023-01-03 Advanced Micro Devices, Inc. Gaming super resolution
US11556784B2 (en) 2019-11-22 2023-01-17 Samsung Electronics Co., Ltd. Multi-task fusion neural network architecture
KR20210067699A (ko) 2019-11-29 2021-06-08 삼성전자주식회사 전자 장치 및 그 제어 방법
KR20210078218A (ko) * 2019-12-18 2021-06-28 삼성전자주식회사 전자장치 및 그 제어방법
US20210192019A1 (en) * 2019-12-18 2021-06-24 Booz Allen Hamilton Inc. System and method for digital steganography purification
CN111083498B (zh) * 2019-12-18 2021-12-21 杭州师范大学 用于视频编码帧间环路滤波的模型训练方法和使用方法
US11223833B2 (en) 2020-01-05 2022-01-11 Isize Limited Preprocessing image data
CN114902237A (zh) * 2020-01-10 2022-08-12 Oppo广东移动通信有限公司 图像处理方法、装置和电子设备
US11206438B2 (en) 2020-01-17 2021-12-21 Amazon Technologies, Inc. Video enhancement service
KR102130078B1 (ko) * 2020-02-19 2020-07-03 주식회사 지디에프랩 해상도 향상도를 바탕으로 인공지능 파라미터를 변경하는 시스템
KR102130077B1 (ko) * 2020-02-19 2020-07-03 주식회사 지디에프랩 격자 생성 패턴 정보를 바탕으로 해상도를 개선하는 시스템
KR102130076B1 (ko) * 2020-02-19 2020-07-03 주식회사 지디에프랩 특징 영역의 학습 중요도를 바탕으로 스트리밍 파일의 해상도를 개선하는 방법
KR102287942B1 (ko) 2020-02-24 2021-08-09 삼성전자주식회사 전처리를 이용한 영상의 ai 부호화 및 ai 복호화 방법, 및 장치
WO2021206687A1 (en) * 2020-04-07 2021-10-14 Purdue Research Foundation Image upsampling
CN113518227B (zh) * 2020-04-09 2023-02-10 于江鸿 数据处理的方法和系统
US11288771B2 (en) * 2020-04-29 2022-03-29 Adobe Inc. Texture hallucination for large-scale image super-resolution
CN111696034B (zh) * 2020-05-11 2023-10-27 青岛小鸟看看科技有限公司 图像处理方法、装置及电子设备
CN111683250B (zh) * 2020-05-13 2021-03-16 武汉大学 一种基于深度学习的生成式遥感图像压缩方法
US11223841B2 (en) * 2020-05-29 2022-01-11 Samsung Electronics Co., Ltd. Apparatus and method for performing artificial intelligence encoding and artificial intelligence decoding on image
US11205077B1 (en) * 2020-05-29 2021-12-21 Arm Limited Operating on a video frame to generate a feature map of a neural network
TWI768364B (zh) * 2020-06-01 2022-06-21 宏碁股份有限公司 處理可播放於一虛擬裝置的圖片的方法及電子裝置
CN111402143B (zh) * 2020-06-03 2020-09-04 腾讯科技(深圳)有限公司 图像处理方法、装置、设备及计算机可读存储介质
CN111737909B (zh) * 2020-06-10 2021-02-09 哈尔滨工业大学 基于时空图卷积网络的结构健康监测数据异常识别方法
US11436703B2 (en) * 2020-06-12 2022-09-06 Samsung Electronics Co., Ltd. Method and apparatus for adaptive artificial intelligence downscaling for upscaling during video telephone call
WO2021251614A1 (en) 2020-06-12 2021-12-16 Samsung Electronics Co., Ltd. Image processing apparatus and method of operating the same
CN111899759B (zh) * 2020-07-27 2021-09-03 北京嘀嘀无限科技发展有限公司 音频数据的预训练、模型训练方法、装置、设备及介质
CN112070657B (zh) * 2020-08-14 2024-02-27 昀光微电子(上海)有限公司 图像处理方法、装置、系统、设备及计算机存储介质
US11908103B2 (en) * 2020-08-14 2024-02-20 Tencent America LLC Multi-scale-factor image super resolution with micro-structured masks
US20220067879A1 (en) 2020-09-03 2022-03-03 Nvidia Corporation Image enhancement using one or more neural networks
EP3975105A1 (de) * 2020-09-25 2022-03-30 Aptiv Technologies Limited Verfahren und system zur interpolation sowie verfahren und system zur bestimmung einer umgebungskarte eines fahrzeugs
US11792438B2 (en) * 2020-10-02 2023-10-17 Lemon Inc. Using neural network filtering in video coding
US20230386067A1 (en) * 2020-10-07 2023-11-30 Afx Medical Inc. Systems and methods for segmenting 3d images
EP4236790A1 (de) * 2020-10-29 2023-09-06 Hewlett-Packard Development Company, L.P. Neuronale netzwerke zur bestimmung der atemfrequenz
US11683358B2 (en) 2020-11-04 2023-06-20 Microsoft Technology Licensing, Llc Dynamic user-device upscaling of media streams
US20220165002A1 (en) * 2020-11-25 2022-05-26 Siemens Healthcare Gmbh Iterative hierarchal network for regulating medical image reconstruction
CN112465701B (zh) * 2020-11-26 2023-08-29 上海健康医学院 显微图像的深度学习超分辨率重建方法、介质及电子设备
AU2020281143B1 (en) * 2020-12-04 2021-03-25 Commonwealth Scientific And Industrial Research Organisation Creating super-resolution images
DE102020215461A1 (de) * 2020-12-08 2022-06-09 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Trainieren eines Bildgenerators
KR20220081648A (ko) * 2020-12-09 2022-06-16 삼성전자주식회사 Ai 부호화 장치 및 그 동작방법, 및 ai 복호화 장치 및 그 동작방법
DE102020215852B4 (de) * 2020-12-14 2022-07-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Robuste Ankunftszeitschätzung unter Verwendung von faltenden neuronalen Netzerken (oder anderen Funktionsapproximationen) auf randomisierten Kanalmodellen
CN112714321B (zh) * 2020-12-18 2022-11-22 深圳大学 压缩视频处理方法、装置、设备及计算机可读存储介质
CN112541878A (zh) * 2020-12-24 2021-03-23 北京百度网讯科技有限公司 建立图像增强模型与图像增强的方法、装置
TWI766522B (zh) * 2020-12-31 2022-06-01 鴻海精密工業股份有限公司 資料處理方法、裝置、電子設備及存儲介質
FR3118747A1 (fr) * 2021-01-11 2022-07-15 Psa Automobiles Sa Procédé et dispositif de détermination d’information représentative d’adhérence entre un véhicule et un revêtement d’une route
US11451744B2 (en) 2021-01-21 2022-09-20 Dell Products, Lp Lighting, color vector, and virtual background correction during a video conference session
US11310464B1 (en) 2021-01-24 2022-04-19 Dell Products, Lp System and method for seviceability during execution of a video conferencing application using intelligent contextual session management
US20230343119A1 (en) * 2021-02-26 2023-10-26 Hewlett-Packard Development Company, L.P. Captured document image enhancement
US11271984B1 (en) * 2021-03-29 2022-03-08 International Business Machines Corporation Reduced bandwidth consumption via generative adversarial networks
US11924415B2 (en) 2021-05-11 2024-03-05 Tencent America LLC Method and apparatus for boundary handling in video coding
CN113507607B (zh) * 2021-06-11 2023-05-26 电子科技大学 一种无需运动补偿的压缩视频多帧质量增强方法
CN114235970B (zh) * 2021-12-20 2024-04-23 西安科技大学 一种自适应超声重叠回波分离方法
WO2023199172A1 (en) * 2022-04-11 2023-10-19 Nokia Technologies Oy Apparatus and method for optimizing the overfitting of neural network filters
CN114845138A (zh) * 2022-04-26 2022-08-02 三星电子(中国)研发中心 自适应流媒体的超分辨率重建方法和装置及服务器
CN115879516B (zh) * 2023-03-02 2023-05-16 南昌大学 一种数据取证方法
CN116527833B (zh) * 2023-07-03 2023-09-05 清华大学 一种基于超分模型的高清视频生成方法及系统

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3037010A (en) 1957-11-27 1962-05-29 Du Pont Polymeric perfluoro-2-butyne
JPS6421385A (en) 1987-07-17 1989-01-24 Seiko Epson Corp Preparation of dial for clock
FR2646575A1 (fr) * 1989-04-26 1990-11-02 Labo Electronique Physique Procede et structure pour la compression de donnees
DE4326487C2 (de) 1992-09-16 1995-02-09 Konrad Michael Dipl Ing Weigl Adaptives Filter
US5376962A (en) 1993-03-31 1994-12-27 Panasonic Technologies, Inc. Neural network video image processor
KR0139154B1 (ko) 1994-07-08 1998-06-15 김광호 신경망을 이용한 부호화방법 및 그 장치
US6075884A (en) 1996-03-29 2000-06-13 Sarnoff Corporation Method and apparatus for training a neural network to learn and use fidelity metric as a control mechanism
WO1997039417A2 (en) 1996-03-29 1997-10-23 Sarnoff Corporation Method and apparatus for training a neural network to use a fidelity metric
JPH1021385A (ja) 1996-07-03 1998-01-23 N T T Data Tsushin Kk 画像処理方法及び装置
US5831678A (en) 1996-08-09 1998-11-03 U.S. Robotics Access Corp. Video encoder/decoder system
AU2352100A (en) 1998-12-03 2000-06-19 Qbeo, Inc. Digital image improvement through genetic image evolution
US6470097B1 (en) 1999-01-22 2002-10-22 Siemens Corporation Research, Inc. Total variational blind image restoration from image sequences
CN1520580A (zh) 2000-07-06 2004-08-11 ŦԼ�и��ױ��Ǵ�ѧ�йܻ� 用于增强数据解析度的方法和设备
US7133568B2 (en) 2000-08-04 2006-11-07 Nikitin Alexei V Method and apparatus for analysis of variables
US6735336B2 (en) 2001-05-16 2004-05-11 Applied Neural Computing Ltd. Apparatus for and method of pattern recognition and image analysis
KR20030009575A (ko) 2001-06-26 2003-02-05 박광훈 신경망 분류기를 이용한 동영상 전송률 제어 장치 및 그방법
US7298412B2 (en) 2001-09-18 2007-11-20 Ricoh Company, Limited Image pickup device, automatic focusing method, automatic exposure method, electronic flash control method and computer program
US7599434B2 (en) 2001-09-26 2009-10-06 Reynolds Jodie L System and method for compressing portions of a media signal using different codecs
US6874690B2 (en) 2002-01-11 2005-04-05 Metrologic Instruments, Inc. Modular omnidirectional bar code symbol scanning system with at least one service port for removable installation of scan module insert
GB0209780D0 (en) 2002-04-29 2002-06-05 Neural Technologies Ltd Method of encoding data for decoding data from and constraining a neural network
US7343278B2 (en) 2002-10-22 2008-03-11 Artoolworks, Inc. Tracking a surface in a 3-dimensional scene using natural visual features of the surface
JP2006509041A (ja) 2002-10-23 2006-03-16 ザイモジェネティクス,インコーポレイティド Il−28およびil−29を用いるウイルス感染を治療するための方法
KR100529311B1 (ko) 2003-01-21 2005-11-17 삼성전자주식회사 신경 회로망을 이용하여 가변 길이 부호화 비트 스트림의길이를 선택하는 장치 및 방법
US7218796B2 (en) * 2003-04-30 2007-05-15 Microsoft Corporation Patch-based video super-resolution
KR100594056B1 (ko) 2003-09-01 2006-07-03 삼성전자주식회사 효율적인 비트율 제어를 위한 h.263/mpeg 비디오인코더 및 그 제어 방법
US20050200757A1 (en) * 2004-01-23 2005-09-15 Alberta Pica Method and apparatus for digital video reconstruction
JP2005352900A (ja) 2004-06-11 2005-12-22 Canon Inc 情報処理装置、情報処理方法、パターン認識装置、及びパターン認識方法
US7876833B2 (en) * 2005-04-11 2011-01-25 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive up-scaling for spatially scalable coding
US7623731B2 (en) 2005-06-20 2009-11-24 Honda Motor Co., Ltd. Direct method for modeling non-rigid motion with thin plate spline transformation
FR2889778A1 (fr) 2005-08-12 2007-02-16 Thomson Licensing Sas Procede de codage et de decodage d'images video avec echelonnabilite spatiale
CN101053249B (zh) 2005-09-09 2011-02-16 松下电器产业株式会社 图像处理方法、图像存储方法、图像处理装置及文件格式
US8037010B2 (en) 2007-02-28 2011-10-11 Numenta, Inc. Spatio-temporal learning algorithms in hierarchical temporal networks
US7747107B2 (en) 2007-03-06 2010-06-29 Mitsubishi Electric Research Laboratories, Inc. Method for retargeting images
US9799098B2 (en) * 2007-04-24 2017-10-24 Massachusetts Institute Of Technology Method and apparatus for image processing
CA2638465A1 (en) * 2007-08-01 2009-02-01 Jean-Yves Chouinard Learning filters for enhancing the quality of block coded still and video images
US8331615B2 (en) 2007-08-01 2012-12-11 The Board Of Trustees Of The University Of Illinois Match, expand, and filter technique for multi-view stereopsis
US8223837B2 (en) 2007-09-07 2012-07-17 Microsoft Corporation Learning-based image compression
US20090110285A1 (en) 2007-10-26 2009-04-30 Technion Research And Development Foundation Ltd Apparatus and method for improving image resolution using fuzzy motion estimation
US8306121B2 (en) * 2008-03-17 2012-11-06 Ati Technologies Ulc Method and apparatus for super-resolution of images
CN101621683A (zh) 2008-07-01 2010-01-06 邹采荣 一种基于avs的快速立体视频编码方法
KR100963424B1 (ko) 2008-07-23 2010-06-15 한국전자통신연구원 스케일러블 영상 복호화기 및 그 제어 방법
US8731255B2 (en) 2008-11-05 2014-05-20 University Of Louisville Research Foundation, Inc. Computer aided diagnostic system incorporating lung segmentation and registration
EP2507744A2 (de) 2009-12-02 2012-10-10 QUALCOMM Incorporated Abgleich von eigenschaften mittels clusterung von erkannten schlüsselpunkten bei abfrage- und modellbildern
KR101789845B1 (ko) * 2010-01-22 2017-11-20 톰슨 라이센싱 샘플링 기반 초 해상도 비디오 인코딩 및 디코딩을 위한 방법 및 장치
JP5805665B2 (ja) * 2010-01-22 2015-11-04 トムソン ライセンシングThomson Licensing Example−based超解像を用いたビデオ圧縮のためのデータプルーニング
CN102148996A (zh) 2010-02-04 2011-08-10 成都市世嘉电子实业有限公司 帧内宏块预测模式判定方法
US8521664B1 (en) 2010-05-14 2013-08-27 Google Inc. Predictive analytical model matching
US8428390B2 (en) 2010-06-14 2013-04-23 Microsoft Corporation Generating sharp images, panoramas, and videos from motion-blurred videos
EP2410746A1 (de) 2010-07-20 2012-01-25 Siemens Aktiengesellschaft Videokodierung mit Referenzbildern hoher Auflösung
JP5606625B2 (ja) 2010-07-21 2014-10-15 ドルビー ラボラトリーズ ライセンシング コーポレイション ビデオ符号化のための高度な動きモデルを使った参照処理
US8467599B2 (en) 2010-09-02 2013-06-18 Edge 3 Technologies, Inc. Method and apparatus for confusion learning
EP2557789B1 (de) * 2011-08-09 2017-09-27 Dolby Laboratories Licensing Corporation Geführtes Bild-Upsampling bei der Videokodierung
US8718407B2 (en) * 2011-11-18 2014-05-06 Stmicroelectronics (Canada), Inc. High-quality single-frame superresolution training and reconstruction engine
US9824421B2 (en) 2012-01-25 2017-11-21 Intel Corporation Content-aware image resizing using superpixels
US8620073B2 (en) * 2012-02-24 2013-12-31 Mitsubishi Electric Research Laboratories, Inc. Upscaling natural images
CN103369349B (zh) 2012-03-28 2016-04-27 中国移动通信集团公司 一种数字视频质量控制方法及其装置
US10218971B2 (en) 2012-09-28 2019-02-26 Vid Scale, Inc. Adaptive upsampling for multi-layer video coding
US9904889B2 (en) 2012-12-05 2018-02-27 Applied Brain Research Inc. Methods and systems for artificial cognition
US20140177706A1 (en) * 2012-12-21 2014-06-26 Samsung Electronics Co., Ltd Method and system for providing super-resolution of quantized images and video
US9924200B2 (en) * 2013-01-24 2018-03-20 Microsoft Technology Licensing, Llc Adaptive noise reduction engine for streaming video
KR102080859B1 (ko) 2013-04-08 2020-02-24 삼성전자주식회사 이미지 프로세서 및 이미지 프로세서의 이미지 처리 방법
WO2014174087A1 (en) * 2013-04-25 2014-10-30 Thomson Licensing Method and device for performing super-resolution on an input image
EP2806374B1 (de) 2013-05-24 2022-07-06 Tata Consultancy Services Limited Verfahren und system zur automatischen auswahl von einem oder mehreren bildverarbeitungsalgorithmen
US20140369401A1 (en) 2013-06-14 2014-12-18 General Instrument Corporation Re-sampling filters for scalable video coding
KR102103984B1 (ko) 2013-07-15 2020-04-23 삼성전자주식회사 깊이 영상 처리 방법 및 장치
US9195909B2 (en) 2013-09-23 2015-11-24 Adobe Systems Incorporated Using machine learning to define user controls for photo adjustments
US9668699B2 (en) 2013-10-17 2017-06-06 Siemens Healthcare Gmbh Method and system for anatomical object detection using marginal space deep neural networks
US9342870B2 (en) 2013-10-22 2016-05-17 Adobe Systems Incorporated Tree-based linear regression for denoising
US9208539B2 (en) 2013-11-30 2015-12-08 Sharp Laboratories Of America, Inc. Image enhancement using semantic components
JP6335504B2 (ja) * 2013-12-20 2018-05-30 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US10846611B2 (en) 2014-06-16 2020-11-24 Nokia Technologies Oy Data processing
US9405960B2 (en) * 2014-06-17 2016-08-02 Beijing Kuangshi Technology Co., Ltd. Face hallucination using convolutional neural networks
US9996768B2 (en) 2014-11-19 2018-06-12 Adobe Systems Incorporated Neural network patch aggregation and statistics
WO2016132152A1 (en) 2015-02-19 2016-08-25 Magic Pony Technology Limited Interpolating visual data
EP3278559B1 (de) 2015-03-31 2021-05-05 Magic Pony Technology Limited Training von end-zu-end-videoverfahren
GB201603144D0 (en) 2016-02-23 2016-04-06 Magic Pony Technology Ltd Training end-to-end video processes
GB201604672D0 (en) 2016-03-18 2016-05-04 Magic Pony Technology Ltd Generative methods of super resolution
CN105120130B (zh) 2015-09-17 2018-06-29 京东方科技集团股份有限公司 一种图像升频系统、其训练方法及图像升频方法
EP3166070B1 (de) 2015-11-09 2021-01-06 InterDigital CE Patent Holdings Verfahren zum aufwärtsskalieren von verrauschten bildern und vorrichtung zum aufwärtsskalieren von verrauschten bildern
US10648924B2 (en) 2016-01-04 2020-05-12 Kla-Tencor Corp. Generating high resolution images from low resolution images for semiconductor applications
CN105931179B (zh) 2016-04-08 2018-10-26 武汉大学 一种联合稀疏表示与深度学习的图像超分辨率方法及系统
WO2017178808A1 (en) 2016-04-12 2017-10-19 Magic Pony Technology Limited Visual data processing using energy networks
GB201607994D0 (en) 2016-05-06 2016-06-22 Magic Pony Technology Ltd Encoder pre-analyser
WO2018053340A1 (en) 2016-09-15 2018-03-22 Twitter, Inc. Super resolution using a generative adversarial network
KR102631381B1 (ko) 2016-11-07 2024-01-31 삼성전자주식회사 컨볼루션 신경망 처리 방법 및 장치
US10832168B2 (en) 2017-01-10 2020-11-10 Crowdstrike, Inc. Computational modeling and classification of data streams
US10586310B2 (en) 2017-04-06 2020-03-10 Pixar Denoising Monte Carlo renderings using generative adversarial neural networks

Also Published As

Publication number Publication date
US10630996B2 (en) 2020-04-21
US10623756B2 (en) 2020-04-14
EP3259915A1 (de) 2017-12-27
WO2016132152A1 (en) 2016-08-25
GB201617478D0 (en) 2016-11-30
WO2016132153A1 (en) 2016-08-25
US10516890B2 (en) 2019-12-24
US10547858B2 (en) 2020-01-28
GB2539846B (en) 2017-11-01
US20180130180A1 (en) 2018-05-10
WO2016132147A1 (en) 2016-08-25
ES2872724T3 (es) 2021-11-02
EP3493149A1 (de) 2019-06-05
US20180130179A1 (en) 2018-05-10
US20170345130A1 (en) 2017-11-30
EP3259914A1 (de) 2017-12-27
GB201617481D0 (en) 2016-11-30
DE202016009089U1 (de) 2022-02-10
US10523955B2 (en) 2019-12-31
WO2016132149A1 (en) 2016-08-25
GB2540889A (en) 2017-02-01
EP3259920A1 (de) 2017-12-27
US20180130178A1 (en) 2018-05-10
WO2016132151A1 (en) 2016-08-25
EP3259918A1 (de) 2017-12-27
GB2543958B (en) 2017-09-27
WO2016132145A1 (en) 2016-08-25
GB2539845B (en) 2017-07-12
US20180130177A1 (en) 2018-05-10
US10887613B2 (en) 2021-01-05
US20170347110A1 (en) 2017-11-30
US10499069B2 (en) 2019-12-03
GB2539845A (en) 2016-12-28
US10904541B2 (en) 2021-01-26
US20170347060A1 (en) 2017-11-30
WO2016132150A1 (en) 2016-08-25
EP3259916B1 (de) 2021-05-26
US20180129918A1 (en) 2018-05-10
EP3259913A1 (de) 2017-12-27
EP3259912B1 (de) 2021-09-01
WO2016132146A1 (en) 2016-08-25
EP3259912A1 (de) 2017-12-27
US11528492B2 (en) 2022-12-13
EP3259916A1 (de) 2017-12-27
GB201617482D0 (en) 2016-11-30
ES2873845T3 (es) 2021-11-04
EP3259918B1 (de) 2020-08-19
WO2016132148A1 (en) 2016-08-25
EP3259910B1 (de) 2021-04-28
US20170347061A1 (en) 2017-11-30
EP3259919A1 (de) 2017-12-27
EP3259911B1 (de) 2021-04-07
EP3259910A1 (de) 2017-12-27
EP3259913B1 (de) 2021-05-12
GB2540889B (en) 2017-07-12
GB201617471D0 (en) 2016-11-30
DE202016009107U1 (de) 2022-04-27
EP3259911A1 (de) 2017-12-27
GB2539846A (en) 2016-12-28
GB2543429A (en) 2017-04-19
DE202016009101U1 (de) 2022-04-05
US20170374374A1 (en) 2017-12-28
GB2543958A (en) 2017-05-03
DE202016009100U1 (de) 2022-04-05
WO2016132154A1 (en) 2016-08-25
GB201617475D0 (en) 2016-11-30
GB2543429B (en) 2017-09-27
US10582205B2 (en) 2020-03-03
DE202016009091U1 (de) 2022-02-10

Similar Documents

Publication Publication Date Title
DE202016009102U1 (de) Verbesserung visueller Daten mittels gestufter Faltungen
US11234006B2 (en) Training end-to-end video processes
GB2548749A (en) Online training of hierarchical algorithms

Legal Events

Date Code Title Description
R437 Application is deemed to be withdrawn due to failure to submit translation
R409 Internal rectification of the legal status completed
R151 Utility model maintained after payment of second maintenance fee after six years
R207 Utility model specification