DE102012006493A1 - Kameraimplementierung des Wählens und Stitchens von Einzelbildern für Panoramaaufnahmen - Google Patents

Kameraimplementierung des Wählens und Stitchens von Einzelbildern für Panoramaaufnahmen Download PDF

Info

Publication number
DE102012006493A1
DE102012006493A1 DE102012006493A DE102012006493A DE102012006493A1 DE 102012006493 A1 DE102012006493 A1 DE 102012006493A1 DE 102012006493 A DE102012006493 A DE 102012006493A DE 102012006493 A DE102012006493 A DE 102012006493A DE 102012006493 A1 DE102012006493 A1 DE 102012006493A1
Authority
DE
Germany
Prior art keywords
frame
qualifying
frames
image
overlap
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.)
Granted
Application number
DE102012006493A
Other languages
English (en)
Other versions
DE102012006493B4 (de
Inventor
Ayelet Mashiah
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.)
Qualcomm Inc
Original Assignee
CSR Technology Inc
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 CSR Technology Inc filed Critical CSR Technology Inc
Publication of DE102012006493A1 publication Critical patent/DE102012006493A1/de
Application granted granted Critical
Publication of DE102012006493B4 publication Critical patent/DE102012006493B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4038Scaling the whole image or part thereof for image mosaicing, i.e. plane images composed of plane sub-images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • 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/2624Studio 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 for obtaining an image which is composed of whole input images, e.g. splitscreen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Abstract

