DE102021119882A1 - Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen - Google Patents

Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen Download PDF

Info

Publication number
DE102021119882A1
DE102021119882A1 DE102021119882.8A DE102021119882A DE102021119882A1 DE 102021119882 A1 DE102021119882 A1 DE 102021119882A1 DE 102021119882 A DE102021119882 A DE 102021119882A DE 102021119882 A1 DE102021119882 A1 DE 102021119882A1
Authority
DE
Germany
Prior art keywords
background image
confidence
estimated background
image
estimated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021119882.8A
Other languages
English (en)
Inventor
Itay Benou
Yevgeny Priziment
Tzachi Herskovich
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.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE102021119882A1 publication Critical patent/DE102021119882A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/251Fusion techniques of input or preprocessed data
    • 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
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/803Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • 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/10Image acquisition modality
    • G06T2207/10024Color image
    • 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]
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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/20212Image combination
    • G06T2207/20224Image subtraction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Signal Processing (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Graphics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Techniken, die sich auf eine Videohintergrundschätzung beziehen, einschließlich des Erzeugens eines endgültigen Hintergrundbilds ohne Vordergrundobjekte basierend auf einem Eingangsvideo werden besprochen. Solche Techniken beinhalten Erzeugen eines ersten und eines zweiten geschätzten Hintergrundbilds unter Verwendung von zeitlicher bzw. räumlicher Hintergrundbildmodellierung und Fusionieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf einer ersten und einer zweiten Konfidenzabbildung, die dem ersten und dem zweiten geschätzten Hintergrundbild entsprechen, um das endgültige geschätzte Hintergrundbild zu erzeugen.

Description

  • STAND DER TECHNIK
  • Die Fähigkeit, saubere Hintergrundbilder aus Eingangsvideosequenzen zu rekonstruieren, ist eine Schlüsselkomponente in zahlreichen Computervisionsanwendungen einschließlich Detektion von Objekten im Vordergrund, Segmentierung und Analyse von auffälligen Bewegungen. Diese Techniken werden in einem weiten Bereich von Anwendungen verwendet, wie etwa Videoüberwachung, Mensch-Maschine-Schnittstelle, objektbasierter Videocodierung, optischer Bewegungserfassung und anderen. Insbesondere begünstigt hochgenaue Hintergrundschätzung volumetrische Mehransichts-Videoerzeugungsanwendungen. Beispielsweise ist in immersivem Video und anderen Kontexten, wie etwa Computervisionsanwendungen, eine Anzahl von Kameras um eine interessierende Szene, wie etwa ein Spielfeld, herum installiert. Unter Verwendung von Video, das von den Kameras erhalten wird, wird ein 3D-Modell (z. B. über ein volumetrisches Punktwolkenmodell oder eine andere Repräsentation) für die Szene für jede Zeitinstanz des Videos erzeugt. Eine fotorealistische Ansicht aus einer virtuellen Ansicht innerhalb der Szene kann dann erzeugt werden, um eine immersive Erfahrung für einen Benutzer bereitzustellen. Solche Techniken ermöglichen es einer virtuellen Kamera, in dem 3D-Raum zu navigieren, um eine Aktion von der Szene an einem beliebigen Ort und aus einer beliebigen Perspektive oder einem beliebigen Winkel innerhalb der Szene wiederzugeben. Das Erzeugen von qualitativ hochwertigen Hintergrundbildern (z. B. Bilder, bei denen Vordergrundobjekte entfernt und durch geschätzten Hintergrund ersetzt sind) für jede einzelne Kameraansicht verbessert die Vordergrundsegmentierung und stellt dadurch eine genauere 3D-Rekonstruktion der Szene bereit.
  • Die Rekonstruktion eines sauberen Hintergrundbilds aus Video, umfassend Vordergrundobjekte, hat zahlreiche Herausforderungen aufgrund einer Vielzahl von Störfaktoren in Videosequenzen, wie z. B. überladenen Szenen, variierenden Beleuchtungsbedingungen, dynamischem Hintergrund (z. B. eine Menge bei einem Sportereignis), nicht-statischen Kameras, Vordergrundobjekten, die im Hintergrund verschwinden oder aus diesem heraustreten können (z. B. Autos auf einem Parkplatz), und anderen Gründen. Existierende Techniken zur sauberen Hintergrundmodellierung und Schätzung weisen eine Vielzahl von Mängeln auf.
  • In statistischen Modellen werden Hintergrundpixel durch parametrische (oder nichtparametrische) Dichtefunktionen modelliert, die versuchen, die Verteilung beobachteter Hintergrundpixel anzunähern. Statistische Modelle sind jedoch aufgrund hoher Dimensionalität ganzer Bilder auf pixelweise probabilistische Modellierung beschränkt und behandeln infolgedessen die einzelnen Pixel unabhängig voneinander ohne Berücksichtigung räumlicher Korrelationen zwischen ihnen, was die Qualität der geschätzten Bilder signifikant einschränkt. Des Weiteren ist auch nach Erhalt eines Wahrscheinlichkeitsdichtemodells des Hintergrunds ein Abtasten aus diesem Modell (um ein sauberes Hintergrundbild zu erzeugen) nicht immer möglich. Cluster-basierte Modelle gehen davon aus, dass jedes Pixel in dem Frame einem von mehreren möglichen Clustern zugeordnet werden kann, die entweder Vordergrund- oder Hintergrundpixel repräsentieren. Pixel werden unter Verwendung einiger repräsentativer Merkmale (z. B. ihrer RGB-Werte) repräsentiert und basierend auf dieser Repräsentation mit dem geeigneten Cluster assoziiert. Cluster-basierte Modelle verarbeiten jedoch jedes Pixel unabhängig von seinen räumlich benachbarten Pixeln, und infolgedessen kann der geschätzte Hintergrund an räumlichen Inkonsistenzen leiden, die als Speckle-Rauschen angesehen werden können. Unterraum-Lernverfahren verwenden eine Trainingsmenge von Bildern, die Hintergrundpixel enthalten, die verwendet werden, um einen Hintergrund-Unterraum zu konstruieren und eine Projektionsmatrix zu berechnen, die verwendet wird, um Bilder auf diesen unterdimensionalen Raum abzubilden. Dann wird durch Abbilden eines neuen Bildes auf den gelernten Unterraum und Rückprojektion auf den Bildraum eine saubere Hintergrundnäherung des Originalbildes erreicht. Unterraum-Lernverfahren weisen jedoch signifikante Einschränkungen auf, wie etwa eine Erwartung, dass die Größe der Vordergrundobjekte in der Trainingssequenz relativ klein ist und dass sie für viele Einzelbilder nicht den gleichen Ort belegen. Des Weiteren haben Unterraum-Lernverfahren Schwierigkeiten beim Repräsentieren multimodaler Daten, ihr Aktualisierungsprozess ist rechenintensiv, und ihre Anwendung auf Mehrkanaldaten ist aufgrund höherer Dimensionalitäten nicht einfach. In tiefen Lernmodellen werden vollständig faltende neuronale Netzwerke (z. B. Codierer-Decodierer-Architekturen), sequenzielle Netzwerke (z. B. rekurrente neuronale Netzwerke) und faltende neuronale 3D-Netzwerke (z. B. angewendet auf 3D-Videoausschnitte) verwendet. Tiefe Lernverfahren leiden jedoch unter Nachteilen, die darin bestehen, dass sie überwachte Lernverfahren ist (die eine große Menge an menschlich annotierten Daten erfordern), rechenintensiv sind und in ihrer Robustheit und Fähigkeit beschränkt sind, um sich schnell an schnelle zeitliche Variationen in der Szene anzupassen. Bei Bild-Inpainting-Modellen wird ein Teil des Eingangsbildes ausgeblendet (z. B. Vordergrundobjekte), und die fehlenden Teile werden aus den sichtbaren Teilen vervollständigt. Allerdings sind Bild-Inpainting-Modelle dazu ausgelegt, fehlende Teile in Bildern zu vervollständigen, anstatt eine vollständige Hintergrundmodellierung durchzuführen.
  • Es ist wünschenswert, in Videos saubere Hintergrundbilder mit hoher Genauigkeit und Stabilität zu rekonstruieren. Die vorliegenden Verbesserungen wurden im Hinblick auf diese und andere Überlegungen benötigt. Solche Verbesserungen können kritisch werden, da der Wunsch, neue Computervisionsanwendungen und andere bereitzustellen, weiter zunimmt.
  • Figurenliste
  • Das hierin beschriebene Material ist in den beigefügten Figuren beispielhaft und nicht einschränkend veranschaulicht. Aus Gründen der Einfachheit und Klarheit der Veranschaulichung sind Elemente, die in den Figuren veranschaulicht sind, nicht notwendigerweise maßstabsgetreu gezeichnet. Zum Beispiel können die Abmessungen einiger Elemente bezogen auf andere Elementen aus Gründen der Klarheit übertrieben sein. Ferner wurden, wo dies als geeignet angesehen wurde, Bezugszeichen zwischen den Figuren wiederholt, um entsprechende oder analoge Elemente anzugeben. In den Figuren gilt:
    • 1 veranschaulicht ein beispielhaftes System zum Durchführen einer Videohintergrundschätzung;
    • 2 veranschaulicht ein beispielhaftes Kamera-Array, das an einer beispielhaften Szene trainiert wird;
    • 3 veranschaulicht einen beispielhaften Prozess zum Erzeugen eines geschätzten Hintergrundbilds basierend auf einem oder mehreren Eingangsbildern;
    • 4 veranschaulicht ein beispielhaftes Eingangsvideobild;
    • 5 veranschaulicht ein beispielhaftes resultierendes geschätztes Hintergrundbild;
    • 6 ist ein Flussdiagramm, das einen beispielhaften Prozess zum Durchführen einer Videohintergrundschätzung veranschaulicht;
    • 7 ist ein veranschaulichendes Diagramm eines beispielhaften Systems zum Durchführen einer Videohintergrundschätzung;
    • 8 ist ein veranschaulichendes Diagramm eines beispielhaften Systems; und
    • 9 veranschaulicht eine beispielhafte Vorrichtung, die in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Eine oder mehrere Ausführungsformen oder Implementierungen werden nun unter Bezugnahme auf die beigefügten Figuren beschrieben. Wenngleich spezielle Konfigurationen und Anordnungen erörtert werden, versteht es sich, dass dies lediglich veranschaulichenden Zwecken dient. Der Fachmann in dem relevanten Gebiet wird erkennen, dass andere Konfigurationen und Anordnungen eingesetzt werden können, ohne vom Wesen und Schutzumfang der Beschreibung abzuweichen. Für den Fachmann in dem relevanten Gebiet ist ersichtlich, dass hierin beschriebene Techniken und/oder Anordnungen auch in einer Vielfalt von anderen als den hierin beschriebenen Systemen und Anwendungen eingesetzt werden können.
  • Wenngleich die folgende Beschreibung verschiedene Implementierungen darlegt, die in Architekturen, wie System-on-a-Chip-Architekturen (SoC-Architekturen), manifestiert sein können, sind eine Implementierung der hierin beschriebenen Techniken und/oder Anordnungen nicht auf bestimmte Architekturen und/oder Rechensysteme beschränkt und können durch eine beliebige Architektur und/oder ein beliebiges Rechensystem für ähnliche Zwecke implementiert werden. Beispielsweise können verschiedene Architekturen, die zum Beispiel mehrere Integrierter-Schaltkreis(IC: Integrated Circuit)-Chips und/oder -Gehäuse und/oder verschiedene Rechenvorrichtungen und/oder Verbraucherelektronik(CE: Consumer Electronics)-Vorrichtungen, wie etwa Settop-Boxen, Smartphones usw., einsetzen, die hier beschriebenen Techniken und/oder Anordnungen implementieren. Wenngleich die folgende Beschreibung möglicherweise zahlreiche spezielle Einzelheiten, wie Logikimplementierungen, Typen und Wechselbeziehungen von Systemkomponenten, Logikpartitionierungs-/Integrationsauswahlen usw. darlegt, kann der beanspruchte Gegenstand ferner ohne derartige spezielle Einzelheiten umgesetzt werden. In anderen Fällen ist einiges Material, wie zum Beispiel Steuerstrukturen und vollständige Softwareanweisungssequenzen, möglicherweise nicht ausführlich gezeigt, um das hierin offenbarte Material nicht zu verdecken.
  • Das hierin offenbarte Material kann in Hardware, Firmware, Software oder einer beliebigen Kombination davon implementiert sein. Das hierin offenbarte Material kann auch als auf einem maschinenlesbaren Medium gespeicherte Anweisungen implementiert sein, die durch einen oder mehrere Prozessoren gelesen und ausgeführt werden können. Ein maschinenlesbares Medium kann ein beliebiges Medium und/oder einen beliebigen Mechanismus zum Speichern oder Übertragen von Informationen in einer durch eine Maschine (z. B. eine Rechenvorrichtung) lesbaren Form einschließen. Zum Beispiel kann ein maschinenlesbares Medium Festwertspeicher (ROM); Direktzugriffsspeicher (RAM); Magnetplattenspeicherungsmedien; optische Speicherungsmedien; Flash-Speicher-Vorrichtungen; elektrische, optische, akustische oder andere Formen von propagierten Signalen (z. B. Trägerwellen, Infrarotsignale, digitale Signale usw.) und anderes einschließen.
  • Bezugnahmen in der Patentschrift auf „eine Implementierung“, „eine beispielhafte Implementierung“ usw. geben an, dass die beschriebene Implementierung ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Charakteristik einschließen kann, wobei jedoch möglicherweise nicht notwendigerweise jede Ausführungsform das bestimmte Merkmal, die bestimmte Struktur oder die bestimmte Charakteristik einschließt. Darüber hinaus beziehen sich solche Ausdrücke nicht notwendigerweise auf dieselbe Implementierung. Wenn ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Charakteristik in Verbindung mit einer Ausführungsform beschrieben wird, wird außerdem vorgebracht, dass es im Kenntnisbereich eines Fachmanns liegt, ein solches Merkmal, eine solche Struktur oder eine solche Charakteristik in Verbindung mit anderen Implementierungen zu bewirken, unabhängig davon, ob es hierin ausdrücklich beschrieben wird oder nicht.
  • Die Ausdrücke „im Wesentlichen“, „dicht dran“, „ungefähr“, „in der Nähe von“ und „etwa“ beziehen sich allgemein auf einen Bereich innerhalb von +/- 10% eines Zielwerts. Beispielsweise bedeuten die Begriffe „im Wesentlichen gleich“, „etwa gleich“ und „ungefähr gleich“, sofern im expliziten Kontext ihrer Verwendung nichts anderes angegeben ist, dass zwischen den so beschriebenen Dingen nur eine nebensächliche Variation besteht. In der Technik beträgt eine solche Variation typischerweise nicht mehr als +/-10 % eines vorbestimmten Zielwerts. Sofern nicht anders spezifiziert, weist die Verwendung der Ordnungsadjektive „erste/r/s“, „zweite/r/s“ und „dritte/r/s“ usw. zur Beschreibung eines gemeinsames Objekts lediglich darauf hin, dass sich auf unterschiedliche Instanzen von gleichen Objekten bezogen wird, und soll nicht andeuten, dass die so beschriebenen Objekte in einer gegebenen Sequenz, sei es zeitlich, räumlich, in der Rangfolge oder auf eine beliebige andere Weise, vorliegen müssen.
  • Verfahren, Vorrichtungen, Einrichtungen, Datenverarbeitungsplattformen und Artikel werden hier in Bezug auf das Durchführen einer Videohintergrundschätzung und insbesondere auf das Verwenden räumlich-zeitlicher Modelle zum Erzeugen eines geschätzten Hintergrundbilds beschrieben.
  • Wie oben beschrieben, ist es vorteilhaft, saubere Hintergrundbilder aus einem Eingangsvideo effizient zu rekonstruieren. Insbesondere ist es für jede oder etwas aus einer Sequenz von Videobildern wünschenswert, Hintergrundbilder zu erzeugen, die ein vollständiges Hintergrundbild mit entfernten Vordergrundobjekten beinhalten. Wie hier verwendet, gibt der Ausdruck Hintergrundbild ein Vollbild mit nur Hintergrundinhalt an. Ein solcher Hintergrundinhalt stellt typischerweise einen Hintergrund für Vordergrundinhalt bereit, der üblicherweise in der Szene von größerem Interesse ist. Der Begriff Bild gibt ein Videobild an und wird hier austauschbar mit den Begriffen Frame, Videobild, Bild und ähnlichen Begriffen verwendet. Solche Bilder können eine beliebige Auflösung aufweisen und können unter Verwendung eines beliebigen Formats und eines beliebigen Farbraums, wie etwa RGB, YUV, YCbCr usw., bereitgestellt werden. Zum Beispiel können für jedes Pixel eines Bildes drei Werte bereitgestellt werden, einer für jeden Farbkanal des verwendeten Farbraums.
  • Das resultierende oder endgültige geschätzte Hintergrundbild, das unter Verwendung der hier besprochenen Techniken erzeugt wird, kann in einer beliebigen Anwendung oder einem beliebigen Kontext verwendet werden, wie etwa bei Computervisionsanwendungen, Vordergrundobjektdetektion, Bildsegmentierung, Merkmalsbewegungsanalyse, Videoüberwachung, Mensch-Maschine-Schnittstelle, objektbasierter Videocodierung, optischer Bewegungserfassung und anderen. Insbesondere können solche Techniken frühzeitig in einer Videoverarbeitungs-Pipeline im Zusammenhang mit Computervision angewendet werden, um notwendige Daten bereitzustellen, die von beliebigen Modulen später in der Pipeline verwendet werden. Das heißt, saubere Hintergrundbilder, die einem Eingangsvideo entsprechen, sind ein wichtiger Eingang in einer Vielzahl von Computervisionsmodulen, Anwendungen usw.
  • Bei manchen Ausführungsformen werden sowohl zeitliche als auch räumliche Hintergrundvorhersagemodelle basierend auf dem Eingangsvideo angewendet, um entsprechende geschätzte Hintergrundbilder und Konfidenzabbildungen zu erzeugen. Der Begriff Hintergrundbild gibt ein Vollbild mit nur Hintergrundinhalt an (bei dem z. B. Vordergrundinhalt entfernt ist). Der Begriff Konfidenzabbildung gibt für jedes Pixel des entsprechenden geschätzten Hintergrundbilds eine gemessene Konfidenz in dem entsprechenden Pixel an. Zum Beispiel können die Konfidenzwerte der Konfidenzabbildung in dem Bereich von 0 bis einschließlich 1 liegen und keine Konfidenz bis hin zu sehr hoher Konfidenz angeben. Zum Beispiel wird das zeitliche Hintergrundvorhersagemodell für ein Eingangsvideobild unter Verwendung des Eingangsvideobilds und einer beliebigen Anzahl von zeitlich vorherigen Eingangsvideobildern angewendet, um ein geschätztes Hintergrundbild und eine Konfidenzabbildung für das Eingangsvideobild zu erzeugen. Das geschätzte Hintergrundbild und die Konfidenzabbildung können als zeitlich basiert oder dergleichen charakterisiert werden. Zum Beispiel kann das zeitliche Hintergrundvorhersagemodell auf kontinuierliche Weise für eingehende Videobilder auf das Eingangsvideo angewendet werden. Des Weiteren wird das räumliche Hintergrundvorhersagemodell für das Eingangsvideobild unter Verwendung nur des Eingangsvideobilds und ohne Verwendung irgendwelcher zeitlich früherer Eingangsvideobilder angewendet, um ein anderes geschätztes Hintergrundbild und eine entsprechende Konfidenzabbildung für das Eingangsvideobild zu erzeugen. Das geschätzte Hintergrundbild und die Konfidenzabbildung, die durch das räumliche Hintergrundvorhersagemodell erzeugt werden, können als räumlich basiert oder dergleichen charakterisiert werden. Insbesondere verwendet das räumliche Modell nur räumliche Hinweise aus dem aktuellen Videobild, während das zeitliche Modell Informationen aus zeitlich früheren Eingangsvideobildern verwendet.
  • Die zeitlichen und räumlichen Hintergrundvorhersagemodelle können direkt auf die Eingangsvideobilder angewendet werden, oder sie können durch Vordergrundobjektmasken unterstützt werden, die durch Anwendung von Objektdetektion auf die Eingangsvideobilder erzeugt werden. Bei Ausführungsformen, bei denen ein Objektdetektor eingesetzt wird, können die besprochenen Techniken speziell auf Vordergrundbereiche einschließlich detektierter Objekte angewendet werden. Zum Beispiel können die zeitlichen und räumlichen Hintergrundvorhersagemodelle spezifisch auf Vordergrundbereiche in dem Bild angewendet werden, indem Anwendungen zur Detektion von Vordergrundobjekten als ein vorläufiger Schritt verwendet werden. Des Weiteren können die zeitlichen und räumlichen Hintergrundvorhersagemodelle derart verbunden sein, dass der Ausgang des einen Modells als Eingang für das andere Modell verwendet wird. Solche zeitlichen und räumlichen Hintergrundvorhersagemodelle können unter Verwendung verschiedener Modelle implementiert werden. Solche Eigenschaften werden weiter unten erörtert.
  • Aus den resultierenden zeitlich und räumlich basierten geschätzten Hintergrundbildern und deren entsprechenden Konfidenzabbildungen wird dann ein resultierendes geschätztes Hintergrundbild für das aktuelle Eingangsvideobild erzeugt. Insbesondere werden die zeitlich basierten und räumlich basierten geschätzten Hintergrundbilder kombiniert oder fusioniert, um ein resultierendes geschätztes Hintergrundbild basierend auf den Konfidenzabbildungen zu erzeugen. Bei manchen Ausführungsformen basiert die Fusion auf einer Anwendung einer Torfunktion, die den Pixelwert auswählt, der der höheren Konfidenzvorhersage bei jedem Pixel entspricht. Bei manchen Ausführungsformen wird die Fusion durch Linearkombination der vorhergesagten Pixelwerte unter Verwendung der Konfidenzwerte als Gewichtungen durchgeführt. Bei manchen Ausführungsformen wird die Fusion durch Anwenden einer auf tiefem Lernen basierenden Schicht auf ein Eingangsvolumen einschließlich des zeitlich basierten geschätzten Hintergrundbilds, der räumlich basierten geschätzten Hintergrundbilder und der entsprechenden Konfidenzabbildungen durchgeführt, um ein Ausgangsvolumen einschließlich des resultierenden geschätzten Hintergrundbilds zu erzeugen. Bei manchen Ausführungsformen wird die Fusion durchgeführt, indem eine auf tiefem Lernen basierende Schicht separat auf die zwei Vorhersagen angewendet wird. Alternativ zu der bzw. den tiefen Lernschichten können andere lernbare Fusionierungen, Kombinationsfunktionen oder dergleichen eingesetzt werden.
  • Die hier diskutierten Techniken kombinieren zeitliche und räumliche Verfahren zur Hintergrundbildschätzung, so dass separate zeitliche und räumliche Module verwendet werden, um eine hohe zeitliche Ansprechempfindlichkeit und Robustheit zu erhalten. Des Weiteren wird ein konfigurierbares Konfidenz-basiertes Fusionsmodul bereitgestellt, das die Zuverlässigkeit der vorhergesagten Bilder erhöht. Insbesondere führen die erörterten Techniken eine Videohintergrundschätzung durch, indem zeitliche und räumliche Modelle kombiniert werden, um qualitativ hochwertige und zeitlich stabile saubere Hintergrundbilder über die Anwendung eines Vordergrundobjektdetektors, eines zeitlichen Hintergrundmodells, eines räumlichen Hintergrundmodells und eines Fusionsmodells zu erzeugen, um die vorhergesagten Hintergrundbilder aus dem zeitlichen und räumlichen Hintergrundmodell zu kombinieren oder zu fusionieren. Den zeitlichen und räumlichen Modellen zu ermöglichen, separate Hintergrundbilder vorherzusagen und diese dann basierend auf ihren jeweiligen Konfidenzen zu kombinieren, liefert eine Vielzahl von Vorteilen, wie etwa objektiv und subjektiv hochwertige Hintergrundbilder, Robustheit selbst im Kontext stark maskierter Bilder, hochparallele Verarbeitung und Flexibilität.
  • 1 veranschaulicht ein beispielhaftes System 100 zum Durchführen einer Videohintergrundschätzung, das in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Wie in 1 gezeigt, weist das System 100 einen Objektdetektor 101, ein zeitliches Hintergrundmodellmodul 102, ein räumliches Hintergrundmodellmodul 103 und ein Konfidenz-basiertes Schätzungsfusionsmodul 104 auf. Wie gezeigt, empfängt das System 100 Eingangsvideo 111 einschließlich einer beliebigen Anzahl von Eingangsvideobildern 112, 113, 114 usw., so dass die Eingangsvideobilder 112, 113, 114 in einer zeitlichen Reihenfolge sind, wobei Videobild 112 einer Zeit t entspricht, Videobild 113 dem Videobild 112 in einer zeitlichen Reihenfolge unmittelbar folgt und einer Zeit t+1 entspricht, Videobild 114 dem Videobild 113 in einer zeitlichen Reihenfolge unmittelbar folgt und einer Zeit t+2 entspricht, usw. Obwohl der Übersichtlichkeit halber bezüglich der Verarbeitung von Eingangsbildern 112, 113, 114 in zeitlicher Reihenfolge dargestellt, müssen die Eingangsvideobilder nicht in zeitlicher Reihenfolge verarbeitet werden. Bei manchen Ausführungsformen werden die Videobilder (oder Frames) in einer Vorwärtsreihenfolge und dann einer Rückwärtsreihenfolge über eine beliebige Anzahl von Iterationen verarbeitet. In Fällen, in denen die Videobilder (oder Frames) in zeitlicher Reihenfolge verarbeitet werden, wird das Videobild 112 zum Zeitpunkt t vor dem Videobild 113 zum Zeitpunkt t+1 (und nach irgendwelchen vorhergehenden Videobildern) in das System 100 eingespeist, das Videobild 113 zum Zeitpunkt t+1 wird vor dem Videobild 114 zum Zeitpunkt t+2 in das System 100 eingespeist und so weiter. Die Diskussion hierin ist der Übersichtlichkeit halber auf die Verarbeitung des Videobildes 112 gerichtet. Das System 100 kann über eine beliebige geeignete Vorrichtung oder Vorrichtungen implementiert werden, wie etwa zum Beispiel einen Server, einen Personal Computer, einen Laptop-Computer, ein Tablet, ein Phablet, ein Smartphone, eine Digitalkamera, eine Spielkonsole, eine tragbare Vorrichtung, eine Anzeigevorrichtung, eine Alles-in-Einem-Vorrichtung, eine Zwei-in-Einem-Vorrichtung oder dergleichen. Wie hier verwendet, können ein System, eine Einrichtung, ein Computer oder eine Datenverarbeitungsvorrichtung eine beliebige solche Vorrichtung oder Plattform enthalten.
  • Wie auch gezeigt, beinhaltet das Videobild 112 eine beliebige Anzahl von Vordergrundobjekten, wie etwa das Vordergrundobjekt 116, das unter Verwendung eines Sterns veranschaulicht ist. In 1 ist der Hintergrund der Übersichtlichkeit halber als durchgezogen weiß dargestellt. Es versteht sich, dass solche Hintergründe Textur- und andere Bildelemente umfassen, die in aktuell von den Vordergrundobjekten 116 verdeckten Bereichen aufgefüllt oder repliziert werden sollen, so dass ein gesamtes Hintergrundbild rekonstruiert wird. Ein beispielhaftes Eingangsbild und ein entsprechendes rekonstruiertes Hintergrundbild sind hier mit Bezug auf die 4 und 5 relativ zu einem Sportereignis dargestellt; jedoch kann ein beliebiger geeigneter Hintergrund unter Verwendung der hier besprochenen Techniken erzielt werden. Solche Vordergrundobjekte 116 können beliebige Objekte sein, wie etwa Personen, Tiere, Fahrzeuge, andere Objekte oder Kombinationen davon. Insbesondere sind solche Vordergrundobjekte 116 hier mit Bezug auf Menschen und insbesondere auf Sportler, Referenzen usw. in einem Sportwettbewerb veranschaulicht. Das Eingangsvideo 111 kann von einer beliebigen Quelle, wie etwa einer Videokamera, einer Speichervorrichtung usw., empfangen werden. Bei manchen Ausführungsformen werden die mit Bezug auf das System 100 besprochenen Techniken auf ein einzelnes Eingangsvideo 111 angewendet. Bei manchen Ausführungsformen werden solche Techniken separat auf eine Anzahl von Eingangsvideoquellen angewendet, die jeweils von einer Kamera auf eine spezielle Szene gerichtet sind. Beispielsweise kann das System 100 einen Teil einer volumetrischen Videoerzeugungs-Pipeline bereitstellen. Eine solche volumetrische Videoerzeugung kann Erhalten von Video von einer Anzahl von Kameras, die auf eine Szene gerichtet sind, und Erzeugen eines 3D-Modells (z. B. über ein volumetrisches Punktwolkenmodell oder eine andere Repräsentation), das die Szene repräsentiert, für jede Zeitinstanz des Videos beinhalten. Das 3D-Modell kann unter Verwendung von Textur gefärbt werden, die von der Szene erhalten wird, und in einer Vielzahl von Kontexten verwendet werden, wie etwa zum Bereitstellen einer fotorealistischen Ansicht aus einer beliebigen virtuellen Ansicht innerhalb der Szene. Solche Ansichten liefern ein stark immersives Benutzererlebnis.
  • 2 veranschaulicht ein beispielhaftes Kamera-Array 201, das auf eine beispielhafte Szene 210 gerichtet ist, die in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Bei der veranschaulichten Ausführungsform beinhaltet das Kamera-Array 201 36 Kameras, die auf ein Sportfeld gerichtet sind. Das Kamera-Array 201 kann jedoch eine beliebige geeignete Anzahl von Kameras beinhalten, die auf die Szene 210 gerichtet sind, wie etwa nicht weniger als 15 Kameras. Zum Beispiel kann das Kamera-Array 201 auf die Szene 210 gerichtet sein, um ein 3D-Modell der Szene 210 zu erzeugen, und weniger Kameras liefern möglicherweise keine adäquaten Informationen, um das 3D-Modell zu erzeugen. Das Kamera-Array 201 kann an einem Stadion (nicht gezeigt), das Sportfeld der Szene 210 umgibt, und entlang des Bodens, der das Sportfeld umgibt, montiert, kalibriert und auf die Szene 210 gerichtet sein, um simultane Video-Frames der Szene 210 aufzunehmen. Wie gezeigt, weist jede Kamera des Kamera-Arrays 201 eine spezielle Ansicht der Szene 210 auf. Zum Beispiel weist die Kamera 202 eine erste Ansicht der Szene 210 auf, die Kamera 203 weist eine zweite Ansicht einer Szene auf und so weiter. Wie hier verwendet, gibt der Begriff Ansicht den Bildinhalt einer Bildebene einer speziellen Kamera des Kamera-Arrays 201 oder Bildinhalt einer beliebigen Ansicht von einer virtuellen Kamera an, die sich innerhalb der Szene 210 befindet. Insbesondere kann Eingangsvideo für manche oder alle der Kameras des Kamera-Arrays 201 zur Verarbeitung über das System 100 oder eine beliebige Anzahl solcher Systeme bereitgestellt werden, um ein sauberes Hintergrundbild für manche oder alle der assoziierten Ansichten zu erzeugen.
  • Zurückkehrend zu 1 wird, wie gezeigt, das Eingangsvideo 111 durch den Objektdetektor 101 empfangen. Das Eingangsvideo 111 kann in einem beliebigen geeigneten Format vorliegen und kann eine beliebige Auflösung aufweisen. Bei manchen Ausführungsformen ist das Eingangsvideo 111 eine RGB-Rohvideosequenz, und jedes der Videobilder 112, 113, 114 beinhaltet eine Anzahl von Pixeln mit der definierten Auflösung (z. B. VGA (Video Graphics Array), HD (High-Definition), Full-HD (z. B. 1080 p), Video mit 4K-Auflösung, Video mit 8K-Auflösung usw.), die jeweils einen entsprechenden R-Wert, G-Wert und B-Wert aufweisen. Der Objektdetektor 101 wendet eine Objektdetektion (z. B. bildweise) auf jedes der Videobilder 112, 113, 114 an, um Vordergrundobjekte 116 zu detektieren und entsprechende Begrenzungsboxen bereitzustellen, wie mit Bezug auf die Begrenzungsbox 115 veranschaulicht ist. Es wird angemerkt, dass manche Begrenzungsboxen mehrere detektierte Vordergrundobjekte 116 beinhalten können. Die Begrenzungsboxen 115 können unter Verwendung einer beliebigen geeigneten Datenstruktur repräsentiert werden, wie etwa eines Indikators für einen Ort einer oberen linken Ecke und horizontaler und vertikaler Größen jeder Begrenzungsbox. Basierend auf Begrenzungsboxen 115 wird ein entsprechendes maskiertes Bild 137 erzeugt, so dass eine Vordergrundobjektmaske 117 darin bereitgestellt wird und erste Pixelwerte (z. B. Werte von 0 oder 255) für den Bereich der detektierten Begrenzungsbox 115 und Hintergrundpixelwerte 138 (z. B. Werte, die jenen des Videobilds 112 entsprechen) für Nichtobjektbereiche (d. h. Hintergrundpixel) beinhaltet. Insbesondere wird für jedes der Videobilder 112, 113, 114 ein maskiertes Bild oder eine Objektmaske erzeugt. Es wird angemerkt, dass, obwohl das System 100 mit Bezug darauf veranschaulicht ist, dass das zeitliche Hintergrundmodellmodul 102 und das räumliche Hintergrundmodellmodul 103 auf das maskierte Bild 137 angewendet werden (z. B. basierend auf dem Eingangsvideo 111 und den Objektmasken 117), bei manchen Ausführungsformen das zeitliche Hintergrundmodellmodul 102 und das räumliche Hintergrundmodellmodul 103 direkt auf Videobilder 112, 113, 114 ohne eine solche Maskierung angewendet werden können. Eine solche Maskierung liefert jedoch typischerweise verbesserte Ergebnisse.
  • Die Implementierung des Systems 100 kann zum Beispiel die Anwendung von Detektion von Vordergrundobjekten Bild für Bild (z. B. Frame für Frame) über den Objektdetektor 101 beinhalten. Der Eingang in den Objektdetektor 101 ist ein Videobild 112 (z. B. ein RGB-Roh-Frame) einer Eingangsvideosequenz, wie etwa des Eingangsvideos 111. Das Videobild 112 kann durch / (x, y, t) charakterisiert werden, wobei x, y Orte innerhalb des Videobildes 112 repräsentieren und t den Zeitstempel des Videobildes 112 repräsentiert. Der Ausgang aus dem Objektdetektor 101 ist eine oder mehrere (z. B. ein Satz) rechteckige Detektionen um Vordergrundobjekte 116 herum, die im Videobild 112 erscheinen. Der Objektdetektor 101 kann beliebige geeignete Objektdetektionstechniken implementieren, wie etwa maschinenlernbasierte Detektion oder andere. Zum Beispiel kann der Objektdetektor 101 Viola-Jones Objektdetektion, skaleninvariante Merkmalstransformationsdetektion, Histogramm der Gradientenmerkmaldetektion, auf tiefem Lernen basierende Detektion, Einzelschuss-Multiboxdetektion, einmalige Detektion usw. implementieren. Wie gezeigt, werden die Vordergrundobjekte 116, sobald sie detektiert werden, über die Objektmaske 117 ausgeblendet und ein resultierendes Bild oder Frame IM (x, y, t) kann dem Zeithintergrundmodellmodul 102 und dem Raumhintergrundmodellmodul 103 bereitgestellt werden.
  • Das zeitliche Hintergrundmodellmodul 102 empfängt maskierte Bilder 137 (z. B. von denen jeweils eines Videobildern 112, 113, 114 entspricht) oder Videobilder 112, 113, 114, und das zeitliche Hintergrundmodellmodul 102 wendet eine zeitliche Hintergrundmodellierung unter Verwendung der maskierten Bilder 137 (oder des aktuellen Videobilds 112) und einer beliebigen Anzahl von zeitlich vorherigen maskierten Bildern 137 (oder Videobildern 113, 114) an. Die Diskussion des zeitlichen Hintergrundmodells 102 wird nun nur bezüglich der maskierten Bilder 137 fortgesetzt. Bei manchen Ausführungsformen wendet das zeitliche Hintergrundmodellmodul 102 eine kontinuierliche zeitliche Modellierung an und aktualisiert das kontinuierliche Modell basierend auf dem aktuellsten empfangenen maskierten Bild 137. Wie gezeigt, erzeugt das zeitliche Hintergrundmodellmodul 102 ein geschätztes Hintergrundbild 118 und eine entsprechende Konfidenzabbildung 120. Das geschätzte Hintergrundbild 118 beinhaltet eine Anzahl von Pixelwerten 119 bei zum Beispiel der Auflösung des Videobilds 112, so dass jeder Pixelwert 119 einen Wert für jeden eingesetzten Farbkanal beinhaltet (z. B. das geschätzte Hintergrundbild 118 ist ein RGB-Bild). Die Konfidenzabbildung 120 gibt für jedes Pixel des geschätzten Hintergrundbilds 118 eine gemessene Konfidenz in dem entsprechenden Pixelwert an. Zum Beispiel stellt der Konfidenzwert 121 eine Konfidenz im Pixelwert 119 des geschätzten Hintergrundbilds 118 bereit. Die Konfidenzwerte 121 können beliebige geeignete Werte beinhalten, wie etwa Werte in dem Bereich von 0 bis einschließlich 1, so dass niedrige Werte eine niedrigere Konfidenz angeben und höhere Werte eine höhere Konfidenz angeben.
  • Das zeitliche Hintergrundmodellmodul 102 kann ein geschätztes Hintergrundbild 118 unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken erzeugen. Bei manchen Ausführungsformen implementiert das zeitliche Hintergrundmodellmodul 102 Codebuch-Hintergrundmodellierung. Des Weiteren können Konfidenzwerte 121 der Konfidenzabbildung 120 beliebige geeignete Werte beinhalten. Bei manchen Ausführungsformen ist der Konfidenzwert 121 ein Abstand (z. B. L2-Abstandsmaß) zwischen dem Pixelwert 119 des geschätzten Hintergrundbilds 118 und einem entsprechenden Pixelwert (z. B. an derselben Stelle) des Videobildes 112. Bei manchen Ausführungsformen ist der Konfidenzwert 121 eine Varianz eines statistischen Modells, das verwendet wird, um das geschätzte Hintergrundbild 118 zu erzeugen. Beispielsweise kann das zeitliche Hintergrundmodellmodul 102 ein laufendes statistisches Modell einsetzen, um das geschätzte Hintergrundbild 118 zu erzeugen. Das heißt, das laufende statistische Modell wird verwendet, um den Pixelwert 119 zu erzeugen. Des Weiteren wird die Varianz für jedes Pixel (oder ein anderes statistisches Streuungsmaß) des statistischen Modells verwendet, um Konfidenzwerte 121 der Konfidenzabbildung 120 zu erzeugen. Das heißt, die entsprechende Streuung (z. B. Varianz), die zum Erzeugen des Pixelwerts 118 verwendet wird, kann (z. B. nach optionaler Skalierung) als Konfidenzwert 121 verwendet werden. Bei manchen Ausführungsformen stellen maskierte Bilder 137 (z. B. einschließlich eines aktuellen maskierten Bildes und einer beliebigen Anzahl von zeitlich vorherigen maskierten Bildern) ein Eingangsvolumen oder ein Eingangsbild 131 bereit und das zeitliche Hintergrundmodellmodul 102 wird auf das Eingangsbild 131 angewendet, um das geschätzte Hintergrundbild 118 und die Konfidenzabbildung 120 zu erzeugen. Das geschätzte Hintergrundbild 118 und die Konfidenzabbildung 120 können zum Beispiel als ein Ausgangsvolumen 133 charakterisiert werden.
  • Bei manchen Ausführungsformen nutzt das zeitliche Hintergrundmodellmodul 102 nichtmaskierte Pixel 138 (z. B. des Videobildes 112), um ein existierendes sauberes Hintergrundmodell zu aktualisieren (z. B. auf eine laufende Weise). Sobald die Aktualisierung abgeschlossen ist, wird das geschätzte Hintergrundbild 118 (z. B. ein sauberes Hintergrundbild) durch Gewichten unterschiedlicher Kriterien einschließlich Frequenz, Neuheit und maximaler negativer Lauflänge des Hintergrundpixelwerts erzeugt. Das geschätzte Hintergrundbild 118, das dem Videobild 112 entspricht, kann als I T ^ ( x , y , t )
    Figure DE102021119882A1_0001
    charakterisiert werden. Wie besprochen, erzeugt das zeitliche Hintergrundmodellmodul 102 zusätzlich zu dem geschätzten Hintergrundbild 118 auch eine Konfidenzabbildung 120, die als C T ^ ( x , y , t )
    Figure DE102021119882A1_0002
    charakterisiert sein kann, die Konfidenzwerte 121 oder Wahrscheinlichkeiten, p ∈ [0,1], beinhaltet, die das Konfidenzniveau ihrer Vorhersage an der Pixelposition (x, y) repräsentieren. Bei manchen Ausführungsformen wird die Konfidenzabbildung 120 durch Berücksichtigen des pixelweisen Abstands zwischen visuellen Eingangsbildern und der zeitlichen Statistik der Hintergrundwerte bestimmt.
  • Das räumliche Hintergrundmodellmodul 103 empfängt auch das maskierte Bild 137 oder Videobild 112 und das räumliche Hintergrundmodellmodul 103 wendet räumliche Hintergrundmodellierung auf das maskierte Bild 137 (oder Videobild 112) an. Insbesondere nutzt das räumliche Hintergrundmodellmodul 103 andere zeitlich vorherige Bilder des Eingangsvideos 111 nicht. Das räumliche Hintergrundmodellmodul 103 erzeugt ein geschätztes Hintergrundbild 122 und eine entsprechende Konfidenzabbildung 124. Wie bei dem geschätzten Hintergrundbild 118 beinhaltet das geschätzte Hintergrundbild 122 eine Anzahl von Pixelwerten 123 einschließlich eines Werts für jeden eingesetzten Farbkanal (z. B. das geschätzte Hintergrundbild 122 ist ein RGB-Bild). Des Weiteren gibt die Konfidenzabbildung 124 für jedes Pixel des geschätzten Hintergrundbilds 122 eine gemessene Konfidenz in dem entsprechenden Pixelwert an, so dass zum Beispiel der Konfidenzwert 125 eine Konfidenz in dem Pixelwert 123 des geschätzten Hintergrundbilds 122 bereitstellt. Bei manchen Ausführungsformen liegen die Konfidenzwerte 125 in dem Bereich von 0 bis einschließlich 1, so dass niedrige Werte eine niedrigere Konfidenz angeben und höhere Werte eine höhere Konfidenz angeben, obwohl ein beliebiger Wertebereich verwendet werden kann.
  • Das räumliche Hintergrundmodellmodul 103 kann ein geschätztes Hintergrundbild 122 unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken erzeugen. Bei manchen Ausführungsformen implementiert das räumliche Hintergrundmodellmodul 103 einen Inpainting-Algorithmus oder eine Inpainting-Technik. Bei manchen Ausführungsformen implementiert das räumliche Hintergrundmodellmodul 103 eine neuronale Netzwerkschicht oder neuronale Netzwerkschichten (z. B. eine Schicht oder Schichten eines vortrainierten faltenden neuronalen Netzwerks, CNN). Des Weiteren können Konfidenzwerte 125 der Konfidenzabbildung 124 unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken erzeugt werden. Bei manchen Ausführungsformen stellt das maskierte Bild 137 ein Eingangsvolumen oder einen Eingang 132 bereit, und das räumliche Hintergrundmodellmodul 103 wird auf den Eingang 132 angewendet, um das geschätzte Hintergrundbild 122 und die Konfidenzabbildung 124 zu erzeugen. Das geschätzte Hintergrundbild 122 und die Konfidenzabbildung 124 können zum Beispiel als ein Ausgangsvolumen 134 charakterisiert werden.
  • Bei manchen Ausführungsformen wird dem räumlichen Hintergrundmodellmodul 103 das maskierte Bild 137, IM(x,y, t), bereitgestellt, und das räumliche Hintergrundmodellmodul 103 sagt Pixelwerte für die Objektmaske 117 des maskierten Bildes 137 (z. B. der ausgeblendete Bereich des Frames) basierend auf verfügbarem sichtbarem Inhalt (z. B. nicht maskierte Pixel 138) voraus. Das räumliche Hintergrundmodellmodul 103 gibt ein geschätztes Hintergrundbild 122, I S ^ ( x , y , t ) ,
    Figure DE102021119882A1_0003
    aus, das am besten mit dem Kontext übereinstimmt, der durch nichtmaskierte Pixel 138 bereitgestellt wird. Bei manchen Ausführungsformen werden die Pixelwerte der Objektmaske 117 unter Verwendung eines Inpainting-Algorithmus erzeugt. Bei manchen Ausführungsformen werden die Pixelwerte der Objektmaske 117 über einen lembasierten Inpainting-Algorithmus (z. B. neuronale Netzwerkschicht oder neuronale Netzwerkschichten) erzeugt, der (z. B. beim Vortraining) optimiert ist, um eine Bildvervollständigung an einem separaten Trainingsdatensatz durchzuführen. Bei manchen Ausführungsformen werden die Pixelwerte der Objektmaske 117 über eine Patch-Matching-Technik (z. B. PatchMatch) erzeugt, die nicht auf einer neuronalen Netzwerkanwendung basiert. Wie beim zeitlichen Hintergrundmodellmodul 102 gibt das räumliche Hintergrundmodellmodul 103 ferner eine entsprechende Konfidenzabbildung 124 aus, die als C S ^ ( x , y , t )
    Figure DE102021119882A1_0004
    charakterisiert werden kann. Bei manchen Ausführungsformen stellt der besprochene lembasierte Inpainting-Algorithmus sowohl das geschätzte Hintergrundbild 122 als auch die Konfidenzabbildung 124 bereit. Das heißt, eine neuronale Netzwerkschicht oder neuronale Netzwerkschichten können auf den Eingang 132 einschließlich des maskierten Bildes 137 (z. B. drei Merkmalsabbildungen: eine für jeden Farbkanal des maskierten Bildes 137) angewendet werden, um den Ausgang 134 einschließlich des Ausgangsvolumens 134 zu erzeugen (z. B. vier Merkmalsabbildungen: eine für jeden Farbkanal des geschätzten Hintergrundbilds 122 und eine für die Konfidenzabbildung 124).
  • Wie besprochen, werden bei manchen Ausführungsformen das zeitliche Hintergrundmodellmodul 102 und das räumliche Hintergrundmodellmodul 103 parallel angewendet. Wie gezeigt, kann bei manchen Ausführungsformen der Ausgang des zeitlichen Hintergrundmodellmoduls 102 und/oder des räumlichen Hintergrundmodellmoduls 103 dem anderen aus dem zeitlichen Hintergrundmodellmodul 102 und dem räumlichen Hintergrundmodellmodul 103 als Eingang bereitgestellt werden. Das heißt, das Anwenden des zeitlichen Hintergrundmodellmoduls 102 kann ferner auf dem geschätzten Hintergrundbild 118 und/oder der Konfidenzabbildung 120 basieren. Zusätzlich oder alternativ dazu kann das Anwenden des räumlichen Hintergrundmodells 103 ferner auf dem geschätzten Hintergrundbild 122 und/oder der Konfidenzabbildung 124 basieren.
  • Beispielsweise kann das zeitliche Hintergrundmodellmodul 102 seine Vorhersage als Eingang in das räumliche Hintergrundmodellmodul 103 einspeisen. Bei manchen Ausführungsformen behandelt das räumliche Hintergrundmodellmodul 103, anstatt auf dem maskierten Bild 137 zu arbeiten, das geschätzte Hintergrundbild 118 (z. B. die zeitliche Hintergrundvorhersage) als eine anfängliche Schätzung, und das räumliche Hintergrundmodellmodul 103 verfeinert es in Bereichen mit niedriger Konfidenz gemäß verfügbaren räumlichen Informationen in dem maskierten Bild 137. Gleichermaßen kann das räumliche Hintergrundmodellmodul 103 das zeitliche Hintergrundmodellmodul 102 speisen, das die Vorhersage gemäß seinem zeitlichen Modell verfeinern kann.
  • Bei manchen Ausführungsformen sind das geschätzte Hintergrundbild 118 und/oder die Konfidenzabbildung 120 in dem Eingangsvolumen 132 enthalten, und das räumliche Hintergrundmodellmodul 103 wendet eine vortrainierte neuronale Netzwerkschicht oder - schichten an, um das geschätzte Hintergrundbild 122 und die Konfidenzabbildung 124 zu erzeugen. Bei anderen Ausführungsformen können das geschätzte Hintergrundbild 118 und die Konfidenzabbildung 120 verwendet werden, um Pixel des geschätzten Hintergrundbilds 122 bereitzustellen, die wiederum verwendet werden, um andere Pixel des geschätzten Hintergrundbilds 122 zu schätzen. Beispielsweise können solche Pixel für Pixelwerte mit sehr hoher Konfidenz (wie durch die Konfidenzabbildung 120 angegeben ist und auf einer angewandten Schwelle basiert) kopiert und in dem geschätzten Hintergrundbild 122 verwendet werden. Andere Pixel des geschätzten Hintergrundbilds 122 können dann unter Verwendung solcher kopierter Pixel entweder unter Verwendung von Inpainting-Techniken oder durch Einschließen solcher kopierter Pixel in die Merkmalsabbildungen des Eingangsvolumens 132 erzeugt werden. Das heißt, Pixel mit hoher Konfidenz können zuerst in das Eingangsvolumen 132 kopiert werden und dann werden die neuronale Netzwerkschicht oder neuronalen Netzwerkschichten auf das Eingangsvolumen 132 angewendet, um das geschätzte Hintergrundbild 122 und die Konfidenzabbildung 125 zu erzeugen, wie oben besprochen. Bei manchen Ausführungsformen beinhaltet das Anwenden des räumlichen Hintergrundmodellmoduls 103 Bestimmen eines Pixelwerts in dem geschätzten Hintergrundbild 122 unter Verwendung des räumlichen Hintergrundbildmodells in Reaktion darauf, dass ein entsprechender Konfidenzwert der Konfidenzabbildung 121 eine Schwelle nicht überschreitet (z. B. von 0,8 oder 0,9), oder Kopieren eines entsprechenden Pixelwerts des geschätzten Hintergrundbilds 118 in das geschätzte Hintergrundbild 122 in Reaktion darauf, dass der entsprechende Konfidenzwert der Konfidenzabbildung 121 die Schwelle überschreitet.
  • Wie in 1 gezeigt, werden das geschätzte Hintergrundbild 118, die Konfidenzabbildung 120, das geschätzte Hintergrundbild 122 und die Konfidenzabbildung 124 durch das Konfidenz-basierte Schätzungs-Fusionsmodul 104 empfangen, die das geschätzte Hintergrundbild 118 und das geschätzte Hintergrundbild 122 kombiniert oder fusioniert, um ein endgültiges oder resultierendes geschätztes Hintergrundbild 126 mit Pixelwerten 127 zu erzeugen, die ein Hintergrundbild repräsentieren, das keine Vordergrundobjekte aufweist (z. B. ist das geschätzte Hintergrundbild 126 ein RGB-Bild, das keine Vordergrundobjekte aufweist). Das geschätzte Hintergrundbild 118 und das geschätzte Hintergrundbild 122 können unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken zusammengeführt oder fusioniert werden. Zum Beispiel, unter Berücksichtigung des geschätzten Hintergrundbilds 118 und der Konfidenzabbildung 120 (z. B. und des geschätzten Hintergrundbilds 122 und der Konfidenzabbildung 124 (z. B. ( I S ^ ( x , y , t ) ; C S ^ ( x , y , t ) ) ) ,
    Figure DE102021119882A1_0005
    die durch das zeitliche Hintergrundmodellmodul 102 und das räumliche Hintergrundmodellmodul 103 bereitgestellt werden, fusioniert, kombiniert oder vereinigt das Konfidenz-basierte Schätzungs-Fusionsmodul 104 geschätzte Hintergrundbilder 118, 122, um ein kombiniertes geschätztes Hintergrundbild 126 basierend auf Konfidenzabbildungen 120, 124 zu erzeugen. Bei manchen Ausführungsformen wird das kombinierte geschätzte Hintergrundbild 126 erzeugt, wie in Gleichung (1) gezeigt: I F ^ ( x , y , t ) = ƒ ( ( I T ^ ( x , y , t ) ; C T ^ ( x , y , t ) ) , ( I S ^ ( x , y , t ) ; C S ^ ( x , y , t ) ) )
    Figure DE102021119882A1_0006
    wobei I F ^ ( x , y , t )
    Figure DE102021119882A1_0007
    das endgültige, resultierende geschätzte Hintergrundbild 126 ist und f die Fusionsfunktion ist. Wie besprochen, kann die Fusionsfunktion, die durch das Konfidenz-basierte Schätzungs-Fusionsmodul 104 eingesetzt wird, eine beliebige Fusionsfunktion beinhalten, und die Fusionsfunktion kann durch einen Benutzer ausgewählt oder vorkonfiguriert werden oder dergleichen.
  • Bei manchen Ausführungsformen ist die Fusionsfunktion eine Torfunktion, die bei jedem Pixel die Vorhersage mit höherer Konfidenz auswählt. Das Konfidenz-basierte Schätzungs-Fusionsmodul 104 kann zum Beispiel das geschätzte Hintergrundbild 126 erzeugen, indem für jedes Pixel des geschätzten Hintergrundbilds 126 der Pixelwert 127 als der Pixelwert aus dem Pixelwert 119 oder dem Pixelwert 123 ausgewählt wird, je nachdem, welcher der Konfidenzwerte 121, 125 höher ist. In Reaktion darauf, dass der Konfidenzwert 121 die Konfidenzwerte 125 überschreitet, wird zum Beispiel der Pixelwert 119 ausgewählt, und in Reaktion darauf, dass der Konfidenzwert 125 die Konfidenzwerte 121 überschreitet, wird der Pixelwert 123 ausgewählt. Die oben beschriebene Torlogik kann wie folgt in Gleichung (2) dargestellt werden: I F ^ ( x , y , t ) = { I T ^ ( x , y , t ) ; C T ^ ( x , y , t ) > C S ^ ( x , y , t ) I S ^ ( x , y , t ) ; o t h e r w i s e
    Figure DE102021119882A1_0008
    wobei I F ^ ( x , y , t )
    Figure DE102021119882A1_0009
    das endgültige, resultierende geschätzte Hintergrundbild 126 ist und, wie gezeigt, ein Pixelwert aus I T ^ ( x , y , t )
    Figure DE102021119882A1_0010
    ausgewählt wird, wenn C T ^ ( x , y , t ) > C S ^ ( x , y , t ) ,
    Figure DE102021119882A1_0011
    und andernfalls ein Pixelwert aus I S ^ ( x , y , t )
    Figure DE102021119882A1_0012
    ausgewählt wird.
  • Bei manchen Ausführungsformen wendet die Fusionsfunktion eine Linearkombination von Pixelwerten aus geschätzten Hintergrundbildern 118, 122 an, die unter Verwendung der Konfidenzwerte der Konfidenzabbildungen 120, 124 gewichtet werden, um jeden Pixelwert des geschätzten Hintergrundbilds 126 zu bestimmen. Zum Beispiel kann der Pixelwert 127 als ein gewichteter Durchschnitt des Pixelwerts 119 und des Pixelwerts 123 erzeugt werden, die basierend auf dem Konfidenzwert 121 bzw. dem Konfidenzwert 125 gewichtet werden. Bei manchen Ausführungsformen ist der Pixelwert 127 eine Summe aus (a) einem Produkt des Pixelwerts 119 und einem Verhältnis des Konfidenzwerts 121 zu einer Summe der Konfidenzwerte 121, 125 und (b) einem Produkt des Pixelwerts 125 und eines Verhältnisses des Konfidenzwerts 125 zu einer Summe der Konfidenzwerte 121, 125. Zum Beispiel können Pixelwerte des geschätzten Hintergrundbilds 126 wie folgt in Gleichung (3) bestimmt werden: I F ^ ( x , y , t ) = C T ^ ( x , y , t ) C T ^ ( x , y , t ) + C S ^ ( x , y , t ) I T ^ ( x , y , t ) + C S ^ ( x , y , t ) C T ^ ( x , y , t ) + C S ^ ( x , y , t ) I S ^ ( x , y , t )
    Figure DE102021119882A1_0013
    wobei I F ^ ( x , y , t )
    Figure DE102021119882A1_0014
    das geschätzte Hintergrundbild 126 ist und, wie gezeigt, jeder Pixelwert des geschätzten Hintergrundbilds 126 eine gewichtete Summe von Pixelwerten von I T ^ ( x , y , t )
    Figure DE102021119882A1_0015
    und I S ^ ( x , y , t )
    Figure DE102021119882A1_0016
    ist, gewichtet basierend auf Konfidenzwerten von C T ^ ( x , y , t )
    Figure DE102021119882A1_0017
    und C S ^ ( x , y , t ) .
    Figure DE102021119882A1_0018
  • Bei manchen Ausführungsformen wendet die Fusionsfunktion eine vortrainierte neuronale Netzwerkschicht oder -schichten (z. B. eine Schicht oder Schichten eines vortrainierten faltenden neuronalen Netzwerks, CNN) an, um ein geschätztes Hintergrundbild 126 zu erzeugen. Zum Beispiel können eine oder mehrere vortrainierte neuronale Netzwerkschichten erzeugt und auf ein Eingangsvolumen oder Eingangsbild 135, umfassend geschätzte Hintergrundbilder 118, 122 und Konfidenzabbildungen 120, 124 (z. B. acht Merkmalsabbildungen: eine für jeden Farbkanal der geschätzten Hintergrundbilder 118, 122 und eine für jede der Konfidenzabbildungen 120, 124), angewendet werden, um ein Ausgangsvolumen eines geschätzten Hintergrundbilds 126 zu erzeugen (z. B. drei Merkmalsabbildungen: eine für jeden Farbkanal des geschätzten Hintergrundbilds 126). Bei manchen Ausführungsformen werden die Schicht bzw. die Schichten des vortrainierten neuronalen Netzwerks eines Konfidenz-basierten Schätzungs-Fusionsmoduls 104 und die Schicht bzw. die Schichten des vortrainierten neuronalen Netzwerks eines räumlichen Hintergrundmodellmoduls 103 gleichzeitig unter Verwendung desselben Trainingssatzes trainiert.
  • Wie unten besprochen, können solche Fusionsfunktionen bei manchen Ausführungsformen basierend auf Konfidenzabbildungen 120, 124 oder anderen Faktoren adaptiv ausgewählt werden. Das geschätzte Hintergrundbild wird in dem Speicher des Systems 100 gespeichert, einer anderen Vorrichtung oder dergleichen zur Verwendung in einer beliebigen geeigneten Anwendung bereitgestellt. Bei manchen Ausführungsformen wird das geschätzte Hintergrundbild 126 durch eine Computervisionsanwendung und/oder eine Anwendung zur Detektion von Vordergrundobjekten und/oder eine Bildsegmentierungsanwendung und/oder eine Anwendung zur Analyse auffälliger Bewegungen und/oder eine Videoüberwachungsanwendung und/oder eine Mensch-Maschine-Schnittstellenanwendung und/oder eine objektbasierte Videocodierungsanwendung und/oder eine optische Bewegungserfassungsanwendung verwendet. Solche Anwendungen können durch das System 100 oder eine andere Vorrichtung oder ein anderes System durchgeführt werden.
  • 3 veranschaulicht einen beispielhaften Prozess 300 zum Erzeugen eines geschätzten Hintergrundbilds basierend auf einem oder mehreren Eingangsbildern, der in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Der Prozess 300 kann eine oder mehrere Operationen 301-308 beinhalten, wie in 3 veranschaulicht ist. Die Operationen 301 - 308 können zum Beispiel durch das System 100 durchgeführt werden. Obwohl mit Bezug auf das empfangene Eingangsvideo besprochen, kann der Prozess 300 ein resultierendes Hintergrundbild nach dem Verarbeiten eines einzigen Eingangsbilds ausgeben. Insbesondere muss der Prozess 300 nicht bis zu einem „letzten Bild“ warten, um ein resultierendes Hintergrundbild auszugeben. Das resultierende Bild kann durch Abtasten aus dem gelernten Hintergrundmodell erzeugt werden.
  • Die Verarbeitung beginnt bei Operation 301, bei der Eingangsvideo empfangen wird. Das Eingangsvideo kann eine beliebige Anzahl von Videobildern beinhalten und kann in einem beliebigen geeigneten Format vorliegen. Die Verarbeitung fährt bei Operation 302 fort, bei der ein Videobild des Eingangsvideos ausgewählt wird. Zum Beispiel kann ein aktuelles Videobild ausgewählt werden und die Auswahl von Videobildern kann in einer zeitlichen Reihenfolge erfolgen.
  • Die Verarbeitung fährt bei Operation 303 fort, wo eine zeitliche Hintergrundmodellierung teilweise basierend auf dem bei Operation 302 ausgewählten Videobild durchgeführt wird, um ein geschätztes Hintergrundbild, das kein Vordergrundobjekt aufweist, und eine entsprechende Konfidenzabbildung zu erzeugen. Zum Beispiel versucht das geschätzte Hintergrundbild, den Hintergrund zu rekonstruieren und einen beliebigen Vordergrund durch Hintergrundtextur und - inhalt zu ersetzen. Bei manchen Ausführungsformen geht der Operation 303 eine Objektdetektions- und Maskierungsoperation voraus, so dass die zeitliche Hintergrundmodellierung basierend auf einem maskierten Bild einschließlich Hintergrundbereich und maskierten Vordergrundbereichen durchgeführt wird. Zum Beispiel können die maskierten Bereiche einen Indikatorwert, wie etwa 0 oder 255, oder einen anderen Wert beinhalten. Die maskierten Bereiche können unter Verwendung einer solchen Maskierung, einer separaten Maskenschicht oder von Begrenzungsboxinformationen angegeben werden. Bei manchen Ausführungsformen beinhaltet die zeitliche Hintergrundmodellierung eine Codebuch-basierte Modellierung und die Konfidenzabbildung wird durch Faktorisieren des stückweisen Abstands zwischen visuellen Eingangsbildern und den zeitlichen Statistiken der Hintergrundwerte, die über die Modellierung erreicht werden, bestimmt.
  • Die Verarbeitung geht auch von Operation 302 bei Operation 304 über, wo eine räumliche Hintergrundmodellierung teilweise basierend auf dem bei Operation 302 ausgewählten Videobild durchgeführt wird, um ein anderes geschätztes Hintergrundbild ohne jegliches Vordergrundobjekt und eine andere entsprechende Konfidenzabbildung zu erzeugen. Insbesondere können die Operationen 303, 304 in beliebiger Reihenfolge oder wenigstens teilweise parallel durchgeführt werden. Bei manchen Ausführungsformen werden die Operationen 303, 304 unabhängig voneinander durchgeführt. Wie bei Operation 303 geht der Operation 304 bei manchen Ausführungsformen eine Objektdetektions- und Maskierungsoperation voraus, so dass die räumliche Hintergrundmodellierung basierend auf einem maskierten Bild einschließlich Hintergrundbereich und maskierten Vordergrundbereichen durchgeführt wird. Bei manchen Ausführungsformen beinhaltet die räumliche Hintergrundmodellierung Anwenden eines neuronalen Inpainting-Netzwerks einschließlich einer oder mehrerer vortrainierter neuronaler Netzwerkschichten auf ein Eingangsvolumen einschließlich des Videobilds oder des maskierten Bildes, um ein Ausgangsvolumen einschließlich des geschätzten Hintergrundbilds und der Konfidenzabbildung zu erzeugen.
  • Die Verarbeitung fährt bei Operation 305 fort, wo eine Fusionstechnik zum Fusionieren oder Kombinieren der geschätzten Hintergrundbilder, die bei Operationen 303, 304 erzeugt werden, ausgewählt wird. Die Fusionstechnik kann unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken ausgewählt werden. Bei manchen Ausführungsformen wird die Fusionstechnik vom Benutzer ausgewählt. Bei manchen Ausführungsformen wird die Fusionstechnik basierend auf den Konfidenzabbildungen ausgewählt, die bei Operationen 303, 304 erzeugt werden. Wenn es zum Beispiel eine große Lücke zwischen den Konfidenzwerten gibt, kann es wünschenswert sein, eine Torfunktion anzuwenden, wie mit Bezug auf Gleichung (2) besprochen. Im Gegensatz dazu kann es, wenn eine kleinere Lücke vorliegt, wünschenswert sein, eine lineare Gewichtung anzuwenden, wie mit Bezug auf Gleichung (2) besprochen. Eine solche Fusionstechnikauswahl kann auf einer beliebigen Ebene bereitgestellt werden: sie kann auf der Pixelebene, der Bildebene oder für Bereiche der Bilder entschieden werden.
  • Bei manchen Ausführungsformen beinhaltet das Kombinieren der geschätzten Hintergrundbilder basierend auf den Konfidenzabbildungen Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, einer Größendifferenz zwischen Konfidenzwerten der Konfidenzabbildungen (z. B. als eine Absolutwertdifferenz). In Reaktion darauf, dass die Größendifferenz eine Schwelle (z. B. von 0,6 oder mehr) überschreitet, wird der Pixelwert, der dem höheren Konfidenzwert entspricht, ausgewählt. In Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet, wird der Pixelwert unter Verwendung eines gewichteten Mittelwerts der Pixelwerte erzeugt.
  • Bei manchen Ausführungsformen beinhaltet das Kombinieren der geschätzten Hintergrundbilder basierend auf den Konfidenzabbildungen Bestimmen eines zeitlichen Gesamtkonfidenzwerts basierend auf der zeitbasierten Konfidenzabbildung (wie bei Operation 303 erzeugt) und eines räumlichen Gesamtkonfidenzwerts basierend auf der räumlichen Konfidenzabbildung (wie bei Operation 304 erzeugt), Bestimmen einer Größendifferenz zwischen dem zeitlichen Gesamtkonfidenzwert und dem räumlichen Gesamtkonfidenzwert (z. B. eine Absolutwertdifferenz), und Auswählen einer torbasierten Fusion (wie mit Bezug auf Gleichung (2) erörtert) in Reaktion darauf, dass die Größendifferenz eine Schwelle (z. B. von 0,6 oder mehr) überschreitet, oder einer Linearkombinationsfusion (wie mit Bezug auf Gleichung (3) erörtert) oder einer auf einem vortrainierten neuronalen Netzwerk basierenden Fusion in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet.
  • Die Verarbeitung fährt bei Operation 306 fort, bei der die ausgewählte Fusionstechnik angewendet wird, um ein kombiniertes geschätztes Hintergrundbild zu erzeugen. Bei Fusionsanwendungen mit Torfunktion wird der Pixelwert, der dem höheren Konfidenzwert entspricht, für jedes Pixel ausgewählt. Bei Fusionsanwendungen mit linearer Gewichtung wird jedes Pixel als gewichteter Mittelwert der unter Verwendung der Konfidenzwerte gewichteten Pixelwerte bestimmt. Bei lernbasierten Techniken werden eine oder mehrere vortrainierte neuronale Netzwerkschichten auf ein Eingangsvolumen angewendet, das die geschätzten Hintergrundbilder und die Konfidenzabbildungen beinhaltet, um das resultierende geschätzte Hintergrundbild zu erzeugen.
  • Die Verarbeitung fährt bei Entscheidungsoperation 307 fort, wo eine Bestimmung vorgenommen wird, ob das bei Operation 302 ausgewählte Eingangsbild das letzte zu verarbeitende Bild ist. Falls nein, fährt die Verarbeitung bei Operation 302 fort, wie besprochen, bis ein finales Bild verarbeitet ist. Falls ja, fährt die Verarbeitung bei Operation 308 fort, bei der das/die resultierende(n) geschätzte(n) Hintergrundbild(er) zur Verwendung in einer beliebigen hier besprochenen Anwendung, wie etwa volumetrischen Videoerzeugungsanwendungen, ausgegeben wird/werden. Insbesondere kann für jedes Eingangsbild oder Einzelbild ein resultierendes Hintergrundbild erzeugt werden.
  • Die hier erörterten Techniken stellen resultierende geschätzte Hintergrundbilder mit hoher subjektiver und objektiver Qualität bereit, die robust gegenüber zeitlicher Änderung und einer Vielfalt von Bildgebungskontexten sind.
  • 4 veranschaulicht ein beispielhaftes Eingangsvideobild 412, das in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Wie gezeigt, beinhaltet das beispielhafte Eingangsvideobild 412 (analog zu dem Eingangsvideobild 112) eine Anzahl an Vordergrundobjekten 416 (analog zu den Vordergrundobjekten 116) und es ist wünschenswert, ein geschätztes Hintergrundbild zu erzeugen, so dass die Vordergrundobjekte 416 entfernt werden. Das Eingangsvideobild 412 veranschaulicht ein Sportereignis mit Vordergrundobjekten 416 einschließlich Spielern und Schiedsrichtern. Zum Beispiel kann das Eingangsvideobild 412 aus einem Video von einer Kamera des Kamera-Arrays 201 erhalten werden, und andere Videoströme können erhalten und verarbeitet werden. Solche Kontexte können für die hier besprochene Verarbeitung geeignet sein, da Sportereignisse Hochprofilereignisse sind, für die volumetrische Videoerzeugung und virtuelle Ansichten in der 3D-Szene wünschenswert sein können. Wie jedoch besprochen, können die hier besprochenen Techniken in einem beliebigen Kontext angewendet werden.
  • 5 veranschaulicht ein beispielhaftes resultierendes geschätztes Hintergrundbild 526, das in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Wie gezeigt, beinhaltet das beispielhafte resultierende geschätzte Hintergrundbild 526 (analog zu dem resultierenden geschätzten Hintergrundbild 126) Pixelwerte 527 (analog zu den Pixelwerten 127), die eine Repräsentation oder Rekonstruktion des beispielhaften Eingangsvideobilds 412 bereitstellen, wobei Vordergrundobjekte 416 fehlen. Insbesondere stellt das resultierende geschätzte Hintergrundbild 526 eine saubere Rekonstruktion bereit, die eine hohe objektive und subjektive Bildqualität aufweist, so dass das resultierende geschätzte Hintergrundbild 526 eine sehr plausible Ansicht des beispielhaften Eingangsvideobilds 412 mit entfernten Vordergrundobjekten 416 ist. Wie besprochen, ist das resultierende geschätzte Hintergrundbild 526 in einer Vielzahl von Anwendungen nützlich, wie etwa bei Computervisionsanwendungen, einschließlich volumetrischer Videoerzeugung.
  • 6 ist ein Flussdiagramm, das einen beispielhaften Prozess 600 zum Durchführen einer Videohintergrundschätzung veranschaulicht, der in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Der Prozess 600 kann eine oder mehrere Operationen 601-604 beinhalten, wie in 6 veranschaulicht ist. Der Prozess 600 kann zum Beispiel wenigstens einen Teil eines Videohintergrundschätzungsprozesses bilden. Als ein nicht-einschränkendes Beispiel kann der Prozess 600 wenigstens einen Teil eines Prozesses bilden, wie er durch das System 100 durchgeführt wird, wie hier besprochen. Darüber hinaus wird der Prozess 600 hier unter Bezugnahme auf das System 700 aus 7 beschrieben.
  • 7 ist ein veranschaulichendes Diagramm eines beispielhaften Systems 700 zum Durchführen einer Videohintergrundschätzung, das in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Wie in 7 gezeigt, weist das System 700 einen Zentralprozessor 701, einen Bildprozessor 702, einen Speicher 703 und ein Kamera-Array 201 auf. Wie auch gezeigt, kann der Bildprozessor 702 den Objektdetektor 101, das zeitliche Hintergrundmodellmodul 102, das räumliche Hintergrundmodellmodul 103 und das Konfidenz-basierte Schätzungs-Fusionsmodul 104 beinhalten oder implementieren. Bei dem Beispiel des Systems 700 kann der Speicher 703 Eingangsvideobilder, Begrenzungsboxdaten, Objektmaskendaten, geschätzte Hintergrundbilddaten, Konfidenzabbildungsdaten, neuronale Netzwerkschichtdaten oder beliebige andere hier besprochene Daten speichern.
  • Wie gezeigt, werden in manchen Beispielen ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 über den Bildprozessor 702 implementiert. Bei anderen Beispielen werden ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 über den Zentralprozessor 701, eine Bildverarbeitungseinheit, eine Bildverarbeitungs-Pipeline, einen Bildsignalprozessor oder dergleichen implementiert. Bei einigen Beispielen werden ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 in Hardware als ein System-on-a-Chip (SoC) implementiert. Bei einigen Beispielen werden ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 über ein FPGA in Hardware implementiert.
  • Der Bildprozessor 702 kann eine beliebige Anzahl und Art von Bild- oder Grafikprozessoren oder Verarbeitungseinheiten beinhalten, die die hier besprochenen Operationen bereitstellen können. Solche Operationen können über Software oder Hardware oder eine Kombination davon implementiert werden. Zum Beispiel kann der Bildprozessor 702 eine Schaltungsanordnung beinhalten, die zum Manipulieren und/oder Analysieren von Frames oder Frame-Daten, die aus dem Speicher 703 erhalten werden, bestimmt ist. Der Zentralprozessor 701 kann eine beliebige Anzahl und Art von Prozessoren, Verarbeitungseinheiten oder Modulen beinhalten, die Steuerungs- und andere Funktionen auf hoher Ebene für das System 700 bereitstellen können und/oder beliebige Operationen, wie hier besprochen, bereitstellen können. Der Speicher 703 kann eine beliebige Art von Speicher sein, wie etwa ein flüchtiger Speicher (z. B. statischer Direktzugriffspeicher (SRAM), dynamischer Direktzugriffsspeicher (DRAM) usw.) oder ein nichtflüchtiger Speicher (z. B. Flash-Speicher usw.) und so weiter. In einem nichteinschränkenden Beispiel kann der Speicher 703 durch einen Cache-Speicher implementiert sein. Bei einer Ausführungsform werden ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 über eine Ausführungseinheit (EU) des Bildprozessors 702 implementiert. Die EU kann zum Beispiel eine programmierbare Logik oder Schaltungsanordnung beinhalten, wie etwa einen Logikkern oder Logikkerne, der/die ein weites Feld an programmierbaren Logikfunktionen bereitstellen kann/können. Bei einer Ausführungsform werden ein oder mehrere Teile des Objektdetektors 101, des zeitlichen Hintergrundmodellmoduls 102, des räumlichen Hintergrundmodellmoduls 103 und des Konfidenz-basierten Schätzungs-Fusionsmoduls 104 über dedizierte Hardware, wie etwa eine Festfunktionsschaltungsanordnung oder dergleichen, implementiert. Eine Festfunktionsschaltungsanordnung kann eine dedizierte Logik oder Schaltungsanordnung beinhalten und kann einen Satz von Festfunktionszugangspunkten bereitstellen, die für einen festen Zweck oder eine feste Funktion der dedizierte Logik zugeordnet sein können.
  • Zurückkehrend zur Erörterung von 6 beginnt der Prozess 600 bei Operation 601, bei der ein zeitliches Hintergrundbildmodell basierend auf einem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern angewendet wird, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen. Das zeitliche Hintergrundbildmodell kann unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken angewendet werden. Bei manchen Ausführungsformen ist das zeitliche Hintergrundbildmodell ein Codebuch-basiertes Modell. Die erste Konfidenzabbildung kann beliebige geeignete Werte beinhalten. Bei manchen Ausführungsformen beinhaltet die erste Konfidenzabbildung eines von einem Abstand zwischen entsprechenden Pixelwerten des ersten geschätzten Hintergrundbilds und dem Eingangsvideobild oder einer Varianz eines statistischen Modells, das zum Erzeugen des ersten geschätzten Hintergrundbilds verwendet wird.
  • Die Verarbeitung fährt bei Operation 602 fort, bei der ein räumliches Hintergrundbildmodell basierend auf dem Eingangsvideobild angewendet wird, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen. Das räumliche Hintergrundbildmodell kann unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken angewendet werden. Bei manchen Ausführungsformen beinhaltet das Erzeugen des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen basierend auf dem Eingangsvideobild, um ein Ausgangsvolumen zu erzeugen, das das zweite geschätzte Hintergrundbild und die zweite Konfidenzabbildung beinhaltet.
  • Die besprochene Anwendung des zeitlichen Hintergrundbildmodells und des räumlichen Hintergrundbildmodells kann auf direkter Anwendung auf das Eingangsvideobild bzw. das eine oder die mehreren zeitlich vorherigen Eingangsvideobilder bzw. nur das Eingangsvideobild basieren. Alternativ dazu können das zeitliche Hintergrundbildmodell und das räumliche Hintergrundbildmodell auf maskierte Bilder einschließlich Hintergrundinhalt aus den Eingangsvideobildern und maskierten Bereichen basierend auf Objektdetektion angewendet werden. Bei manchen Ausführungsformen beinhaltet der Prozess 600 ferner Anwenden einer Detektion von Vordergrundobjekten auf das Eingangsvideobild, um eine Vordergrundobjektmaske zu erzeugen, so dass das Erzeugen des ersten geschätzten Hintergrundbilds und/oder der ersten Konfidenzabbildung und/oder das Erzeugen des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung ferner auf der Vordergrundobjektmaske basiert.
  • Des Weiteren können die zeitliche Hintergrundbildmodell- und/oder die räumliche Hintergrundbildmodellanwendung ferner auf einem Ausgang von dem anderen Modell basieren. Bei manchen Ausführungsformen basiert das Anwenden des zeitlichen Hintergrundbildmodells ferner auf dem zweiten geschätzten Hintergrundbild oder basiert das Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild. Bei manchen Ausführungsformen basiert das Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild und der ersten Konfidenzabbildung und umfasst Bestimmen eines Pixelwerts des zweiten geschätzten Hintergrundbilds unter Verwendung des räumlichen Hintergrundbildmodells in Reaktion darauf, dass ein entsprechender Konfidenzwert der ersten Konfidenzabbildung eine Schwelle nicht überschreitet, oder Kopieren eines entsprechenden Pixelwerts des ersten geschätzten Hintergrundbilds in das zweite geschätzte Hintergrundbild in Reaktion darauf, dass der entsprechende Konfidenzwert der ersten Konfidenzabbildung die Schwelle überschreitet.
  • Die Verarbeitung fährt bei Operation 603 fort, bei der das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombiniert werden, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen. Das erste und das zweite geschätzte Hintergrundbild können unter Verwendung einer beliebigen geeigneten Technik oder beliebiger geeigneter Techniken kombiniert werden. Bei manchen Ausführungsformen beinhaltet das Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Auswählen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines entsprechenden Pixelwerts aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder eines entsprechenden Pixelwerts aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet. Bei manchen Ausführungsformen beinhaltet das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines gewichteten Mittelwerts entsprechender Pixelwerte aus den ersten und zweiten geschätzten Hintergrundbildern, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und der zweiten Konfidenzabbildung. Bei manchen Ausführungsformen beinhaltet das Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen, umfassend das erste und zweite geschätzte Hintergrundbild und die erste und zweite Konfidenzabbildung, um ein Ausgangsvolumen zu erzeugen, das das resultierende geschätzte Hintergrundbild beinhaltet.
  • Des Weiteren können solche Fusions- oder Kombinationstechniken basierend auf den Konfidenzwerten der Konfidenzabbildungen ausgewählt werden. Bei manchen Ausführungsformen beinhaltet das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, einer Größendifferenz zwischen Konfidenzwerten der ersten und zweiten Konfidenzabbildung und Auswählen von einem aus einem Pixelwert des ersten oder zweiten geschätzten Hintergrundbilds für einen Pixelwert des resultierenden geschätzten Hintergrundbilds in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder Erzeugen eines Pixelwerts des resultierenden geschätzten Hintergrundbilds als gewichteten Mittelwert der Pixelwerte des ersten und des zweiten geschätzten Hintergrundbilds in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet. Bei manchen Ausführungsformen beinhaltet das Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Bestimmen eines zeitlichen Gesamtkonfidenzwerts basierend auf der ersten Konfidenzabbildung und eines räumlichen Gesamtkonfidenzwerts basierend auf der zweiten Konfidenzabbildung, Bestimmen einer Größendifferenz zwischen dem zeitlichen Gesamtkonfidenzwert und dem räumlichen Gesamtkonfidenzwert, und Auswählen einer auf einer Torfunktion basierenden Fusion in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder einer Linearkombinationsfusion in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet, so dass das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds die ausgewählte aus der auf einer Torfunktion basierenden Fusion oder der Linearkombinationsfusion anwendet.
  • Die Verarbeitung fährt bei Operation 604 fort, wo das resultierende geschätzte Hintergrundbild zur Verwendung in einer Computervisionsanwendung oder einer anderen Anwendung ausgegeben wird. Das resultierende geschätzte Hintergrundbild kann zum Beispiel zukünftig in einem Speicher gespeichert, zu einer anderen Vorrichtung übertragen, an einer lokalen Vorrichtung eingesetzt oder dergleichen werden. Bei manchen Ausführungsformen wird das resultierende geschätzte Hintergrundbild in einer Computervisionsanwendung und/oder einer Anwendung zur Detektion von Vordergrundobjekten und/oder einer Bildsegmentierungsanwendung und/oder einer Anwendung zur Analyse auffälliger Bewegungen und/oder einer Videoüberwachungsanwendung und/oder einer Mensch-Maschine-Schnittstellenanwendung und/oder einer objektbasierten Videocodierungsanwendung und/oder einer optischen Bewegungserfassungsanwendung eingesetzt.
  • Verschiedene Komponenten der hier beschriebenen Systeme können in Software, Firmware und/oder Hardware und/oder einer beliebigen Kombination davon implementiert werden. Zum Beispiel können verschiedene Komponente der Einrichtungen oder Systeme, die hier erörtert werden, mindestens zum Teil durch Hardware eines Systems-on-Chip (SoC) zur Datenverarbeitung bereitgestellt werden, wie es in einem Datenverarbeitungssystem, wie zum Beispiel einem Smartphone, zu finden ist. Fachleute können erkennen, dass hier beschriebene Systeme zusätzliche Komponenten beinhalten können, die in den entsprechenden Figuren nicht dargestellt wurden. Zum Beispiel können die hier erörterten Systeme zusätzliche Komponenten enthalten, die der Klarheit halber nicht abgebildet sind. Bei manchen Ausführungsformen werden die hier besprochenen Operationen durch ein System durchgeführt, das einen Speicher zum Speichern beliebiger hier besprochener Daten und einen oder mehrere Prozessoren zum Durchführen der Operationen beinhaltet.
  • Obwohl eine Implementierung der hier besprochenen beispielhaften Prozesse das Durchführen aller in der veranschaulichten Reihenfolge gezeigten Operationen beinhalten kann, ist die vorliegende Offenbarung in dieser Hinsicht nicht beschränkt und, bei diversen Beispielen kann die Implementierung der beispielhaften Prozesse hierin nur eine Teilmenge der gezeigten Operationen, der Operationen, die in einer anderen als der dargestellten Reihenfolge durchgeführt werden, oder zusätzliche Operationen beinhalten.
  • Außerdem können eine oder mehrere der hier besprochenen Operationen in Reaktion auf Anweisungen vorgenommen werden, die durch ein oder mehrere Computerprogrammprodukte bereitgestellt werden. Solche Programmprodukte können signaltragende Medien beinhalten, die Anweisungen bereitstellen, die, wenn sie zum Beispiel durch einen Prozessor ausgeführt werden, die hier beschriebene Funktionalität bereitstellen können. Die Computerprogrammprodukte können in einer beliebigen Form eines oder mehrerer maschinenlesbarer Medien bereitgestellt werden. Somit kann zum Beispiel ein Prozessor, der eine(n) oder mehrere Grafikverarbeitungseinheit(en) oder Prozessorkern(e) beinhaltet, einen oder mehrere der Blöcke der beispielhaften Prozesse hierin in Reaktion auf Programmcode und/oder Anweisungen oder Anweisungssätze, die dem Prozessor durch ein oder mehrere maschinenlesbare Medien übermittelt werden, vornehmen. Im Allgemeinen kann ein maschinenlesbares Medium Software in der Form von Programmcode und/oder Befehlen oder Befehlssätzen zutragen, die bewirken können, dass beliebige der hier beschriebenen Einrichtungen und/oder Systeme mindestens Teile der Einrichtungen oder Systeme oder eines beliebigen anderen Moduls oder einer beliebigen anderen Komponente implementieren, wie hier erörtert wird. Bei manchen Ausführungsformen werden die hier besprochenen Operationen durch ein nicht-flüchtiges maschinenlesbares Medium durchgeführt, das mehrere Anweisungen umfasst, die in Reaktion auf ihre Ausführung auf einer Rechenvorrichtung die Rechenvorrichtung veranlassen, die Operationen durchzuführen.
  • Wie in einer beliebigen hierin beschriebenen Implementierung verwendet, bezieht sich der Begriff „Modul“ auf eine beliebige Kombination von Software-Logik, Firmware-Logik, Hardware-Logik und/oder von Schaltungsanordnungen, die dazu ausgelegt sind, die hierin beschriebene Funktionalität bereitzustellen. Die Software kann als ein Softwarepaket, Code und/oder Anweisungssatz oder Anweisungen ausgeführt werden, und wie in einer beliebigen hierin beschriebenen Implementierung verwendet, kann „Hardware“ zum Beispiel einzeln oder in beliebiger Kombination hartverdrahtete Schaltungen, programmierbare Schaltungen, Zustandsmaschinenschaltungen, Festfunktionsschaltungen, Ausführungseinheitsschaltungen und/oder Firmware, die Anweisungen speichert, die durch programmierbare Schaltungen ausgeführt werden, umfassen. Die Module können, zusammen oder einzeln, als Schaltungen ausgeführt werden, die einen Teil eines größeren Systems, zum Beispiel einer integrierten Schaltung (IC), eines System-on-Chip (SoC) und dergleichen, bilden.
  • 8 ist ein veranschaulichendes Diagramm eines beispielhaften Systems 800, das in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. In verschiedenen Implementierungen kann das System 800 ein Mobileinrichtungssystem sein, obgleich das System 800 nicht auf diesen Kontext beschränkt ist. Zum Beispiel kann das System 800 in einen Personal Computer (PC), einen Laptop-Computer, einen Ultra-Laptop-Computer, ein Tablet, ein Touchpad, einen portablen Computer, einen Handheld-Computer, einen Palmtop-Computer, einen persönlichen digitalen Assistenten (PDA), ein Mobiltelefon, ein kombiniertes Mobiltelefon/PDA, einen Fernseher, eine Smart-Einrichtung (z. B. ein Smartphone, ein Smart-Tablet oder ein Smart-Fernseher), eine mobile Interneteinrichtung (MID), eine Messaging-Einrichtung, eine Datenkommunikationseinrichtung, Kameras (z. B. Kompaktkameras, Super-Zoom-Kameras, digitale Spiegelreflex- (DSLR) Kameras), eine Überwachungskamera, ein Überwachungssystem, das eine Kamera enthält, und so weiter eingebunden sein.
  • Bei verschiedenen Implementierungen beinhaltet das System 800 eine Plattform 802, die mit einer Anzeige 820 gekoppelt ist. Die Plattform 802 kann Inhalte aus einer Inhaltseinrichtung empfangen, wie zum Beispiel aus einer oder mehreren Inhaltsdienstevorrichtungen 830 oder einer oder mehreren Inhaltsbereitstellungsvorrichtungen 840 oder anderen Inhaltsquellen, wie zum Beispiel Bildsensoren 819. Zum Beispiel kann die Plattform 802 Bilddaten, wie hier erörtert wird, von Bildsensoren 819 oder einer beliebigen anderen Inhaltsquelle empfangen. Eine Navigationssteuerung 850 einschließlich eines oder mehrerer Navigationsmerkmale kann verwendet werden, um zum Beispiel mit der Plattform 802 und/oder der Anzeige 820 zu interagieren. Jede dieser Komponenten wird unten ausführlicher besprochen.
  • Bei verschiedenen Implementierungen kann die Plattform 802 eine beliebige Kombination aus einem Chipsatz 805, einem Prozessor 810, einem Speicher 812, einer Antenne 813, einer Speichervorrichtung 814, einem Grafikuntersystem 815, Anwendungen 816, einem Bildsignalprozessor 817 und/oder einem Funkelement 818 beinhalten. Der Chipsatz 805 kann eine gegenseitige Kommunikation zwischen dem Prozessor 810, dem Speicher 812, der Speichervorrichtung 814, dem Grafikuntersystem 815, den Anwendungen 816, dem Bildsignalprozessor 817 und/oder dem Funkelement 818 bereitstellen. Zum Beispiel kann der Chipsatz 805 einen Speicherungsadapter (nicht dargestellt) beinhalten, der in der Lage ist, eine gegenseitige Kommunikation mit der Speichervorrichtung 814 bereitzustellen.
  • Der Prozessor 810 kann als Prozessoren mit komplexem Anweisungssatz (CISC: Complex Instruction Set Computer) oder mit reduziertem Anweisungssatz (RISC: Reduced Instruction Set Computer), mit einem x86-Anweisungssatz kompatible Prozessoren, Mehrkern- oder beliebiger anderer Mikroprozessor oder zentrale Verarbeitungseinheit (CPU: Central Processing Unit) implementiert werden. Bei verschiedenen Implementierungen kann der Prozessor 810 Dual-Kern-Prozessor(en), Dual-Kern-Mobilprozessor(en) und so weiter sein.
  • Der Speicher 812 kann als eine flüchtige Speichervorrichtung implementiert sein, wie etwa unter anderem ein Direktzugriffsspeicher (RAM), ein dynamischer Direktzugriffsspeicher (DRAM) oder ein statischer RAM (SRAM).
  • Die Speichervorrichtung 814 kann als eine nicht-flüchtige Speichervorrichtung implementiert sein, wie etwa unter anderem als ein Magnetplattenlaufwerk, ein optisches Plattenlaufwerk, ein Bandlaufwerk, eine interne Speicherungsvorrichtung, eine angeschlossene Speichervorrichtung, ein Flash-Speicher, ein batteriegestützter SDRAM (synchroner DRAM) und/oder eine netzwerkzugängliche Speichervorrichtung. Bei verschiedenen Implementierungen kann die Speichervorrichtung 814 Technologie beinhalten, um den durch die Speicherleistung verbesserten Schutz für wertvolle digitale Medien zu erhöhen, wenn zum Beispiel mehrere Festplatten enthalten sind.
  • Der Bildsignalprozessor 817 kann als ein spezialisierter Digitalsignalprozessor oder dergleichen implementiert werden, der zur Bildverarbeitung verwendet wird. Bei manchen Beispielen kann der Bildsignalprozessor 817 basierend auf einer Single-Instruction-Multiple-Data- oder einer Multiple-Instruction-Multiple-Data-Architektur oder dergleichen implementiert werden. Bei manchen Beispielen kann der Bildsignalprozessor 817 als ein Medienprozessor charakterisiert sein. Wie hier besprochen, kann der Bildsignalprozessor 817 basierend auf einer System-on-Chip-Architektur und/oder basierend auf einer Mehrkernarchitektur implementiert werden.
  • Das Grafiksubsystem 815 kann ein Verarbeitung von Bildern, wie etwa Stand- oder Videobildern, zur Anzeige durchführen. Das Grafikuntersystem 815 kann zum Beispiel eine Grafikverarbeitungseinheit (GPU) oder eine visuelle Verarbeitungseinheit (VPU) sein. Eine Analog- oder Digitalschnittstelle kann verwendet werden, um das Grafikuntersystem 815 und die Anzeige 820 kommunikativ zu koppeln. Die Schnittstelle kann zum Beispiel eine beliebige von Folgenden sein: eine High-Definition-Multimedia-Interface (HDMI), ein DisplayPort, eine drahtlose HDMI und/oder mit drahtlosem HD konforme Techniken. Das Grafikuntersystem 815 kann in den Prozessor 810 oder den Chipsatz 805 integriert sein. Bei manchen Implementierungen kann das Grafikuntersystem 815 eine eigenständige Vorrichtung sein, die kommunikativ mit dem Chipsatz 805 gekoppelt ist.
  • Die hier beschriebenen Grafik- und/oder Videoverarbeitungstechniken können in verschiedenen Hardware-Architekturen umgesetzt werden. Zum Beispiel kann eine Grafik- und/oder Videofunktionalität in einen Chipsatz integriert sein. Alternativ dazu kann ein diskreter Grafik- und/oder Videoprozessor verwendet werden. Als noch eine andere Implementierung können die Grafik- und/oder Videofunktionen durch einen Mehrzweckprozessor, einschließlich eines Mehrkernprozessors, bereitgestellt werden. Bei weiteren Ausführungsformen können die Funktionen in eine Verbraucherelektronikvorrichtung implementiert werden.
  • Die Funkvorrichtung 818 kann eine oder mehrere Funkvorrichtungen beinhalten, die in der Lage sind, Signale unter Verwendung verschiedener geeigneter drahtloser Kommunikationstechniken zu übertragen und zu empfangen. Solche Techniken können Kommunikationen über ein oder mehrere Drahtlosnetze hinweg einbeziehen. Beispielhafte Drahtlosnetze schließen (ohne darauf beschränkt zu sein) drahtlose lokale Netze (WLANs: Wireless Local Area Networks), drahtlose Netze für den persönlichen Bereich (WPANs: Wireless Personal Area Networks), drahtlose Stadtnetze (WMANs: Wireless Metropolitan Area Networks), zellulare Netze und Satellitennetze ein. Beim Kommunizieren über solche Netzwerke kann die Funkvorrichtung 818 in einer beliebigen Version gemäß einem oder mehreren anwendbaren Standards arbeiten.
  • Bei verschiedenen Implementierungen kann die Anzeige 820 einen beliebigen Fernsehmonitor oder eine beliebige Fernsehanzeige beinhalten. Die Anzeige 820 kann zum Beispiel einen Computeranzeigebildschirm, eine Touchscreen-Anzeige, einen Videomonitor, eine fernsehähnliche Vorrichtung und/oder einen Fernseher beinhalten. Die Anzeige 820 kann digital und/oder analog sein. Bei verschiedenen Implementierungen kann die Anzeige 820 eine holographische Anzeige sein. Außerdem kann die Anzeige 820 eine transparente Oberfläche sein, die eine visuelle Projektion empfangen kann. Solche Projektionen können verschiedene Formen von Informationen, Bildern und/oder Objekten transportieren. Zum Beispiel können solche Projektionen eine visuelle Überlagerung für eine Anwendung für mobile erweiterte Realität (MAR: Mobile Augmented Reality) sein. Unter der Steuerung von einer oder mehreren Softwareanwendungen 816 kann die Plattform 802 eine Benutzeroberfläche 822 auf der Anzeige 820 anzeigen.
  • Bei verschiedenen Implementierungen kann/können die Inhaltsdienstvorrichtung(en) 830 durch einen beliebigen nationalen, internationalen und/oder unabhängigen Dienst gehostet werden und somit für die Plattform 802 zum Beispiel über das Internet zugänglich sein. Die Inhaltsdienstvorrichtung(en) 830 kann/können mit der Plattform 802 und/oder der Anzeige 820 gekoppelt sein. Die Plattform 802 und/oder die Inhaltsdienstvorrichtung(en) 830 können mit einem Netzwerk 860 gekoppelt sein, um Medieninformationen zu und von dem Netzwerk 860 zu kommunizieren (z. B. zu senden und/oder zu empfangen). Die Inhaltsbereitstellungvorrichtung(en) 840 kann/können ebenfalls mit der Plattform 802 und/oder der Anzeige 820 gekoppelt sein.
  • Zu den Bildsensoren 819 können beliebige geeignete Bildsensoren zählen, die Bilddaten bereitstellen können, die auf einer Szene basieren. Zum Beispiel kann zu den Bildsensoren 819 ein Sensor auf Basis eines Semiconductor Charge Coupled Device (CCD), ein Sensor auf Basis eines Complementary Metal-Oxide-Semiconductor (CMOS), ein Sensor auf Basis eines N-Typ-Metal-Oxide Semiconductor (NMOS) oder Ähnliches zählen. Zum Beispiel können zu den Bildsensoren 819 beliebige Einrichtungen zählen, die Informationen einer Szene detektieren können, um Bilddaten zu erzeugen.
  • Bei verschiedenen Implementierungen kann/können die Inhaltsdienstvorrichtung(en) 830 eine Kabelfernsehbox, einen Personal Computer, ein Netzwerk, ein Telefon, internetfähige Vorrichtungen oder ein Gerät beinhalten, die/das in der Lage ist/sind, digitale Informationen und/oder Inhalte bereitzustellen, und eine beliebige andere ähnliche Vorrichtung, die zum unidirektionalen oder bidirektionalen Kommunizieren von Inhalt zwischen Inhaltsanbietern und Plattform 802 und/oder Anzeige 820 über das Netzwerk 860 oder direkt in der Lage ist. Es versteht sich, dass der Inhalt unidirektional und/oder bidirektional an eine und von einer beliebigen der Komponenten in dem System 800 und einem Inhaltanbieter über das Netz 860 kommuniziert werden kann. Beispiele für Inhalt können beliebige Medieninformationen beinhalten, einschließlich zum Beispiel Video, Musik, medizinische und Spielinformationen und so weiter.
  • Die Inhaltsdienstvorrichtung(en) 830 kann/können Inhalt, wie etwa Kabelfernsehprogramme, die Medieninformationen, digitale Informationen und/oder anderen Inhalt beinhalten, empfangen. Beispiele für Inhaltsanbieter können beliebige Anbieter von Fernseh- oder Radio- oder Internetinhalt über Kabel oder Satellit einschließen. Die bereitgestellten Beispiele sollen Implementierungen gemäß der vorliegenden Offenbarung in keinerlei Weise beschränken.
  • Bei verschiedenen Implementierungen kann die Plattform 802 Steuersignale von der Navigationssteuerung 850 mit einem oder mehreren Navigationsmerkmalen empfangen. Die Navigationsmerkmale der Navigationssteuerung 850 können zum Beispiel verwendet werden, um mit der Benutzeroberfläche 822 zu interagieren. Bei verschiedenen Ausführungsformen kann die Navigationssteuerung 850 eine Zeigevorrichtung sein, die eine Computerhardwarekomponente (insbesondere eine Bedienerschnittstellenvorrichtung) sein kann, die es einem Benutzer ermöglicht, räumliche (zum Beispiel kontinuierliche oder multidimensionale) Daten in einen Computer einzugeben. Viele Systeme, wie etwa graphische Benutzeroberflächen (GUI: Graphical User Interface) und Fernseher und Monitore, erlauben es dem Benutzer, unter Verwendung physischer Gesten Daten zu steuern und sie dem Computer oder Fernseher bereitzustellen.
  • Bewegungen der Navigationsmerkmale der Navigationssteuerung 850 können auf einer Anzeige (z. B. Anzeige 820) durch Bewegungen eines Zeigers, Cursors, Fokusrings oder anderer visueller Indikatoren, die auf der Anzeige angezeigt werden, repliziert werden. Zum Beispiel können die auf der Navigationssteuerung 850 befindlichen Navigationsmerkmale unter der Steuerung von Softwareanwendungen 816 auf virtuelle Navigationsmerkmale, die zum Beispiel auf der Benutzeroberfläche 822 angezeigt werden, abgebildet werden. Bei verschiedenen Ausführungsformen ist die Navigationssteuerung 850 möglicherweise keine separate Komponente, sondern kann in die Plattform 802 und/oder die Anzeige 820 integriert sein. Die vorliegende Offenbarung ist jedoch nicht auf die Elemente oder in dem Kontext, die hier dargestellt oder beschrieben sind, beschränkt.
  • Bei verschiedenen Implementierungen können (nicht gezeigte) Treiber Technologie beinhalten, um Benutzern zu ermöglichen, die Plattform 802, wie zum Beispiel ein Fernsehgerät, sofort mit der Berührung einer Schaltfläche nach dem anfänglichen Hochfahren ein- und auszuschalten, wenn sie aktiviert sind. Die Programmlogik kann der Plattform 802 ermöglichen, Inhalt zu Medienadaptern oder anderen Inhaltsdienstvorrichtungen 830 oder Inhaltsbereitstellungsvorrichtung(en) 840 zu streamen, selbst wenn die Plattform „ausgeschaltet“ ist. Außerdem kann der Chipsatz 805 beispielsweise Hardware- und/oder Softwareunterstützung für 5.1-Surround-Sound-Audio und/oder hochauflösendes 7.1-Surround-Sound-Audio umfassen. Treiber können einen Grafiktreiber für integrierte Grafikplattformen einschließen. Bei verschiedenen Ausführungsformen kann der Grafiktreiber eine Peripheral-Component-Interconnect(PCI)-Express-Grafikkarte umfassen.
  • Bei verschiedenen Implementierungen können eine oder mehrere beliebige der in System 800 gezeigten Komponenten integriert sein. Zum Beispiel können die Plattform 802 und die Inhaltsdienstvorrichtung(en) 830 integriert sein oder können die Plattform 802 und die Inhaltsbereitstellungsvorrichtung(en) 840 integriert sein oder können die Plattform 802, die Inhaltsdienstvorrichtung(en) 830 und die Inhaltsbereitstellungsvorrichtung(en) 840 integriert sein. Bei verschiedenen Ausführungsformen können die Plattform 802 und die Anzeige 820 eine integrierte Einheit sein. Zum Beispiel können die Anzeige 820 und die Inhaltsdienstvorrichtung(en) 830 integriert sein oder können die Anzeige 820 und die Inhaltsbereitstellungsvorrichtung(en) 840 integriert sein. Diese Beispiele sollen die vorliegende Offenbarung nicht beschränken.
  • Bei verschiedenen Ausführungsformen kann das System 800 als ein drahtloses System, ein drahtgebundenes System oder eine Kombination von beiden implementiert sein. Wenn es als ein drahtloses System implementiert ist, kann das System 800 Komponenten und Schnittstellen beinhalten, die zum Kommunizieren über ein drahtloses gemeinsam genutztes Medium geeignet sind, wie etwa eine oder mehrere Antennen, Sender, Empfänger, Sendeempfänger, Verstärker, Filter, Steuerlogik und so weiter. Ein Beispiel für gemeinsam genutzte Drahtlosmedien kann Teile eines Drahtlosspektrums enthalten, wie etwa das HF-Spektrum und so weiter. Wenn es als ein drahtgebundenes System implementiert ist, kann das System 800 Komponenten und Schnittstellen beinhalten, die zum Kommunizieren über drahtgebundene Kommunikationsmedien geeignet sind, wie etwa Eingabe/Ausgabe (E/A) -Adapter, physische Verbinder zum Verbinden des E/A-Adapters mit einem entsprechenden drahtgebundenen Kommunikationsmedium, eine Netzwerkschnittstellenkarte (NIC), eine Plattensteuerung, eine Videosteuerung, eine Audiosteuerung und dergleichen. Beispiele für drahtgebundene Kommunikationsmedien können einen Draht, ein Kabel, Metallleitungen, eine Leiterplatte (PCB: Printed Circuit Board), eine Rückwandplatine, ein Schalt-Fabric, ein Halbleitermaterial, einen Twisted-Pair-Draht, ein Koaxialkabel, Glasfasern und so weiter einschließen.
  • Die Plattform 802 kann einen oder mehrere logische oder physische Kanäle zum Kommunizieren von Informationen einrichten. Die Informationen können Medieninformationen und Steuerinformationen einschließen Medieninformationen können auf beliebige Daten verweisen, die einen für einen Benutzer bestimmten Inhalt repräsentieren. Beispiele für Inhalt können zum Beispiel Daten von einer Sprachkonversation, Videokonferenz, Streaming-Video, Electronic Mail („E-Mail“) -Nachricht, Sprachmail-Nachricht, alphanumerische Symbole, Grafiken, Bilder, Video, Text und so weiter beinhalten. Daten von einer Sprachkonversation können zum Beispiel Sprachinformationen, Pausenperioden, Hintergrundgeräusche, Komfortgeräusche, Töne und so weiter sein. Steuerinformationen können auf beliebige Daten verweisen, die Befehle, Anweisungen oder Steuerwörter, die für ein automatisiertes System bestimmt sind, repräsentieren. Zum Beispiel können Steuerinformationen dazu verwendet werden, Medieninformationen durch ein System zu leiten oder einen Knoten dazu anzuweisen, die Medieninformationen auf eine vorbestimmte Weise zu verarbeiten. Die Ausführungsformen sind jedoch nicht auf die Elemente oder in dem in 8 gezeigten oder beschriebenen Kontext beschränkt.
  • Wie oben beschrieben, kann das System 800 in verschiedenen physikalischen Stilen oder Formfaktoren ausgeführt werden. 9 veranschaulicht eine beispielhafte Vorrichtung 900 mit kleinem Formfaktor, die in Übereinstimmung mit mindestens einigen Implementierungen der vorliegenden Offenbarung eingerichtet ist. Bei manchen Beispielen kann das System 800 über die Vorrichtung 900 implementiert sein. Bei anderen Beispielen können andere hier besprochene Systeme, Komponenten oder Module oder Teile davon über die Vorrichtung 900 implementiert werden. Bei verschiedenen Ausführungsformen kann die Vorrichtung 900 zum Beispiel als eine mobile Rechenvorrichtung mit Drahtlosfähigkeiten implementiert sein. Eine mobile Rechenvorrichtung kann auf eine beliebige Vorrichtung mit einem Verarbeitungssystem und einer mobilen Leistungsquelle oder -versorgung, wie etwa einer oder mehreren Batterien, verweisen.
  • Beispiele für eine mobilen Rechenvorrichtung können einen Personal Computer (PC), einen Laptop-Computer, einen Ultra-Laptop-Computer, ein Tablet, ein Touchpad, einen portablen Computer, einen Handheld-Computer, einen Palmtop-Computer, einen persönlichen digitalen Assistenten (PDA), ein Mobiltelefon, eine Mobiltelefon-/PDA-Kombination, eine intelligente Vorrichtung (z. B. ein Smartphone, ein Smart-Tablet oder einen mobilen Smart-Fernseher), eine mobile Internetvorrichtung (MID: Mobile Internet Device), eine Messaging-Vorrichtung, eine Datenkommunikationsvorrichtung, Kameras (z. B. Kompaktkameras, Superzoom-Kameras, digitale Spiegelreflex(DSLR: Digital Single-Lens Reflex)-Kameras) und so weiter beinhalten.
  • Beispiele für eine mobile Rechenvorrichtung können auch Computer beinhalten, die dazu eingerichtet sind, durch ein Kraftfahrzeug oder einen Roboter implementiert zu werden oder von einer Person getragen zu werden, wie etwa Handgelenkcomputer, Fingercomputer, Ringcomputer, Brillencomputer, Gürtelclipcomputer, Armbandcomputer, Schuhcomputer, Kleidungscomputer und andere tragbare Computer. Bei verschiedenen Ausführungsformen kann eine mobile Rechenvorrichtung beispielsweise als ein Smartphone implementiert sein, das dazu in der Lage ist, Computeranwendungen sowie Sprachkommunikationen und/oder Datenkommunikationen auszuführen. Obgleich manche Ausführungsformen beispielhaft mit einer mobilen Rechenvorrichtung, die als ein Smartphone implementiert ist, beschrieben sein können, versteht es sich, dass auch andere Ausführungsformen unter Verwendung anderer drahtloser mobiler Rechenvorrichtungen implementiert werden können. Die Ausführungsformen sind in diesem Kontext nicht beschränkt.
  • Wie in 9 gezeigt, kann die Vorrichtung 900 ein Gehäuse mit einer Vorderseite 901 und einer Rückseite 902 beinhalten. Die Vorrichtung 900 weist eine Anzeige 904, eine Eingabe/Ausgabe- bzw. E/A-Vorrichtung 906, eine Farbkamera 921, eine Farbkamera 922 und eine integrierte Antenne 908 auf. Bei manchen Ausführungsformen erhalten die Farbkamera 921 und die Farbkamera 922 planare Bilder, wie hier besprochen. Bei manchen Ausführungsformen beinhaltet die Vorrichtung 900 keine Farbkamera 921 und 922, und die Vorrichtung 900 erhält Eingangsbilddaten (z. B. beliebige hier besprochene Eingangsbilddaten) von einer anderen Vorrichtung. Die Vorrichtung 900 kann auch Navigationsmerkmale 912 beinhalten. Die E/A-Vorrichtung 906 kann eine beliebige geeignete E/A-Vorrichtung zum Eingeben von Informationen in eine mobile Rechenvorrichtung beinhalten. Beispiele für eine E/A-Vorrichtung 906 können eine alphanumerische Tastatur, ein numerisches Tastenfeld, ein Touchpad, Eingabetasten, Knöpfe, Schalter, Mikrofone, Lautsprecher, eine Spracherkennungsvorrichtung und Software usw. beinhalten. Informationen können auch mittels eines (nicht gezeigten) Mikrofons in die Vorrichtung 900 eingegeben werden oder können durch eine Spracherkennungsvorrichtung digitalisiert werden. Wie gezeigt, kann die Vorrichtung 900 Farbkameras 921, 922 und einen Blitz 910 beinhalten, der in die Rückseite 902 (oder an anderer Stelle) der Vorrichtung 900 integriert ist. Bei anderen Beispielen können die Farbkameras 921, 922 und der Blitz 910 in die Vorderseite 901 der Vorrichtung 900 integriert sein, oder es können sowohl vordere als auch hintere Sätze von Kameras bereitgestellt sein. Die Farbkameras 921, 922 und ein Blitz 910 können Komponenten eines Kameramoduls sein, um Farbbilddaten mit IR-Texturkorrektur zu erzeugen, die zu einem Bild oder Streaming-Video verarbeitet werden können, das zum Beispiel an die Anzeige 904 ausgegeben wird und/oder entfernt von der Vorrichtung 900 über die Antenne 908 kommuniziert wird.
  • Verschiedene Ausführungsformen können unter Verwendung von Hardwareelementen, Softwareelementen oder einer Kombination von beiden implementiert werden. Beispiele für Hardwareelemente können Prozessoren, Mikroprozessoren, Schaltungen, Schaltungselemente (z. B. Transistoren, Widerstände, Kondensatoren, Induktivitäten und so weiter), integrierte Schaltungen, anwendungsspezifische integrierte Schaltungen (ASIC: Application Specific Integrated Circuits), programmierbare Logikvorrichtungen (PLD), Digitalsignalprozessoren (DSP), feldprogrammierbare Gate-Arrays (FPGA), Logikgatter, Register, Halbleitervorrichtungen, Chips, Mikrochips, Chipsätze und so weiter beinhalten. Beispiele von Software können Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Unterroutinen, Funktionen, Methoden, Prozeduren, Softwareschnittstellen, Anwendungsprogrammierschnittstellen (API, Application Program Interfaces), Befehlssätze, Datenverarbeitungscode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine beliebige Kombination daraus umfassen. Bestimmen, ob eine Ausführungsform unter Verwendung von Hardwareelementen und/oder Softwareelementen umgesetzt ist, variiert entsprechend einer beliebigen Anzahl von Faktoren, wie etwa gewünschter Datenverarbeitungsrate, Leistungsniveaus, Wärmetoleranzen, Verarbeitungszyklusbudget, Eingabedatenraten, Ausgabedatenraten, Speicherressourcen, Datenbusgeschwindigkeiten und andere Ausgestaltungs- oder Leistungsbeschränkungen.
  • Ein oder mehrere Aspekte von zumindest einer Ausführungsform können durch repräsentative Befehle, gespeichert auf einem maschinenlesbaren Medium, das unterschiedliche Logik innerhalb des Prozessors repräsentiert, umgesetzt sein, die, wenn von einer Maschine gelesen, die Maschine veranlassen, Logik zu erzeugen, um die hier beschriebenen Techniken durchzuführen. Solche Repräsentationen, auch als „IP-Kerne“ bekannt, können auf einem greifbaren, maschinenlesbaren Medium gespeichert und verschiedenen Kunden oder Fertigungseinrichtungen bereitgestellt werden, um in die Fertigungsmaschinen geladen zu werden, die die Logik oder den Prozessor tatsächlich fertigen.
  • Obwohl bestimmte hier dargelegte Merkmale unter Bezugnahme auf verschiedene Implementierungen beschrieben wurden, soll diese Beschreibung nicht in einem beschränkenden Sinne ausgelegt werden. Daher werden verschiedene Modifikationen der hier beschriebenen Implementierungen sowie andere Implementierungen, die Fachleuten, an die sich die vorliegende Offenbarung richtet, als innerhalb des Wesens und des Schutzumfangs der vorliegenden Offenbarung liegend angesehen.
  • Bei einer oder mehreren ersten Ausführungsformen umfasst ein Verfahren zum Durchführen einer Videohintergrundschätzung Anwenden eines zeitlichen Hintergrundbildmodells basierend auf einem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen, Anwenden eines räumlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen, und Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen.
  • Bei einer oder mehreren zweiten Ausführungsformen umfasst das Verfahren zusätzlich zu der ersten Ausführungsform ferner Anwenden einer Detektion von Vordergrundobjekten auf das Eingangsvideobild, um eine Vordergrundobjektmaske zu erzeugen, wobei das Erzeugen des ersten geschätzten Hintergrundbilds und/oder der ersten Konfidenzabbildung und/oder das Erzeugen des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung ferner auf der Vordergrundobjektmaske basiert.
  • Bei einer oder mehreren dritten Ausführungsformen umfasst die erste Konfidenzabbildung zusätzlich zu der ersten oder zweiten Ausführungsform eines aus einem Abstand zwischen entsprechenden Pixelwerten des ersten geschätzten Hintergrundbilds und dem Eingangsvideobild oder einer Varianz eines statistischen Modells, das zum Erzeugen des ersten geschätzten Hintergrundbilds verwendet wird.
  • Bei einer oder mehreren vierten Ausführungsformen umfasst das Erzeugen des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung zusätzlich zu einer beliebigen der ersten bis dritten Ausführungsformen das Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen basierend auf dem Eingangsvideobild, um ein Ausgangsvolumen zu erzeugen, das das zweite geschätzte Hintergrundbild und die zweite Konfidenzabbildung umfasst.
  • Bei einer oder mehreren fünften Ausführungsformen, zusätzlich zu einer der ersten bis vierten Ausführungsformen, umfasst das Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Auswählen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines entsprechenden Pixelwerts aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder eines entsprechenden Pixelwerts aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet.
  • Bei einer oder mehreren sechsten Ausführungsformen, zusätzlich zu einer beliebigen der ersten bis fünften Ausführungsformen, umfasst das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines gewichteten Mittelwerts entsprechender Pixelwerte aus dem ersten und zweiten geschätzten Hintergrundbild, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und der zweiten Konfidenzabbildung.
  • Bei einer oder mehreren siebten Ausführungsformen, zusätzlich zu einer beliebigen der ersten bis sechsten Ausführungsform, umfasst das Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung das Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen, das das erste und zweite geschätzte Hintergrundbild und die erste und zweite Konfidenzabbildung umfasst, um ein Ausgangsvolumen zu erzeugen, das das resultierende geschätzte Hintergrundbild umfasst.
  • Bei einer oder mehreren achten Ausführungsformen, zusätzlich zu einer der ersten bis siebten Ausführungsformen, umfasst das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, einer Größendifferenz zwischen Konfidenzwerten der ersten und zweiten Konfidenzabbildung und Auswählen von einem aus einem Pixelwert des ersten oder zweiten geschätzten Hintergrundbilds für einen Pixelwert des resultierenden geschätzten Hintergrundbilds in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder Erzeugen eines Pixelwerts des resultierenden geschätzten Hintergrundbilds als gewichteten Mittelwert der Pixelwerte des ersten und des zweiten geschätzten Hintergrundbilds in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet.
  • Bei einer oder mehreren neunten Ausführungsformen, zusätzlich zu einer der ersten bis achten Ausführungsformen, umfasst das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Bestimmen eines zeitlichen Gesamtkonfidenzwerts basierend auf der ersten Konfidenzabbildung und eines räumlichen Gesamtkonfidenzwerts basierend auf der zweiten Konfidenzabbildung, Bestimmen einer Größendifferenz zwischen dem zeitlichen Gesamtkonfidenzwert und dem räumlichen Gesamtkonfidenzwert und Auswählen einer auf einer Torfunktion basierenden Fusion in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder einer Linearkombinationsfusion in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet, wobei das Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds die ausgewählte aus der auf einer Torfunktion basierenden Fusion oder der Linearkombinationsfusion anwendet.
  • Bei einer oder mehreren zehnten Ausführungsformen, zusätzlich zu einer der ersten bis neunten Ausführungsformen, basiert Anwenden des zeitlichen Hintergrundbildmodells ferner auf dem zweiten geschätzten Hintergrundbild oder basiert Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild.
  • Bei einer oder mehreren elften Ausführungsformen, zusätzlich zu einer der ersten bis zehnten Ausführungsformen, basiert das Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild und der ersten Konfidenzabbildung, und umfasst Bestimmen eines Pixelwerts des zweiten geschätzten Hintergrundbilds unter Verwendung des räumlichen Hintergrundbildmodells in Reaktion darauf, dass ein entsprechender Konfidenzwert der ersten Konfidenzabbildung eine Schwelle nicht überschreitet, oder Kopieren eines entsprechenden Pixelwerts des ersten geschätzten Hintergrundbilds in das zweite geschätzte Hintergrundbild in Reaktion darauf, dass der entsprechende Konfidenzwert der ersten Konfidenzabbildung die Schwelle überschreitet.
  • Bei einer oder mehreren zwölften Ausführungsformen beinhaltet eine Vorrichtung oder ein System einen Speicher und einen oder mehrere Prozessoren zum Durchführen eines Verfahrens gemäß einer der obigen Ausführungsformen.
  • Bei einer oder mehreren dreizehnten Ausführungsformen beinhaltet mindestens ein maschinenlesbares Medium mehrere Anweisungen, die in Reaktion darauf, dass sie auf einer Rechenvorrichtung ausgeführt werden, die Rechenvorrichtung veranlassen, ein Verfahren gemäß einer der obigen Ausführungsformen durchzuführen.
  • Bei einer oder mehreren vierzehnten Ausführungsformen beinhaltet eine Einrichtung Mittel zum Durchführen eines Verfahrens gemäß einer der obigen Ausführungsformen.
  • Es versteht sich, dass die Ausführungsformen nicht auf die so beschriebenen Ausführungsformen beschränkt sind, sondern mit Modifikation und Änderung umgesetzt werden können, ohne vom Schutzumfang der angehängten Ansprüche abzuweichen. Zum Beispiel können die obigen Ausführungsformen eine spezifische Kombination von Merkmalen beinhalten. Die obigen Ausführungsformen sind jedoch in dieser Hinsicht nicht beschränkt, und bei verschiedenen Implementierungen können die obigen Ausführungsformen das Vornehmen nur einer Teilmenge solcher Merkmale, das Vornehmen einer anderen Reihenfolge solcher Merkmale, das Vornehmen einer anderen Kombination solcher Merkmale und/oder das Vornehmen zusätzlicher Merkmale als jener explizit aufgelisteten Merkmale beinhalten. Der Schutzumfang der Ausführungsformen sollte daher unter Bezugnahme auf die angehängten Ansprüche zusammen mit dem vollen Schutzumfang von Äquivalenten, zu denen solche Ansprüche berechtigt sind, bestimmt werden.

Claims (25)

  1. System zum Durchführen einer Videohintergrundschätzung, das Folgendes umfasst: einen Speicher zum Speichern eines Eingangsvideobilds; und einen oder mehrere Prozessoren, die mit dem Speicher gekoppelt sind, wobei der eine oder die mehreren Prozessoren ausgelegt sind zum: Anwenden eines zeitlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen; Anwenden eines räumlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild angewendet wird, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen; und Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen.
  2. System nach Anspruch 1, wobei der eine oder die mehreren Prozessoren ferner ausgelegt sind zum: Anwenden einer Detektion von Vordergrundobjekten auf das Eingangsvideobild, um eine Vordergrundobjektmaske zu erzeugen, wobei das Erzeugen des ersten geschätzten Hintergrundbilds und/oder der ersten Konfidenzabbildung und/oder das Erzeugen des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung ferner auf der Vordergrundobjektmaske basiert.
  3. System nach Anspruch 1, wobei die erste Konfidenzabbildung eines aus einem Abstand zwischen entsprechenden Pixelwerten des ersten geschätzten Hintergrundbilds und dem Eingangsvideobild oder einer Varianz eines statistischen Modells, das zum Erzeugen des ersten geschätzten Hintergrundbilds verwendet wird, umfasst.
  4. System nach Anspruch 1, wobei Erzeugung des zweiten geschätzten Hintergrundbilds und der zweiten Konfidenzabbildung Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen basierend auf dem Eingangsvideobild umfasst, um ein Ausgangsvolumen zu erzeugen, das das zweite geschätzte Hintergrundbild und die zweite Konfidenzabbildung umfasst.
  5. System nach einem der Ansprüche 1 bis 4, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombinieren, umfasst, dass der eine oder die mehreren Prozessoren, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, einen entsprechenden Pixelwert aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder einen entsprechenden Pixelwert aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet, auswählen.
  6. System nach einem der Ansprüche 1 bis 5, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombinieren, umfasst, dass der eine oder die mehreren Prozessoren, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, einen gewichteten Mittelwert entsprechender Pixelwerte aus dem ersten und zweiten geschätzten Hintergrundbild, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und zweiten Konfidenzabbildung, erzeugen.
  7. System nach einem der Ansprüche 1 bis 6, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombinieren, umfasst, dass der eine oder die mehreren Prozessoren eine neuronale Netzwerkschicht auf ein Eingangsvolumen, das das erste und das zweite geschätzte Hintergrundbild und die erste und die zweite Konfidenzabbildung umfasst, anwenden, um ein Ausgangsvolumen zu erzeugen, das das resultierende geschätzte Hintergrundbild umfasst.
  8. System nach einem der Ansprüche 1 bis 7, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombinieren, umfasst, dass der eine oder die mehreren Prozessoren, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eine Größendifferenz zwischen Konfidenzwerten der ersten und zweiten Konfidenzabbildung erzeugen und eines aus einem Pixelwert des ersten oder zweiten geschätzten Hintergrundbilds für einen Pixelwert des resultierenden geschätzten Hintergrundbilds auswählen in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder Erzeugen eines Pixelwerts des resultierenden geschätzten Hintergrundbilds als gewichteten Mittelwert der Pixelwerte des ersten und des zweiten geschätzten Hintergrundbilds in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet.
  9. System nach einem der Ansprüche 1 bis 8, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild basierend auf der ersten und der zweiten Konfidenzabbildung kombinieren, umfasst, dass der eine oder die mehreren Prozessoren: einen zeitlichen Gesamtkonfidenzwerts basierend auf der ersten Konfidenzabbildung und einen räumlichen Gesamtkonfidenzwert basierend auf der zweiten Konfidenzabbildung bestimmen; eine Größendifferenz zwischen dem zeitlichen Gesamtkonfidenzwert und dem räumlichen Gesamtkonfidenzwert bestimmen; und eine auf eine Torfunktion basierende Fusion auswählen in Reaktion darauf, dass die Größendifferenz eine Schwelle überschreitet, oder eine Linearkombinationsfusion auswählen in Reaktion darauf, dass die Größendifferenz die Schwelle nicht überschreitet, wobei, dass der eine oder die mehreren Prozessoren das erste und das zweite geschätzte Hintergrundbild kombiniert, die ausgewählte aus der auf einer Torfunktion basierenden Fusion oder der Linearkombinationsfusion anwendet.
  10. System nach einem der Ansprüche 1 bis 9, wobei, dass einer der ein oder mehreren Prozessoren das zeitliche Hintergrundbildmodell anwendet, ferner auf dem zweiten geschätzten Hintergrundbild basiert, oder wobei, dass einer der ein oder mehreren Prozessoren das räumliche Hintergrundbildmodell anwendet, ferner auf dem ersten geschätzten Hintergrundbild basiert.
  11. System nach einem der Ansprüche 1 bis 10, wobei, dass der eine oder die mehreren Prozessoren das räumliche Hintergrundbildmodell anwenden, ferner auf dem ersten geschätzten Hintergrundbild und der ersten Konfidenzabbildung basiert und umfasst, dass der eine oder die mehreren Prozessoren einen Pixelwert des zweiten geschätzten Hintergrundbilds unter Verwendung des räumlichen Hintergrundbildmodells in Reaktion darauf bestimmen, dass ein entsprechender Konfidenzwert der ersten Konfidenzabbildung eine Schwelle nicht überschreitet, oder einen entsprechenden Pixelwert des ersten geschätzten Hintergrundbilds in das zweite geschätzte Hintergrundbild kopieren, in Reaktion darauf, dass der entsprechende Konfidenzwert der ersten Konfidenzabbildung die Schwelle überschreitet.
  12. Verfahren zum Durchführen einer Videohintergrundschätzung, das Folgendes umfasst: Anwenden eines zeitlichen Hintergrundbildmodells basierend auf einem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen; Anwenden eines räumlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild angewendet wird, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen; und Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen.
  13. Verfahren nach Anspruch 12, wobei Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Auswählen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines entsprechenden Pixelwerts aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder eines entsprechenden Pixelwerts aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet, umfasst.
  14. Verfahren nach Anspruch 12, wobei Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines gewichteten Mittelwerts entsprechender Pixelwerte aus den ersten und zweiten geschätzten Hintergrundbildern, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und der zweiten Konfidenzabbildung, umfasst.
  15. Verfahren nach Anspruch 12, wobei Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen, umfassend das erste und zweite geschätzte Hintergrundbild und die erste und zweite Konfidenzabbildung, umfasst, um ein Ausgangsvolumen zu erzeugen, das das resultierende geschätzte Hintergrundbild umfasst.
  16. Verfahren nach einem der Ansprüche 12 bis 15, wobei das Anwenden des zeitlichen Hintergrundbildmodells ferner auf dem zweiten geschätzten Hintergrundbild basiert oder das Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild basiert.
  17. Mindestens ein maschinenlesbares Medium, das mehrere Anweisungen umfasst, die in Reaktion darauf, dass sie auf einer Rechenvorrichtung ausgeführt werden, die Rechenvorrichtung veranlassen, eine Videohintergrundschätzung durchzuführen durch: Anwenden eines zeitlichen Hintergrundbildmodells basierend auf einem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen; Anwenden eines räumlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild angewendet wird, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen; und Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen.
  18. Maschinenlesbares Medium nach Anspruch 17, wobei Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Auswählen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines entsprechenden Pixelwerts aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder eines entsprechenden Pixelwerts aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet, umfasst.
  19. Maschinenlesbares Medium nach Anspruch 17, wobei Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines gewichteten Mittelwerts entsprechender Pixelwerte aus den ersten und zweiten geschätzten Hintergrundbildern, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und der zweiten Konfidenzabbildung, umfasst.
  20. Maschinenlesbares Medium nach einem der Ansprüche 17 bis 19, wobei das Anwenden des zeitlichen Hintergrundbildmodells ferner auf dem zweiten geschätzten Hintergrundbild basiert oder das Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild basiert.
  21. System, das Folgendes umfasst: Mittel zum Anwenden eines zeitlichen Hintergrundbildmodells basierend auf einem Eingangsvideobild und einem oder mehreren zeitlich vorherigen Eingangsvideobildern, um ein erstes geschätztes Hintergrundbild und eine entsprechende erste Konfidenzabbildung für das Eingangsvideobild zu erzeugen; Mittel zum Anwenden eines räumlichen Hintergrundbildmodells basierend auf dem Eingangsvideobild angewendet wird, um ein zweites geschätztes Hintergrundbild und eine entsprechende zweite Konfidenzabbildung für das Eingangsvideobild zu erzeugen; und Mittel zum Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung, um ein resultierendes geschätztes Hintergrundbild für das Eingangsvideobild zu erzeugen.
  22. System nach Anspruch 21, wobei die Mittel zum Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Mittel zum Auswählen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines entsprechenden Pixelwerts aus dem ersten geschätzten Hintergrundbild in Reaktion darauf, dass ein entsprechender Wert in der ersten Konfidenzabbildung einen entsprechenden Wert in der zweiten Konfidenzabbildung überschreitet, oder eines entsprechenden Pixelwerts aus dem zweiten geschätzten Hintergrundbild in Reaktion darauf, dass der entsprechende Wert in der zweiten Konfidenzabbildung den entsprechenden Wert in der ersten Konfidenzabbildung überschreitet, umfassen.
  23. System nach Anspruch 21, wobei die Mittel zum Kombinieren des ersten und des zweiten geschätzten Hintergrundbilds basierend auf der ersten und der zweiten Konfidenzabbildung Mittel zum Erzeugen, für jedes Pixel des resultierenden geschätzten Hintergrundbilds, eines gewichteten Mittelwerts entsprechender Pixelwerte aus den ersten und zweiten geschätzten Hintergrundbildern, gewichtet unter Verwendung entsprechender Konfidenzwerte aus der ersten und der zweiten Konfidenzabbildung, umfassen.
  24. System nach Anspruch 21, wobei die Mittel zum Kombinieren des ersten und zweiten geschätzten Hintergrundbilds basierend auf der ersten und zweiten Konfidenzabbildung Mittel zum Anwenden einer neuronalen Netzwerkschicht auf ein Eingangsvolumen, umfassend das erste und zweite geschätzte Hintergrundbild und die erste und zweite Konfidenzabbildung, umfasst, um ein Ausgangsvolumen zu erzeugen, das das resultierende geschätzte Hintergrundbild umfassen.
  25. System nach einem der Ansprüche 21 bis 24, wobei die Mittel zum Anwenden des zeitlichen Hintergrundbildmodells ferner auf dem zweiten geschätzten Hintergrundbild basieren oder die Mittel zum Anwenden des räumlichen Hintergrundbildmodells ferner auf dem ersten geschätzten Hintergrundbild basieren.
DE102021119882.8A 2020-09-03 2021-07-30 Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen Pending DE102021119882A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/011,647 2020-09-03
US17/011,647 US20200402243A1 (en) 2020-09-03 2020-09-03 Video background estimation using spatio-temporal models

Publications (1)

Publication Number Publication Date
DE102021119882A1 true DE102021119882A1 (de) 2022-03-03

Family

ID=74037838

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021119882.8A Pending DE102021119882A1 (de) 2020-09-03 2021-07-30 Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen

Country Status (4)

Country Link
US (1) US20200402243A1 (de)
KR (1) KR20220030879A (de)
CN (1) CN114220038A (de)
DE (1) DE102021119882A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3671660A1 (de) * 2018-12-20 2020-06-24 Dassault Systèmes Entwurf eines 3d-modellierten objekts über eine benutzerinteraktion
CN112990171B (zh) * 2021-05-20 2021-08-06 腾讯科技(深圳)有限公司 图像处理方法、装置、计算机设备及存储介质
US11983806B1 (en) * 2023-08-30 2024-05-14 OpenAI Opco, LLC Systems and methods for image generation with machine learning models

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001357388A (ja) * 2000-06-12 2001-12-26 Oki Electric Ind Co Ltd 道路監視装置
JP6944272B2 (ja) * 2017-04-25 2021-10-06 キヤノン株式会社 動体検出装置およびその制御方法

Also Published As

Publication number Publication date
CN114220038A (zh) 2022-03-22
KR20220030879A (ko) 2022-03-11
US20200402243A1 (en) 2020-12-24

Similar Documents

Publication Publication Date Title
DE102020123304A1 (de) Tiefes lernen für engmaschige semantische segmentierung in video mit automatisierter interaktivität und verbesserter zeitlicher kohärenz
DE112018007721T5 (de) Aufnehmen und modifizieren von 3D-Gesichtern unter Verwendung neuronaler Bild-und Zeitverfolgungsnetze
EP4198875A1 (de) Bildfusionsverfahren und trainingsverfahren und -vorrichtung für bildfusionsmodell
DE102020129800A1 (de) Interaktive segmentierung mit hoher wiedergabetreue für videodaten mit tief faltenden tessellationen und kontextsensitiven skip-verbindungen
DE102020125612A1 (de) Kontinuierliche lokale 3d-rekonstruktionsverfeinerung in video
DE102021118479A1 (de) Einbetten von komplexen 3d-objekten in eine erweiterte realitätsszene unter verwendung einer bildsegmentierung
Fang et al. Objective quality assessment of screen content images by uncertainty weighting
DE102018132245A1 (de) Verfahren und System zur rekurrenten semantischen Segmentierung zur Bildverarbeitung
DE102021119882A1 (de) Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen
DE102020125197A1 (de) Feinkörnige objektsegmentierung in video mit tiefen merkmalen und graphischen mehrebenenmodellen
DE112013004778T5 (de) Kodierung von Bildern unter Verwendung eines 3D-Netzes von Polygonen und entsprechenden Strukturen
CN110378838B (zh) 变视角图像生成方法,装置,存储介质及电子设备
Rao et al. A Survey of Video Enhancement Techniques.
DE102019216136A1 (de) Verfahren und system zur 3d-rekonstruktion mit volumenbasierter filterung zur bildverarbeitung
He et al. Fhde 2 net: Full high definition demoireing network
DE112018007730T5 (de) 3d objekterkennung unter verwendung von 3d konvolutionalen neuronalen netzen mit tiefenbasierten multiskalierungsfiltern
WO2021063341A1 (zh) 图像增强方法以及装置
DE112016006081T5 (de) Automatische Echtzeit-Fahrzeugkamerakalibrierung
DE102020202059A1 (de) Mehrdurchgangs-zusatzwerkzeug zur kohärenten und vollständigen ansichtssynthese
DE102018130086A1 (de) Mehrkameraprozessor mit merkmalsabgleich
EP2979449B1 (de) Verbesserung von spielfilmen mit genauen bewegungsinformationen
DE102020200310A1 (de) Verfahren und System zur Dunstreduzierung für die Bildverarbeitung
DE112016004109T5 (de) Echtzeit-mehrfach-fahrzeugdetektion und -tracking
DE112016005482T5 (de) Objektdetektion mit adaptiven Kanalmerkmalen
US20170116741A1 (en) Apparatus and Methods for Video Foreground-Background Segmentation with Multi-View Spatial Temporal Graph Cuts