Es werden ein System, ein Verfahren und ein Computerprogrammprodukt zum Auswählen sich qualifizierender Einzelbilder aus einer Bildsequenz zur Verwendung in einem nachfolgendem Stitching zu einem zusammengesetzten Panoramabild offenbart. Ankommende Einzelbilder von einer beliebigen Quelle können zugeschnitten und herunterskaliert werden, bevor sie bezüglich qualifizierender Kriterien betreffend Bildüberlappung und lokaler Bewegung ausgewertet werden. Sich qualifizierende Bilder werden gespeichert und/oder ausgegeben. Das resultierende Panoramabild verwendet allgemein weniger sich qualifizierende Bilder und erscheint glatter und besitzt weniger Artefakte als jene des Stands der Technik. Das qualifizierende Kriterium für eine Bildüberlappung ist ein vorbestimmter Überlappungsspielraum oder -prozentsatz zwischen einem aktuellen Bild und einem vorausgegangenen Bild aus der Sequenz. Das qualifizierende Kriterium für die Bildbewegung umfasst ein maximales Ausmaß an lokaler Bewegung, oftmals aufgrund sich vorbeibewegender Objekte. Die Ausführungsformen können ankommende Bilder in Echtzeit oder aus gespeicherten Sequenzen verarbeiten. Probleme können Benutzerwarnungen auslösen.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung basiert auf und beansprucht die Priorität der unter 35 U.S.C. 119(e) am 6. April 2011 eingereichten eigenen vorläufigen US-Anmeldung mit der laufenden Nummer 61/472,454 mit dem Titel ”In Camera Implementation of Selecting and Stitching Frames for Panoramic Imagery”, die hiermit durch Bezugnahme aufgenommen ist. Zu eigenen Patentanmeldungen mit einem verwandten Gegenstand zählen die folgenden: US mit der laufenden Nummer 12/536,728, eingereicht am 6. August 2009, mit dem Titel ”In-Camera Panorama Image Stitching Assistance”, veröffentlicht am 11. Februar 2010 als US-Patentanmeldungsveröffentlichung 2010/0033553 A1, und die US mit der laufenden Nummer 12/549,254, eingereicht am 27. August 2009, mit dem Titel ”Robust Fast Panorama Stitching in Mobile Phones Or Cameras”, veröffentlicht am 4. März 2010 als US-Patentanmeldungsveröffentlichung 2010/0054628 A1, die jeweils ausdrücklich ebenfalls in ihrer Gänze durch Bezugnahme aufgenommen sind.
  • ERFINDUNGSGEBIET
  • Die vorliegende Patentanmeldung betrifft allgemein das Stitchen einer Sequenz von Bildern von einer Digitalkamera aneinander, um ein einzelnes zusammengesetztes Panoramabild herzustellen, und insbesondere das Erfassen der Bilder, um die Wahrscheinlichkeit zu vergrößern, dass ein hochwertiges Panoramabild erzielt wird.
  • ALLGEMEINER STAND DER TECHNIK
  • Bei der Panorama- oder Breitformatfotografie wird eine Sequenz von Bildern erfasst, die zu einem einzelnen Bild rekonstruiert werden, das die Form eines breiten Streifens mit einem länglichen Blickfeld annimmt. Ein Panoramabild zeigt in der Regel ein Blickfeld, das größer ist als das einer mit einem Weitwinkelobjektiv ausgestatteten Kamera. Eine Möglichkeit zum Erfassen eines Panoramabilds besteht darin, eine Filmkamera auf einen Stativ zu montieren und eine Reihenfolge von Bildern einer Szene aufzunehmen, während die Kamera physisch gedreht wird. Die Bilder werden danach zusammengefügt (engl. ”stitched”), indem Streifen von belichtetem Film dort physisch geschnitten und zusammengeklebt werde, wo die Grenzen zwischen den Kanten des Films sorgfältig ausgerichtet werden.
  • Die Vorzüge der elektronischen Fotographie haben jüngst zur allgemeinen Akzeptanz von Digitalkameras geführt, die erfasste Bilder in einem digitalen Speicher speichern. Einige Digitalkameras stellen auch eine ”Panorama”-Funktion bereit, die es einem Benutzer der Digitalkamera gestattet, eine Sequenz benachbarter Bildern aufzunehmen, die danach zu einem einzelnen Bild mit einer breiten Feldabdeckung digital zusammengefügt (”gestitcht”) werden. Beispielsweise können einige Digitalkameras mit einer Panoramafunktion an einen PC gekoppelt werden, der Software bereitstellt, um zwei oder mehr Bilder an ihren Kantengrenzen extern miteinander zu verbinden, um ein einzelnes Bild mit einem breiten Panoramaformat herzustellen.
  • Auf dem Markt findet man heutzutage zwei grundlegende Arten von Panoramabildmontagelösungen für Kameras auf dem Verbraucherniveau. Eine basiert auf einer ”Unterstützungs”-Applikation, und die andere basiert auf einer Schwenkhandbewegung. Bei der unterstützungsbasierten Lösung muss der Benutzer die Bilder manuell aufnehmen, nachdem er mit der Hilfe einer Unterstützungs-Applikation entschieden hat, dass die richtige Überlappung zwischen den Bildern erzielt worden ist. Dieser Ablauf überlässt die Entscheidung darüber, welche Bilder für die Panoramabilderzeugung zu erfassen sind, dem Benutzer. Beispielsweise erfordert die existierende Lösung zum Herstellen eines Panoramabilds, wie in der eigenen US-Patentanmeldungsveröffentlichung 2010/0033553 beschrieben, dass der Benutzer einige wenige Bilder mit richtiger Überlappung aufnimmt (der Benutzer wird von der Kamera mit einer Unterstützungsapplikation geführt, um die Bilder mit der richtigen Überlappung aufzunehmen), und dann werden diese Bilder zu einem Panoramabild zusammengefügt. Dies ist für den Benutzer ein umständlicher Prozess, und er könnte auch dazu führen, dass die Zusammenfügung der Bilder aus mehreren Gründen scheitert. Erstens könnte die Überlappung zwischen den Bildern möglicherweise nicht innerhalb der erforderlichen Spielräume liegen. Zweitens kann sich die Szene beim Aufnehmen von aufeinanderfolgenden Bildern verändern; beispielsweise können sich die Beleuchtungsbedingungen ändern oder es kann eine Objektbewegung eingeführt werden.
  • Neuere Kameras auf dem Markt stellen ein Merkmal bereit, bei dem beispielsweise durch Drücken eines Knopfs und Schwenken der Kamera über die Szene Bilder mit richtiger Überlappung automatisch erfasst werden. Einige Kameras können Bilder erfassen, bis der gedrückte Knopf losgelassen wird oder bis ein Speicher voll ist oder ein Gesamtbild vorbestimmter Größe erfasst ist oder eine vorbestimmte Anzahl von Bildern erfasst ist oder die Schwenkbewegung beendet ist usw. Dann wird unter Verwendung der erfassten Bilder eine Panoramaansicht hergestellt. Wie sich jedoch durch Versuche gezeigt hat, bringt dieser Ablauf unter Umständen keine zufriedenstellenden Ergebnisse hervor, wenn in der Sequenz erfasster Bilder eine große lokale Bewegung vorliegt (z. B. vorbeifahrende Wagen, Fußgänger oder Tiere). Einige der Lösungen, die man auf dem Markt findet, setzen das Panorama zusammen, indem schmale Streifen aus einer großen Anzahl von Bildern aus der Erfassungssequenz zusammengefügt werden. Manchmal ergibt sich ein weniger wünschenswertes Panoramabild mit einem streifenartigen Aussehen.
  • Die vorliegende Patentanmeldung beschreibt eine Lösung für diese Herausforderungen.
  • KURZE DARSTELLUNG DER AUSFÜHRUNGSFORMEN
  • Systeme, Verfahren und Computerprogrammprodukte zum Auswählen sich qualifizierender Einzelbilder aus einer Bildsequenz zur Verwendung bei dem nachfolgenden Stitching zu einem zusammengesetzten Panoramabild werden hier offenbart und beansprucht.
  • Wie unten ausführlicher beschrieben, gestatten die Vorrichtungen und Prozesse der offenbarten Ausführungsformen die Herstellung von verbesserten Panoramabildern. Weitere Aspekte, Aufgaben, wünschenswerte Merkmale und Vorteile der hier offenbarten Vorrichtungen und Verfahren lassen sich von dem Fachmann angesichts der ausführlichen Beschreibung und Zeichnungen, die folgen, in denen verschiedene Ausführungsformen beispielhaft dargestellt sind, besser verstehen und ergeben sich ihm. Es sei jedoch ausdrücklich gesagt, dass die Zeichnungen nur dem Zweck der Veranschaulichung dienen und nicht als Definition der Grenzen der beanspruchten Erfindung gedacht sind.
  • Beim Beschreiben der vorliegenden Erfindung als eine beispielhafte Verfahrensausführungsform werden wenigstens einige der Einzelbilder einer Bildsequenz gewählt, um verarbeitet zu werden, um bestimmte sich qualifizierende Bilder zur Verwendung bei der Herstellung eines zusammengesetzten Panoramabilds zu wählen. Einzelbildüberlappungsbeschränkungen (engl. constraints) werden ausgewertet, und jene Einzelbilder, die diese Beschränkungen erfüllen, werden ebenfalls im Hinblick auf Einzelbildbewegungsbeschränkungen ausgewertet. Sich qualifizierende Einzelbilder, die alle die Beschränkungen erfüllen, werden selektiv gespeichert und ausgegeben.
  • Das Verfahren kann in Echtzeit arbeiten und kann alle Einzelbilder einer Bildsequenz der Reihenfolge nach verarbeiten. Die Einzelbilder können herunterskaliert (engl. downscale) und geschnitten werden. Die Bildsequenz kann während der Bildsequenzerfassung oder nach der Bildsequenzerfassung verarbeitet werden. Die Bildsequenz kann eine beliebige Menge von aufeinanderfolgend erfassten Einzelbildern umfassen, wie etwa eine unkomprimierte oder komprimierte Videosequenz, und kann während eines Schwenks einer Zielszene von einer Digitalkamera erfasst werden.
  • Ein Zählwert von für die Herstellung eines zusammengesetzten Panoramabilds erforderlichen Einzelbildern kann festgelegt werden. Die Einzelbildüberlappungsbeschränkungen können einen festgelegten Richtungsüberlappungsprozentsatz bezüglich eines vorausgegangenen sich qualifizierenden Einzelbilds umfassen. Beispielsweise kann der spezifizierte Richtungsüberlappungsprozentsatz wenigstens vierzig Prozent horizontale Überlappung betragen. Die Einzelbildbewegungsbeschränkungen umfassen eine maximal zulässige lokale Bewegung innerhalb eines Einzelbildüberlappungsgebiets. Die Einzelbildbewegungsbeschränkungen können ausgewertet werden, indem zuerst eine Bewegungsabschätzung eines aktuellen Einzelbilds bezüglich eines vorausgegangenen Einzelbilds durchgeführt wird, dann die überlappenden Einzelbildgebiete in Blöcke unterteilt werden, die Anzahl der Pixel in jedem Block summiert wird, wobei die Differenz bei den Pixelbeleuchtungswerten für das aktuelle Einzelbild und das vorausgegangene Einzelbild einen vordefinierten Schwellwert übersteigt, und schließlich selektiv bestimmt wird, dass eine große lokale Bewegung die Einzelbildbewegungsbeschränkungen gemäß dem Prozentsatz an Blöcken mit einem hohen Wert für die Pixel mit hohen Beleuchtungswertdifferenzen verletzt.
  • Das erste Einzelbild in der Bildsequenz kann standardmäßig als ein sich qualifizierendes Einzelbild gespeichert und ausgegeben werden. Sich qualifizierende Einzelbilder können zur weiteren Verwendung als Referenzeinzelbilder während der weiteren Verarbeitung der Bildsequenz einbehalten werden. Die Ausführungsformen können die sich qualifizierenden Einzelbilder in ein zusammengesetztes Panoramabild zur Ausgabe und Speicherung zusammenfügen.
  • Benutzer können gewarnt werden, falls ein Fehlerzustand auftritt, einschließlich beispielsweise, falls Einzelbildbewegungsbeschränkungen verletzt werden, Einzelbildüberlappungsbeschränkungen verletzt werden, es zu einer übermäßigen Kameraneigung in einer beliebigen Orientierung kommt oder falls unzureichende sich qualifizierende Einzelbilder gespeichert werden. Verletzungen der Einzelbildbewegungsbeschränkung können übermäßige lokale Bewegung, übermäßige oder unzureichende Schwenkgeschwindigkeit oder übermäßiges Handbewegungsabdriften in einer senkrechten Richtung zu der Schwenkrichtung umfassen.
  • Bei einer Ausführungsform werden Einzelbildüberlappungsbeschränkungen für wenigstens zwei bestimmte Einzelbilder der Bildsequenz gegenüber einem vordefinierten Überlappungsspielraum ausgewertet und die lokale Bewegung innerhalb der Einzelbilder wird für die wenigstens zwei bestimmten Einzelbilder und wenigstens ein zusätzliches Einzelbild der Bildsequenz in dem vordefinierten Überlappungsspielraum ausgewertet.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt eine grafische Darstellung von überlappenden Einzelbildern gemäß einer Ausführungsform;
  • 2 zeigt eine grafische Darstellung einer Systemimplementierung gemäß einer Ausführungsform;
  • 3 zeigt eine grafische Darstellung einer Verfahrensimplementierung gemäß einer Ausführungsform.
  • AUSFÜHRLICHE BESCHREIBUNG VON AUSFÜHRUNGSBEISPIELEN
  • Ausführungsformen der vorliegenden Erfindung erfordern, dass der Fotograf die Kamera über die zu fotografierende Szene schwenkt. Während dieser Zeit erfasst die Kamera im Wesentlichen eine Videosequenz, d. h. eine Menge von periodisch oder ungefähr periodisch erfassten Einzelbildern, die jeweils einen Teil der Szene abdecken. Einzelne gewählte Bilder der Sequenz (d. h. wenigstens einige Bilder werden gewählt, aber bevorzugt alle) werden dann von einem Algorithmus betrachtet, der prüft um zu bestimmen, ob sie einer Menge von Anforderungen entsprechen, um sicherzustellen, dass sich die gewählten Bilder qualifizieren, um zu einem guten endgültigen Panoramabild beizutragen. Die Anforderungen sind wie folgt: richtige Bildüberlappung und keine lokale Bewegung. Jedes sich qualifizierende Bild in der Videosequenz, das diesen Anforderungen entspricht, wird in einem Speicher gespeichert, um später in der Stitchingphase verwendet zu werden. Es wird auch ein Protokoll der Überlappung jedes sich qualifizierenden Bilds mit dem vorausgegangenen sich qualifizierenden Bild gepflegt. Diese Daten sind in der Stitchingphase nützlich, wo die sich qualifizierenden Bilder nahtlos verbunden werden, um ein Panoramabild zu erzeugen.
  • Die gegenwärtig eingesetzte Stitchingphase wird in der eigenen US-Patentanmeldungsveröffentlichung 2010/0054628 beschrieben, wobei die vorliegende Erfindung nicht auf dieses bestimmte Stitchingverfahren beschränkt ist. Bei diesem Verfahren muss die Transformation zwischen jedem aufeinanderfolgenden Paar von Bildern gefunden werden. Das Protokoll der Bildüberlappung wird als ein anfänglicher Hinweis für diese Transformation verwendet.
  • Die Ausführungsformen der vorliegenden Erfindung bieten einen automatischen Echtzeitentscheidungsprozess, der jedes gewählte ankommende Einzelbild prüft, um zu bestimmen, ob es sich zur Verwendung in dem endgültigen Panoramabild eignet. Dieser Prozess kann mit jeder Kamera oder jeder Bildgebungsvorrichtung benutzt werden. Ein nachfolgendes Stitchingverfahren verkettet die sich qualifizierenden Bilder (oder Abschnitte davon) miteinander, um das Panoramabild herzustellen.
  • Indem signifikant weniger Bilder zum Herstellen des Panoramabilds verwendet werden als bei einigen Literaturstellen im Stand der Technik, kommt es zu einer signifikanten Reduktion bei der ”Streifigkeit” des Panoramabilds, so dass es glatter und von höherer Ausgabequalität zu sein scheint. Ferner ermöglichen die Ausführungsformen eine zuverlässigere und zugänglichere Operation der eigenen Panoramabildproduktionsverfahren.
  • Die vorliegende Patentanmeldung beschreibt somit eine Methodik zum Wählen der geeignetsten Bilder aus einem sequentiell ankommenden Strom von Videoeinzelbildern zum Herstellen eines Panoramabilds. Am Ende des Prozesses werden mehrere überlappende Bilder, die keine lokale Bewegung oder nur minimale lokale Bewegung enthalten, gespeichert. Jedes gewählte erfasste Bild wird herunterskaliert und gegenüber dem zuvor gewählten Bild registriert. Es wird auch auf lokale Bewegung in dem Einzelbild hin analysiert, indem das aktuelle Bild mit dem zuvor gewählten Bild verglichen wird. Falls sich das Bild innerhalb des erforderlichen Überlappungsbereichs mit dem vorausgegangenen gewählten Bild befindet und die lokale Bewegung gering ist, wird es zur weiteren Verarbeitung gespeichert; ansonsten wird es verworfen. Lokale Bewegung ist nur in überlappenden Gebieten wichtig, weshalb bei einer alternativen Ausführungsform lokale Bewegung in einem überlappenden Gebiet zusammen mit einem richtigen Überlappungsbereich als ein Kriterium für eine Bildqualifizierung dient.
  • Nunmehr unter Bezugnahme auf 1 werden zwei gewählte Einzelbilder 100 und 110 gezeigt. Diese Einzelbilder weisen einen Überlappungsbereich 120 auf. Bei dieser beispielhaften Figur ist das Panorama in einer horizontalen Orientierung gezeigt, doch ist die Erfindung nicht auf irgendeine bestimmte Orientierung und Richtung beschränkt.
  • Nunmehr unter Bezugnahme auf 2 wird ein Systemdiagramm vorgelegt, das die Grundlagen der Ausführungsformen der vorliegenden Erfindung zeigt, die mit gewählten ankommenden Videoeinzelbildern arbeiten und verwandte Behalten-Verwerfen-Entscheidungen und behaltene sich qualifizierende Einzelbilder ausgeben. Ein Erfassungsengine 210 empfängt bei jedem Zyklus ein Bild 250 als Eingabe, in der Regel von einer Bildgebungsvorrichtung wie etwa einer Digitalkamera. Für jedes eingegebene Einzelbild skaliert der Erfassungsengine 210 ein Bild herunter und speichert sowohl das Bild als auch seine herunterskalierte Version 260 im Speicher 240. Das herunterskalierte Bild 260 wird in einen Bewegungsschätzungsengine 220 gespeist, der die Bewegungsvektoren 270 des Bilds auswertet, wobei ein Referenzbild von dem Speicher 240 verwendet wird. Ein Entscheidungsengine 230 schätzt, ob die Einzelbildüberlappung innerhalb der erforderlichen Überlappungsspielräume liegt und ob die lokale Bewegung klein genug ist und trifft als Reaktion eine Wahl dahingehend, ob das aktuelle Bild als sich für das Panoramabild qualifizierend gespeichert werden sollte oder verworfen werden sollte. Falls es behalten wird, kann es das Referenzeinzelbild für die aufeinanderfolgenden Einzelbilder werden. Die Daten bezüglich der resultierenden Überlappung zwischen dem aktuellen Bild und dem zuvor gespeicherten Bild werden an die Stitchingphase weitergeleitet, wo diese Daten das Bestimmen der Platzierung der sich qualifizierenden Bilder in dem Panoramabild unterstützen.
  • Der von dem Entscheidungsengine 230 durchgeführte Entscheidungsprozess verwendet die beiden folgenden Grundregeln: (a) falls die Überlappung mit dem letzten gewählten Einzelbild zwischen den erforderlichen Spielräumen liegt, Prüfen auf lokale Bewegung (im Vergleich mit dem vorausgegangenen gewählten Einzelbild) in dem Überlappungsgebiet, und (b) falls die lokale Bewegung gering ist, Behalten (engl. keep) des Einzelbilds, da es sich für das Panorama-Stitching qualifiziert. Alternative Ausführungsformen können ebenfalls Einzelbilder, die die Einzelbildüberlappungsanforderungen erfüllen, aber nicht die Anforderungen für lokale Bewegung, als Kandidateneinzelbilder zur Verwendung beim Panorama-Stitching ”festhalten” (engl. hold), falls keine nachfolgenden, sich voll qualifizierenden Kandidateneinzelbilder erfasst werden. Die ”festgehaltenen” Einzelbilder können verworfen werden, falls ein nachfolgendes Einzelbild erfasst wird, das alle qualifizierenden Anforderungen erfüllt.
  • Sich qualifizierende Einzelbilder werden zur weiteren Verwendung als Referenzeinzelbilder einbehalten; ansonsten kann der Prozess das sich nicht qualifizierende aktuelle Einzelbild verwerfen und prüft das nächste zu verarbeitende gewählte Einzelbild, das bevorzugt das nächste Einzelbild in der Bildsequenz ist. Dieser automatisierte Prozess verwendet signifikante Abschnitte eines erfassten Bilds, gemäß einem kleinsten Schwellwert, und reduziert dadurch die Anzahl der zum Generieren eines ganzen Panoramabilds erforderlichen Stitches. Außerdem wird ein höherwertiges Panoramabild dadurch erreicht, dass die Notwendigkeit vermieden wird, dass der Benutzer beim Erfassen der Sequenz von Bildern leitend eingreift. Somit werden durch die Ausführungsformen der vorliegenden Erfindung mehrere Mängel des oben beschriebenen Stands der Technik überwunden, zum Beispiel wird eine Bildqualitätsreduktion aufgrund einer großen Anzahl von Stitches vermieden, die Komplexität bei der Verwendung wird stark reduziert, durch das Stitching verursachte Fehler, die durch eine unzureichende Ausrichtung verursacht werden, werden stark reduziert und die Effekte einer lokalen Bewegung innerhalb des Panoramabilds werden im Wesentlichen eliminiert.
  • Es folgt eine Beschreibung der Gesamtmethodik, die bei den Ausführungsformen der vorliegenden Erfindung verwendet wird. Eine Streaming-Videoeingabe kann mit einer beliebigen Rate ankommen, allgemein höher als 10 Einzelbilder pro Sekunde, in der Regel 30 Einzelbilder pro Sekunde, und mit einer beliebigen Auflösung. Der Algorithmus kann mit den folgenden Parametern konfiguriert werden:
    • 1. Der zu verwendende Teil des ankommenden Bilds – die ankommenden Bilder können als Ganzes verwendet oder auf eine kleinere Größe zugeschnitten werden.
    • 2. Das Ausmaß der gewünschten Überlappung zwischen zwei Bildern in dem Panoramabild.
    • 3. Die Anzahl der Bilder, die das Panoramabild umfassen werden.
  • Beispielsweise kann man bei einer Ausführungsform der Erfindung entscheiden, nur den mittleren Abschnitt jedes Einzelbilds zu verwenden (das können 50% des gesamten Einzelbilds sein), mit einer Überlappung von 50% zwischen den gewählten Halbbildern. Bei diesem Beispiel beträgt die erforderliche Gesamtüberlappung eines Einzelbilds mit einem vorausgegangenen gewählten Einzelbild somit 75%. Falls bei Verwendung der oben erwähnten beispielhaften Werte ein 1280×720-Pixel-Videostrom verwendet wird, wird somit, nachdem das aktuelle Einzelbild um 1280 × 0,25 = 320 Pixel horizontal bezüglich eines vorausgegangenen gewählten Einzelbilds verschoben ist, das aktuelle Einzelbild gespeichert. Dieses gespeicherte Einzelbild kann nun das gewählte Referenzeinzelbild werden. Bei einer weiteren Ausführungsform und nicht als Beschränkung kann man eine Überlappung zwischen den Halbbildern von 25% fordern, und dann beträgt die erforderliche Überlappung zwischen gewählten Einzelbildern 37,5%. Durch die Ausführungsformen mit diesen beispielhaften Einstellungen wird das signifikante Problem der lokalen Bewegung, das man in Panoramabildlösungen nach dem Stand der Technik sieht, überwunden.
  • Nunmehr unter Bezugnahme auf 3 werden die folgenden Schritte durchgeführt, bevorzugt, aber nicht notwendigerweise, für jedes ankommende Einzelbild, um das Einzelbild mit der korrekten Überlappung bezüglich des vorausgegangenen gewählten Einzelbilds zu identifizieren:
  • In Schritt 310 wird das Einzelbild zur Bewegungsschätzung herunterskaliert. Dies gestattet, eine große Bewegung entlang der Bewegungsachse (X im Fall einer horizontalen Bewegung und Y im Fall einer vertikalen Bewegung) bei kürzerer Rechenzeit zu finden.
  • In Schritt 320 wird dann die Bewegungsschätzung (ME – Motion Estimation) bezüglich des zuvor gewählten Einzelbilds durchgeführt. Um eine Akkumulation von ME-Fehlern zu vermeiden, wird die ME bezüglich des zuvor gewählten Einzelbilds (anstatt des unmittelbar vorausgegangenen Einzelbilds in dem Videostrom, notwendigerweise) mit einer Anfangsvorhersage der Bewegung durchgeführt. So finden und korrigieren die Ausführungsformen nur den Fehler in der Vorhersage. Die Vorhersage der Bewegung des aktuellen Einzelbilds wird als die Bewegung des unmittelbar vorausgegangenen Einzelbilds bezüglich des vorausgegangenen gewählten Einzelbilds berechnet, mit einer Addition einer Bewegungsvorhersage des Schritts von dem unmittelbar vorausgegangenen Einzelbild zu dem aktuellen Einzelbild. Es wird angenommen, dass die vorhergesagte Bewegung die gleiche ist wie die Bewegung zwischen den beiden vorausgegangenen Einzelbildern.
  • In Schritt 330 wird nach dem Berechnen des Fehlers in der Vorhersage dieser Wert zu der Vorhersage addiert, um die korrekte Bewegung des aktuellen Einzelbilds bezüglich des vorausgegangenen gewählten Einzelbilds herzustellen.
  • In Schritt 340 beträgt die Ausgabe der ME-Vorhersage einige hunderte von Bewegungsvektoren (MV – Motion Vectors). Die robusten MVs werden aus diesem Pool gewählt. Dann wird ein 2D-Histogramm dieser MVs angelegt. Ein einzelner MV wird für jedes Einzelbild als derjenige gewählt, der dem größten Bin in dem Histogramm entspricht. Zusätzliche Regeln werden auf diesen MV angewendet, wie etwa, falls einige wenige MVs mit ähnlichen Richtungen sehr hohe Histogrammwerte aufweisen, dann wird ein einzelner MV als eine gewichtete Summe dieser berechnet.
  • In Schritt 350 ist im Fall einer horizontalen Bewegung die einzige, in der Regel interessierende Komponente die X-Komponente des MV (die Y-Komponente wird als ein Indikator eines unerwünschten senkrechten Abdriftens verwendet, der verwendet wird, um den Benutzer zu warnen, die Handbewegung des Benutzers zu korrigieren). Die X-Bewegung zeigt an, wann ein Einzelbild erreicht worden ist, das die gewünschte Überlappung mit einem vorausgegangenen gewählten Einzelbild aufweist.
  • In Schritt 360 wird das Einzelbild auf eine lokale Bewegung hin getestet, falls die erforderlichen Überlappungsspielräume erreicht worden sind. Durch Verwenden der Differenz zwischen den berechneten MVs der aktuellen und der vorausgegangenen Einzelbilder werden ihre Überlappungsbereiche gefunden und registriert. Die Bilder werden in entsprechende Blöcke zur Analyse unterteilt, und in jedem Block werden die Beleuchtungswerte der beiden Bilder subtrahiert und die Anzahl von Pixeln in jedem Block mit einer Differenz bei dem Pixelbeleuchtungswert für die beiden Bilder, der einen vordefinierten Schwellwert übersteigt, werden summiert. Falls ein großer Prozentsatz der Blöcke einen hohen Wert für die Anzahl von Pixeln mit hohen Beleuchtungswertdifferenzen aufweist, wird angenommen, dass das Einzelbild eine große lokale Bewegung enthält. Ein derartiges Einzelbild wird dann bevorzugt verworfen, und die Verarbeitung geht mit dem nächsten Einzelbild weiter (d. h. mit Schritt 310, Verwenden des nächsten Einzelbilds). Ansonsten geht die Ausführung des Algorithmus mit dem unten beschriebenen Schritt 370 weiter. Eine Ausnahme bei dieser Phase tritt auf, falls das ferne Ende der Überlappungsspielräume erreicht worden ist. In diesem Fall wird das aktuelle Einzelbild trotz der lokalen Bewegung für die weitere Verarbeitung verwendet. Danach geht die Verarbeitung mit Schritt 310 weiter, unter Verwendung des nächsten Einzelbilds.
  • In Schritt 370 wird das Einzelbild für die weitere Verarbeitung gespeichert, falls das Einzelbild den Anforderungen entspricht. Das Referenzeinzelbild wird durch dieses Einzelbild ersetzt und die Verarbeitung geht weiter mit Schritt 310, unter Verwendung des nächsten Einzelbilds.
  • Die Ausführung dieses Algorithmus wird wiederholt, bis die ganze Panoramaansicht erfasst ist, wie dies von dem Benutzer der Erfassungsvorrichtung gewünscht sein mag. Der Fotograf kann gewarnt werden, falls Probleme auftreten, falls beispielsweise Einzelbildbewegungsbeschränkungen verletzt werden, Einzelbildüberlappungsbeschränkungen verletzt werden, es zu einem übermäßigen Kamerakippen in einer beliebigen Orientierung kommt und/oder falls unzureichende sich qualifizierende Einzelbilder gespeichert werden. Die Einzelbildbewegungsbeschränkungen können beispielsweise durch übermäßige lokale Bewegung, übermäßige oder unzureichende Schwenkgeschwindigkeit und/oder übermäßiges Handbewegungsabdriften in einer senkrechten Richtung zu der Schwenkrichtung verletzt werden. Als Folge solcher Probleme können entsprechende Benutzernachrichten generiert werden.
  • Eine mögliche Alternative besteht darin, mit der lokalen Bewegung in den Einzelbildern in der Stitchingphase fertig zu werden (d. h. eine lokale Bewegung in dem Überlappungsgebiet zwischen Bildern wird ein visuelles Artefakt in das endgültige Ergebnis einführen). In der Stitchingphase ist es möglich zu versuchen, die beiden überlappten Bilder an Stellen zusammenzufügen, die keine signifikante lokale Bewegung enthalten. Versuche haben jedoch gezeigt, dass das resultierende Panorama in diesem Fall unter Umständen immer noch einige Stitching-Artefakte aufweist.
  • Ein weiteres alternatives Verfahren besteht darin, einfach die ganze Videosequenz zu speichern, falls genügend Speicherressourcen zur Verfügung stehen, und dann später die besten Einzelbilder für das Panorama zu wählen. In diesem Fall kann man sich effektiv zeitlich vor- und zurückbewegen, und die besten Einzelbilder werden gewählt, aber nicht nur auf der Basis von vorausgegangenen Einzelbildern. Bei einer derartigen Ausführungsform ist eine Warnung an den Fotografen über Probleme möglicherweise nicht machbar im Gegensatz zu Ausführungsformen der Echtzeitbildauswertung.
  • Die Ausdrücke ”ein” oder ”eine/einer” sollen, wie sie hier verwendet werden, einen oder mehr als einen bedeuten. Der Ausdruck ”mehrere” soll zwei oder mehr als zwei bedeuten. Der Ausdruck ”ein anderer” ist als ein zweiter oder weiterer definiert. Die Ausdrücke ”enthaltend” und/oder ”mit” sind offen (z. B. umfassend). In diesem Dokument bedeutet eine Bezugnahme auf ”eine Ausführungsform”, ”gewisse Ausführungsformen”, ”eine Ausführungsform” oder einen ähnlichen Ausdruck durchweg, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Charakteristik, die in Verbindung mit der Ausführungsform beschrieben sind, in wenigstens einer Ausführungsform enthalten ist. Somit bezieht sich das Auftreten von solchen Ausdrücken an verschiedenen Stellen in der gesamten Beschreibung nicht notwendigerweise immer auf die gleiche Ausführungsform. Ferner können die bestimmten Merkmale, Strukturen oder Charakteristika auf beliebige geeignete Weise an einer oder mehreren Ausführungsformen ohne Beschränkung kombiniert werden. Der Ausdruck ”oder”, wie er hier verwendet wird, ist als inklusiv auszulegen oder so, dass er eine oder eine beliebige Kombination bedeutet. Deshalb bedeutet ”A, B oder C” ”ein beliebiges der folgenden: A; B; C; A und B; A und C; B und C; A, B und C”. Eine Ausnahme dieser Definition tritt nur dann auf, wenn sich eine Kombination von Elementen, Funktionen, Schritten oder Handlungen auf gewisse Weise inhärent gegenseitig ausschließt.
  • Gemäß den Praktiken von Fachleuten beim Computerprogrammieren werden unten Ausführungsformen unter Bezugnahme auf Operationen beschrieben, die von einem Computersystem oder einem ähnlichen Elektroniksystem durchgeführt werden. Solche Operationen werden manchmal als von einem Computer ausgeführt bezeichnet. Es versteht sich, dass Operationen, die symbolisch dargestellt sind, die Manipulation von elektrischen Signalen, die Datenbits darstellen, durch einen Prozessor wie etwa eine zentrale Verarbeitungseinheit sowie eine anderweitige Verarbeitung von Signalen und die Pflege von Datenbits an Speicherstellen wie etwa im Systemspeicher beinhalten. Die Speicherstellen, wo Datenbits gepflegt werden, sind physische Stellen, die den Datenbits entsprechende bestimmte elektrische, magnetische, optische oder organische Eigenschaften besitzen.
  • Bei Implementierungen in Software sind die Elemente der Ausführungsformen im Wesentlichen die Codesegmente zum Ausführen der erforderlichen Aufgaben. Die nicht vorübergehenden Codesegmente können in einem prozessorlesbaren Medium oder computerlesbaren Medium gespeichert sein, was ein beliebiges Medium beinhalten kann, das Informationen speichern oder transferieren kann. Zu Beispielen für solche Medien zählen eine Elektronikschaltung, ein Halbleiterspeicherbauelement, ein Festwertspeicher (ROM), ein Flash-Speicher oder ein anderer nicht flüchtiger Speicher, eine Diskette, eine CD-ROM, eine optische Platte, eine Festplatte, ein faseroptisches Medium usw. Die Benutzereingabe kann eine beliebige Kombination aus einer Tastatur, Maus, einem Touchscreen, einer Sprachbefehlseingabe usw. umfassen. Die Benutzereingabe kann analog verwendet werden, um eine Browserapplikation, die auf der Rechenvorrichtung eines Benutzers ausgeführt wird, zu einer oder mehreren Netzwerkressourcen wie etwa Webseiten zu lenken, von denen aus auf Rechenressourcen zugegriffen werden kann. Ausführungsformen können auch eine integrierte Schaltungsanordnung umfassen, die Schaltungselemente enthält, die spezifische Systemoperationen ausführen kann.
  • Während die Erfindung in Verbindung mit speziellen Beispielen und verschiedenen Ausführungsformen beschrieben worden ist, versteht der Fachmann ohne Weiteres, dass viele Modifikationen und Adaptionen der hier beschriebenen Erfindung ohne Abweichung von dem Gedanken und Schutzbereich der Erfindung, wie im Folgenden beansprucht, möglich sind. Somit ist deutlich zu verstehen, dass diese Anmeldung nur als Beispiel und nicht als Beschränkung des Schutzbereichs der unten beanspruchten Erfindung angefertigt wurde. Die Beschreibung soll alle Variationen, Verwendungen oder Adaptionen der Erfindung abdecken, die allgemein den Prinzipien der Erfindung folgen, und einschließlich solcher Abweichungen von der vorliegenden Offenbarung, wie sie in die bekannte und übliche Praxis innerhalb der Technik fallen, auf die sich die Erfindung bezieht.

Claims (23)

  1. Verfahren, umfassend: für wenigstens einige gewählte Einzelbilder einer Bildsequenz: Auswerten von Einzelbildüberlappungsbeschränkungen; Auswerten von Einzelbildbewegungsbeschränkungen; selektives Speichern eines aktuellen Einzelbilds als ein sich qualifizierendes Einzelbild, falls die Einzelbildüberlappungsbeschränkungen und die Einzelbildbewegungsbeschränkungen erfüllt sind; und Ausgeben der sich qualifizierenden Einzelbilder.
  2. Verfahren nach Anspruch 1, wobei das Verfahren in Echtzeit arbeitet.
  3. Verfahren nach Anspruch 1 oder 2, wobei alle Einzelbilder einer Bildsequenz der Reihe nach verarbeitet werden.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Bildsequenz während einer Bildsequenzerfassung verarbeitet wird.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Bildsequenz nach der Bildsequenzerfassung verarbeitet wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Bildsequenz eine Menge von aufeinanderfolgend erfassten Einzelbildern umfasst.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Bildsequenz eine unkomprimierte Videosequenz oder eine komprimierte Videosequenz ist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Bildsequenz während eines Schwenks einer Zielszene von einer Digitalkamera erfasst wird.
  9. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Bereitstellen eines für die Herstellung eines zusammengesetzten Panoramabilds erforderlichen Zählwerts von Einzelbildern umfasst.
  10. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Einzelbildüberlappungsbeschränkungen einen spezifizierten Richtungsüberlappungsprozentsatz bezüglich eines vorausgegangenen sich qualifizierenden Einzelbilds umfassen.
  11. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Einzelbildbewegungsbeschränkungen eine größte zulässige lokale Bewegung innerhalb eines Einzelbildüberlappungsbereichs umfassen.
  12. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Einzelbildbewegungsbeschränkungen ausgewertet werden durch: Durchführen einer Bewegungsschätzung eines aktuellen Einzelbilds bezüglich eines vorausgegangenen gewählten Einzelbilds; Unterteilen von überlappenden Einzelbildbereichen zwischen dem aktuellen Einzelbild und dem vorausgegangenen gewählten Einzelbild in Blöcke für die nachfolgende Analyse; Summieren der Anzahl von Pixeln in jedem Block mit einer Differenz bei dem Pixelbeleuchtungswert für das aktuelle Einzelbild und dem vorausgegangenen gewählten Einzelbild, die einen vordefinierten Schwellwert übersteigt; und selektives Bestimmen, dass eine große lokale Bewegung die Einzelbildbewegungsbeschränkungen gemäß dem Prozentsatz von Blöcken mit Pixelsummen, die hohe Beleuchtungswertdifferenzen anzeigen, verletzt.
  13. Verfahren nach einem der vorhergehenden Ansprüche, wobei ein erstes Einzelbild in der Bildsequenz standardmäßig gespeichert und als ein sich qualifizierendes Einzelbild ausgegeben wird.
  14. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Einbehalten von sich qualifizierenden Einzelbildern zur weiteren Verwendung als Referenzeinzelbilder während einer weiteren Verarbeitung der Bildsequenz umfasst.
  15. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Stitching der ausgegebenen Einzelbilder zu einem zusammengesetzten Panoramabild für die Ausgabe und/oder Speicherung umfasst.
  16. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Herunterskalieren der zu verarbeitenden Einzelbilder umfasst.
  17. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Beschneiden der zu verarbeitenden Einzelbilder umfasst.
  18. Verfahren nach einem der vorhergehenden Ansprüche, welches ferner ein Warnen eines Benutzers umfasst, falls ein Fehlerzustand auftritt, der wenigstens eines umfasst aus: die Einzelbildbewegungsbeschränkungen werden verletzt, die Einzelbildüberlappungsbeschränkungen werden verletzt, ein übermäßiges Kamerakippen erfolgt in einer beliebigen Orientierung und unzureichende sich qualifizierende Einzelbilder werden gespeichert.
  19. Verfahren nach Anspruch 18, wobei die Einzelbildbewegungsbeschränkungen durch wenigstens eines der Folgenden verletzt werden: übermäßige lokale Bewegung, übermäßige Schwenkgeschwindigkeit, unzureichende Schwenkgeschwindigkeit und übermäßiges Handbewegungsabdriften in einer senkrechten Richtung zu einer Schwenkrichtung.
  20. Verfahren nach einem der vorhergehenden Ansprüche, wobei Einzelbildüberlappungsbeschränkungen für zwei bestimmte Einzelbilder der Bildsequenz gegenüber einem vordefinierten Überlappungsspielraum ausgewertet werden und Einzelbildbewegungsbeschränkungen für die beiden bestimmten Einzelbilder und wenigstens ein zusätzliches Einzelbild der Bildsequenz innerhalb des vordefinierten Überlappungsspielraums ausgewertet werden.
  21. Kamera, die für wenigstens einige gewählte Einzelbilder einer Bildsequenz: Einzelbildüberlappungsbeschränkungen auswertet; Einzelbildbewegungsbeschränkungen auswertet; selektiv ein aktuelles Einzelbild als ein sich qualifizierendes Einzelbild speichert, falls die Einzelbildüberlappungsbeschränkungen und die Einzelbildbewegungsbeschränkungen erfüllt sind; und die sich qualifizierenden Einzelbilder ausgibt.
  22. Computerprogrammprodukt, umfassend ein maschinenlesbares Medium, das nicht-vorübergehende Programmanweisungen darauf berührbar verkörpert, die bei Ausführung durch die Maschine bewirken, dass die Maschine für wenigstens einige gewählte Einzelbilder einer Bildsequenz: Einzelbildüberlappungsbeschränkungen auswertet; Einzelbildbewegungsbeschränkungen auswertet; selektiv ein aktuelles Einzelbild als ein sich qualifizierendes Einzelbild speichert, falls die Einzelbildüberlappungsbeschränkungen und die Einzelbildbewegungsbeschränkungen erfüllt sind; und die sich qualifizierenden Einzelbilder ausgibt.
  23. Integrierte Schaltung, umfassend: für wenigstens einige gewählte Einzelbilder einer Bildsequenz: ein erstes Schaltungselement zum Auswerten von Einzelbildüberlappungsbeschränkungen; ein zweites Schaltungselement zum Auswerten von Einzelbildbewegungsbeschränkungen; ein drittes Schaltungselement zum selektiven Speichern eines aktuellen Einzelbilds als ein sich qualifizierendes Einzelbild, falls die Einzelbildüberlappungsbeschränkungen und die Einzelbildbewegungsbeschränkungen erfüllt sind; und ein viertes Schaltungselement zum Ausgeben der sich qualifizierenden Einzelbilder.
DE102012006493.4A 2011-04-06 2012-03-30 Kameraimplementierung des Wählens und Stitchens von Einzelbildern für Panoramaaufnahmen Active DE102012006493B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161472454P 2011-04-06 2011-04-06
US61/472,454 2011-04-06
US13/359,303 US8947502B2 (en) 2011-04-06 2012-01-26 In camera implementation of selecting and stitching frames for panoramic imagery
US13/359,303 2012-01-26

Publications (2)

Publication Number Publication Date
DE102012006493A1 true DE102012006493A1 (de) 2012-10-11
DE102012006493B4 DE102012006493B4 (de) 2022-12-08

Family

ID=46087221

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012006493.4A Active DE102012006493B4 (de) 2011-04-06 2012-03-30 Kameraimplementierung des Wählens und Stitchens von Einzelbildern für Panoramaaufnahmen

Country Status (3)

Country Link
US (2) US8947502B2 (de)
DE (1) DE102012006493B4 (de)
GB (1) GB2489791B (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9307165B2 (en) * 2008-08-08 2016-04-05 Qualcomm Technologies, Inc. In-camera panorama image stitching assistance
WO2010025309A1 (en) * 2008-08-28 2010-03-04 Zoran Corporation Robust fast panorama stitching in mobile phones or cameras
WO2012150378A1 (en) * 2011-05-02 2012-11-08 Nokia Corporation Methods and apparatuses for capturing an image
US9654761B1 (en) 2013-03-15 2017-05-16 Google Inc. Computer vision algorithm for capturing and refocusing imagery
WO2015028587A2 (en) 2013-08-31 2015-03-05 Dacuda Ag User feedback for real-time checking and improving quality of scanned image
JP6146278B2 (ja) * 2013-11-28 2017-06-14 株式会社Jvcケンウッド 画像接合装置、画像接合方法および画像接合プログラム
WO2015082572A2 (en) 2013-12-03 2015-06-11 Dacuda Ag User feedback for real-time checking and improving quality of scanned image
EP3092790B1 (de) 2014-01-07 2020-07-29 ML Netherlands C.V. Adaptive kamerasteuerung zur verminderung der bewegungsunschärfe während der bildaufnahme in echtzeit
US10410321B2 (en) 2014-01-07 2019-09-10 MN Netherlands C.V. Dynamic updating of a composite image
JP2015186015A (ja) * 2014-03-24 2015-10-22 株式会社Jvcケンウッド 画像処理装置、画像処理方法、プログラム及びカメラ
US9813620B2 (en) * 2014-03-31 2017-11-07 JVC Kenwood Corporation Image processing apparatus, image processing method, program, and camera
WO2015173173A1 (en) 2014-05-12 2015-11-19 Dacuda Ag Method and apparatus for scanning and printing a 3d object
WO2016032054A1 (en) 2014-08-27 2016-03-03 Lg Electronics Inc. Display device and method of controlling therefor
KR102206244B1 (ko) 2014-08-27 2021-01-22 엘지전자 주식회사 디스플레이 디바이스 및 그 제어 방법
US9363449B1 (en) * 2014-11-13 2016-06-07 Futurewei Technologies, Inc. Parallax tolerant video stitching with spatial-temporal localized warping and seam finding
US9612764B2 (en) 2015-03-04 2017-04-04 International Business Machines Corporation Frame choosing during storage constraint condition
US10198838B2 (en) * 2016-03-31 2019-02-05 Qualcomm Incorporated Geometric work scheduling with dynamic and probabilistic work trimming
US10257417B2 (en) 2016-05-24 2019-04-09 Microsoft Technology Licensing, Llc Method and apparatus for generating panoramic images
KR102609477B1 (ko) * 2017-02-06 2023-12-04 삼성전자주식회사 파노라마 이미지 또는 동영상을 생성하는 전자 장치 및 그 방법
EP3404913B1 (de) * 2017-05-16 2019-11-06 Axis AB System mit einer videokamera und einer client-vorrichtung und davon ausgeführtes verfahren
JP6545229B2 (ja) * 2017-08-23 2019-07-17 キヤノン株式会社 画像処理装置、撮像装置、画像処理装置の制御方法およびプログラム
JP2020188349A (ja) * 2019-05-14 2020-11-19 キヤノン株式会社 撮像装置、撮像方法、コンピュータプログラム及び記憶媒体
US11949976B2 (en) 2019-12-09 2024-04-02 Corephotonics Ltd. Systems and methods for obtaining a smart panoramic image
CN115314627B (zh) * 2021-05-08 2024-03-01 杭州海康威视数字技术股份有限公司 一种图像处理方法、系统及摄像机

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190A (en) * 1858-05-11 Dressing and sizing warps
US30693A (en) * 1860-11-20 Brush-making machine
US6002430A (en) * 1994-01-31 1999-12-14 Interactive Pictures Corporation Method and apparatus for simultaneous capture of a spherical image
JP3832895B2 (ja) * 1996-05-28 2006-10-11 キヤノン株式会社 画像合成装置及び画像合成システム
US6331869B1 (en) * 1998-08-07 2001-12-18 Be Here Corporation Method and apparatus for electronically distributing motion panoramic images
US6075905A (en) 1996-07-17 2000-06-13 Sarnoff Corporation Method and apparatus for mosaic image construction
US6018349A (en) * 1997-08-01 2000-01-25 Microsoft Corporation Patch-based alignment method and apparatus for construction of image mosaics
US6044181A (en) * 1997-08-01 2000-03-28 Microsoft Corporation Focal length estimation method and apparatus for construction of panoramic mosaic images
US6009190A (en) * 1997-08-01 1999-12-28 Microsoft Corporation Texture map construction method and apparatus for displaying panoramic image mosaics
US6486908B1 (en) 1998-05-27 2002-11-26 Industrial Technology Research Institute Image-based method and system for building spherical panoramas
US6023588A (en) 1998-09-28 2000-02-08 Eastman Kodak Company Method and apparatus for capturing panoramic images with range data
US7292261B1 (en) * 1999-08-20 2007-11-06 Patrick Teo Virtual reality camera
US6717608B1 (en) * 1999-12-31 2004-04-06 Stmicroelectronics, Inc. Motion estimation for panoramic digital camera
US6771304B1 (en) 1999-12-31 2004-08-03 Stmicroelectronics, Inc. Perspective correction device for panoramic digital camera
US6677981B1 (en) * 1999-12-31 2004-01-13 Stmicroelectronics, Inc. Motion play-back of still pictures comprising a panoramic view for simulating perspective
US6885392B1 (en) 1999-12-31 2005-04-26 Stmicroelectronics, Inc. Perspective correction for preview area of panoramic digital camera
US7064783B2 (en) * 1999-12-31 2006-06-20 Stmicroelectronics, Inc. Still picture format for subsequent picture stitching for forming a panoramic image
US6798923B1 (en) * 2000-02-04 2004-09-28 Industrial Technology Research Institute Apparatus and method for providing panoramic images
US7373017B2 (en) 2005-10-04 2008-05-13 Sony Corporation System and method for capturing adjacent images by utilizing a panorama mode
US7133068B2 (en) 2000-03-06 2006-11-07 Sony Corporation System and method for creating still images by utilizing a video camera device
US6978051B2 (en) 2000-03-06 2005-12-20 Sony Corporation System and method for capturing adjacent images by utilizing a panorama mode
US6930703B1 (en) 2000-04-29 2005-08-16 Hewlett-Packard Development Company, L.P. Method and apparatus for automatically capturing a plurality of images during a pan
US6834128B1 (en) 2000-06-16 2004-12-21 Hewlett-Packard Development Company, L.P. Image mosaicing system and method adapted to mass-market hand-held digital cameras
US6731305B1 (en) 2000-07-17 2004-05-04 Imove, Inc. Camera system which records camera identification in image file
US6785427B1 (en) 2000-09-20 2004-08-31 Arcsoft, Inc. Image matching using resolution pyramids with geometric constraints
JP3650578B2 (ja) * 2000-09-28 2005-05-18 株式会社立山アールアンドディ 画像の歪みを補正するためのニューラル・ネットワークを用いたパノラマ画像ナビゲーションシステム
JP2002208005A (ja) 2001-01-12 2002-07-26 Minolta Co Ltd 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
US7583293B2 (en) 2001-12-06 2009-09-01 Aptina Imaging Corporation Apparatus and method for generating multi-image scenes with a camera
US7224382B2 (en) * 2002-04-12 2007-05-29 Image Masters, Inc. Immersive imaging system
US20040189849A1 (en) 2003-03-31 2004-09-30 Hofer Gregory V. Panoramic sequence guide
US7480001B2 (en) * 2003-07-02 2009-01-20 Sony Corporation Digital camera with a spherical display
US7409105B2 (en) 2003-10-22 2008-08-05 Arcsoft, Inc. Panoramic maker engine for a low profile system
JP4425278B2 (ja) 2003-10-28 2010-03-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ パノラマ又はモザイク機能を有するデジタルカメラ
US7746404B2 (en) 2003-11-10 2010-06-29 Hewlett-Packard Development Company, L.P. Digital camera with panoramic image capture
US7289147B2 (en) 2004-02-03 2007-10-30 Hewlett-Packard Development Company, L.P. Method for providing image alignment feedback for panorama (composite) images in digital cameras using edge detection
US7656429B2 (en) * 2004-02-04 2010-02-02 Hewlett-Packard Development Company, L.P. Digital camera and method for in creating still panoramas and composite photographs
US7375745B2 (en) 2004-09-03 2008-05-20 Seiko Epson Corporation Method for digital image stitching and apparatus for performing the same
US20060182437A1 (en) 2005-02-11 2006-08-17 Williams Karen E Method and apparatus for previewing a panoramic image on a digital camera
TWI299463B (en) 2005-04-13 2008-08-01 Via Tech Inc Method and device for dynamically displaying image by virtual plane coordinate conversion
US7424218B2 (en) 2005-07-28 2008-09-09 Microsoft Corporation Real-time preview for panoramic images
US7460730B2 (en) * 2005-08-04 2008-12-02 Microsoft Corporation Video registration and image sequence stitching
US20070081081A1 (en) 2005-10-07 2007-04-12 Cheng Brett A Automated multi-frame image capture for panorama stitching using motion sensor
US7639897B2 (en) 2006-01-24 2009-12-29 Hewlett-Packard Development Company, L.P. Method and apparatus for composing a panoramic photograph
US7860343B2 (en) 2006-04-10 2010-12-28 Nokia Corporation Constructing image panorama using frame selection
KR100827089B1 (ko) 2006-04-25 2008-05-02 삼성전자주식회사 파노라마 사진 촬영 방법
US20090257680A1 (en) 2006-06-30 2009-10-15 Nxp B.V. Method and Device for Video Stitching
KR101264804B1 (ko) 2006-08-16 2013-05-15 삼성전자주식회사 최적의 촬영위치를 알릴 수 있는 파노라마 촬영 방법 및장치
KR100796849B1 (ko) 2006-09-04 2008-01-22 삼성전자주식회사 휴대 단말기용 파노라마 모자이크 사진 촬영 방법
KR100800660B1 (ko) 2006-09-21 2008-02-01 삼성전자주식회사 파노라마 영상 촬영 장치 및 방법
KR100790890B1 (ko) 2006-09-27 2008-01-02 삼성전자주식회사 파노라마 영상 생성장치 및 방법
KR100800804B1 (ko) 2006-12-27 2008-02-04 삼성전자주식회사 파노라마 영상 촬영 방법
US7783133B2 (en) 2006-12-28 2010-08-24 Microvision, Inc. Rotation compensation and image stabilization system
US8331725B2 (en) 2007-01-12 2012-12-11 Qualcomm Incorporated Panoramic imaging techniques
ES2633742T3 (es) * 2007-03-16 2017-09-25 L-3 Communications Corporation Sistema para procesamiento de imagen panorámica
US7995097B2 (en) 2007-05-25 2011-08-09 Zoran Corporation Techniques of motion estimation when acquiring an image of a scene that may be illuminated with a time varying luminance
JP4377932B2 (ja) 2007-07-26 2009-12-02 株式会社モルフォ パノラマ画像生成装置およびプログラム
KR101354899B1 (ko) * 2007-08-29 2014-01-27 삼성전자주식회사 파노라마 사진 촬영 방법
KR101409653B1 (ko) 2007-12-18 2014-06-19 삼성전자주식회사 파노라마 사진 자동 촬영 방법
US8103134B2 (en) 2008-02-20 2012-01-24 Samsung Electronics Co., Ltd. Method and a handheld device for capturing motion
US8339456B2 (en) * 2008-05-15 2012-12-25 Sri International Apparatus for intelligent and autonomous video content generation and streaming
US8350892B2 (en) 2008-05-20 2013-01-08 Sony Corporation Image pickup apparatus, image pickup method, playback control apparatus, playback control method, and program
JP5338174B2 (ja) 2008-07-28 2013-11-13 富士通株式会社 パノラマ撮影装置及び方法、パノラマ撮影装置を搭載したカメラユニット
US9307165B2 (en) 2008-08-08 2016-04-05 Qualcomm Technologies, Inc. In-camera panorama image stitching assistance
US8811771B2 (en) * 2008-08-22 2014-08-19 Adobe Systems Incorporated Content aware slideshows
WO2010025309A1 (en) 2008-08-28 2010-03-04 Zoran Corporation Robust fast panorama stitching in mobile phones or cameras
US20100265313A1 (en) 2009-04-17 2010-10-21 Sony Corporation In-camera generation of high quality composite panoramic images
US8294748B2 (en) * 2009-12-11 2012-10-23 DigitalOptics Corporation Europe Limited Panorama imaging using a blending map
JP2011130327A (ja) * 2009-12-21 2011-06-30 Sony Corp 画像処理装置および方法、並びにプログラム
TWI506595B (zh) 2011-01-11 2015-11-01 Altek Corp 全景影像產生方法及裝置

Also Published As

Publication number Publication date
GB2489791B (en) 2017-04-26
US20130038680A1 (en) 2013-02-14
GB2489791A (en) 2012-10-10
GB201205402D0 (en) 2012-05-09
US8947502B2 (en) 2015-02-03
US20150181115A1 (en) 2015-06-25
DE102012006493B4 (de) 2022-12-08

Similar Documents

Publication Publication Date Title
DE102012006493B4 (de) Kameraimplementierung des Wählens und Stitchens von Einzelbildern für Panoramaaufnahmen
US10467729B1 (en) Neural network-based image processing
DE112006000358B4 (de) Verfahren und Vorrichtung zur Erstellung eines Panoramabildes
DE102016105879B4 (de) Anzeigesteuerungsvorrichtung und Steuerungsverfahren für diese
DE102011078662B4 (de) Erfassen und Erzeugen von Bildern mit hohem Dynamikbereich
DE102013017122B4 (de) Verfahren zum Herstellen automatischer Cinemagramme auf einer Bildgebungsvorrichtung
DE602006000400T2 (de) Bildsegmentierungsverfahren und -system
DE102013226164B4 (de) Bildverarbeitungsvorrichtung, Bildaufnahmevorrichtung, Bildverarbeitungsverfahren, Programm und Speichermedium
DE602004009702T2 (de) Verfahren und System zur automatischen Reduzierung von Aliasing-Artefakten
DE102015121084A1 (de) Zoomsteuerverfahren für Kamera und elektronische Vorrichtung mit Kamera
DE202014010969U1 (de) Kamerafähiges Mobilgerät
DE102017126269B4 (de) Vorrichtung und Verfahren zur hinterleuchteten Gesichtserkennung
DE102004015806A1 (de) Verfahren und Anordnung zur Aufnahme interessierender Bereiche von beweglichen Objekten
DE102015110326A1 (de) Bildverarbeitungsvorrichtung, Verfahren zum Steuern derselben und Speichermedium
DE112017004624B4 (de) Bildaufnahmevorrichtung und Bildaufnahmesteuerverfahren
DE102008001076A1 (de) Verfahren, Vorrichtung sowie Computerprogramm zur Auflösungsreduktion eines Eingangsbilds
EP2030433A1 (de) Verfahren und anordnung zur behandlung von datensätzen bildgebender sensoren sowie ein entsprechendes computerprogramm und ein entsprechendes computerlesbares speichermedium
DE102013017099A1 (de) Auf interpolation inverser brennpunktstatistiken basierende tiefenschätzung
DE102018101035A1 (de) Bildstabilisierungsvorrichtung und steuerverfahren dafür, bildaufnahmevorrichtung und speichermedium
DE102018107950A1 (de) Bildverarbeitungsvorrichtung, bildverarbeitungsverfahren und bildaufnahmevorrichtung
DE102013201980B4 (de) Verfahren zur Fokuseinstellung und entsprechendes Bilderfassungsgerät
DE10240874B4 (de) Digitalphotographie mit erweitertem Bild
DE102015119593A1 (de) Techniken zur Bildvorschau und Aufnahme von Selbstportraitbildern
DE102021119882A1 (de) Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen
DE102018123402A1 (de) Bildunschärfekorrekturvorrichtung und steuerverfahren

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20120814

R082 Change of representative

Representative=s name: OLSWANG GERMANY LLP, DE

R081 Change of applicant/patentee

Owner name: QUALCOMM INC. (N.D.GES.D. STAATES DELAWARE), S, US

Free format text: FORMER OWNER: CSR TECHNOLOGY INC., SUNNYVALE, CALIF., US

Effective date: 20141112

Owner name: QUALCOMM TECHNOLOGIES, INC. (N.D.GES.D. STAATE, US

Free format text: FORMER OWNER: CSR TECHNOLOGY INC., SUNNYVALE, CALIF., US

Effective date: 20141112

R082 Change of representative

Representative=s name: MAUCHER JENKINS, DE

Effective date: 20141112

Representative=s name: OLSWANG GERMANY LLP, DE

Effective date: 20141112

Representative=s name: MAUCHER JENKINS PATENTANWAELTE & RECHTSANWAELT, DE

Effective date: 20141112

R081 Change of applicant/patentee

Owner name: QUALCOMM INC. (N.D.GES.D. STAATES DELAWARE), S, US

Free format text: FORMER OWNER: QUALCOMM TECHNOLOGIES, INC. (N.D.GES.D. STAATES DELAWARE), SAN DIEGO, CALIF., US

R082 Change of representative

Representative=s name: MAUCHER JENKINS, DE

Representative=s name: MAUCHER JENKINS PATENTANWAELTE & RECHTSANWAELT, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final