DE102013017122A1 - Verfahren zum Herstellen automatischer Cinemagramme auf einer Bildgebungsvorrichtung - Google Patents
Verfahren zum Herstellen automatischer Cinemagramme auf einer Bildgebungsvorrichtung Download PDFInfo
- Publication number
- DE102013017122A1 DE102013017122A1 DE201310017122 DE102013017122A DE102013017122A1 DE 102013017122 A1 DE102013017122 A1 DE 102013017122A1 DE 201310017122 DE201310017122 DE 201310017122 DE 102013017122 A DE102013017122 A DE 102013017122A DE 102013017122 A1 DE102013017122 A1 DE 102013017122A1
- Authority
- DE
- Germany
- Prior art keywords
- sequence
- image
- frame
- frames
- motion
- 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
Links
- 238000003384 imaging method Methods 0.000 title abstract description 6
- 238000004519 manufacturing process Methods 0.000 title description 3
- 230000011218 segmentation Effects 0.000 claims abstract description 29
- 238000001514 detection method Methods 0.000 claims abstract description 23
- 230000033001 locomotion Effects 0.000 claims description 105
- 238000000034 method Methods 0.000 claims description 58
- 230000009471 action Effects 0.000 claims description 24
- 238000007670 refining Methods 0.000 claims description 5
- 230000003993 interaction Effects 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 37
- 238000003860 storage Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 10
- 230000009466 transformation Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000010339 dilation Effects 0.000 description 3
- 230000000877 morphologic effect Effects 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- WVMLRRRARMANTD-FHLIZLRMSA-N ram-316 Chemical compound C1=CCC[C@@]2(O)[C@H]3CC4=CC=C(OC)C(O)=C4[C@]21CCN3C WVMLRRRARMANTD-FHLIZLRMSA-N 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/149—Segmentation; Edge detection involving deformable models, e.g. active contour models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/38—Registration of image sequences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20116—Active contour; Active surface; Snakes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/142—Edging; Contouring
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
- TECHNISCHES GEBIET
- Die vorliegenden Ausführungsformen betreffen allgemein Bildanimation und insbesondere, aber nicht ausschließlich, das automatische Herstellen eines Cinemagramms auf wenigstens einer Bildgebungsvorrichtung, wobei das Cinemagramm auf der Bildgebungsvorrichtung ohne zusätzliche Benutzerinteraktion über ein Erfassen einer Anfangssequenz von Bildern und einem Anzeigen hinaus, dass ein Cinemagramm aus einer Sequenz hergestellt werden soll, hergestellt werden kann.
- HINTERGRUND
- Kurz gesagt kann ein Cinemagramm als ein Standbild beschrieben werden, in dem eine gewisse wiederholte Bewegungsaktion innerhalb eines Abschnitts einer Szene innerhalb des Fotos auftritt. Cinemagramme können als etwas zwischen einem Foto und einem Video angesehen werden, das einen Moment der Aktion innerhalb eines ansonsten unbewegten Fotos zu erfassen versucht. In einigen Aspekten erscheint ein Cinemagramm dem Beobachter einem GIF-Bild (Graphics Interchange Format), einem JPEG-Bild (Joint Photographic Experts Group) oder einem anderen Videoformat zu ähneln. Bei diesen beispielhaften Bewegtbildern wird eine Bewegung eines bestimmten Aspekts des Bilds als eine sich wiederholende oder fortgesetzte Bewegung zwischen Bildern in der Sequenz von Bildern wahrgenommen.
- Während Cinemagramme für interessante Animationen sorgen, erfordern gegenwärtige Ansätze oftmals, dass der Prozess des Compositing des Cinemagramms aus einer Videosequenz manuell unter Einsatz einer manchmal komplexen Bildeditiersoftware durchgeführt wird, die oftmals signifikante Benutzerinteraktionen beinhaltet; und/oder die Verwendung von Werkzeugen, die nur auf einem PC oder einem Server laufen können, was das Herunterladen des erfassten Videos von der Kamera oder der mobilen Vorrichtung auf den Computer erfordert – eine mühselige und zeitraubende Anforderung. Viele Leute sind möglicherweise dem Versuch abgeneigt, Cinemagramme herzustellen. Somit besteht ein Wunsch, verbesserte Mechanismen zum Herstellen von Cinemagrammen bereitzustellen, auf eine Weise, die sowohl automatisch als auch schnell ist, die dem Benutzer das Ergebnis ohne weitere Intervention sofort auf der Kamera präsentiert. Deshalb wurden bezüglich dieser Überlegungen und anderer die vorliegenden Innovationen gemacht.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
- Nicht begrenzende und nicht erschöpfende Ausführungsformen werden unter Bezugnahme auf die folgenden Zeichnungen beschrieben. In den Zeichnungen beziehen sich gleiche Bezugszahlen in den verschiedenen Figuren auf gleiche Teile, sofern nicht etwas anderes festgelegt ist.
- Zum besseren Verständnis der vorliegenden Ausführungsformen wird nun auf die folgende ausführliche Beschreibung Bezug genommen, die zusammen mit den beiliegenden Zeichnungen zu lesen ist. Es zeigen:
-
1 ein Systemschaltbild einer Ausführungsform einer Umgebung, in der die Ausführungsformen praktiziert werden können; -
2 eine Ausführungsform eines verbesserten Bildprozessors, der zum Praktizieren verschiedener Ausführungsformen verwendet werden kann; -
3 ein Systemschaltbild einer weiteren Ausführungsform einer Umgebung, in der die Ausführungsformen praktiziert werden können; -
4 einen Logikflussprozess, der allgemein eine Ausführungsform eines Prozesses zeigt, der zum automatischen Erzeugen eines Cinemagramms verwendet werden kann; -
5 einen Logikflussprozess, der allgemein eine Ausführungsform eines Prozesses zeigt, der zum Aufbauen eines einzelnen Ausgaberahmens innerhalb eines Cinemagramms verwendet werden kann; und -
6 einen Logikfluss, der allgemein eine Ausführungsform eines Prozessbeispiels zum Vereinigen von Segmentierungen zum Herstellen eines Cinemagramms zeigt. - AUSFÜHRLICHE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
- Die vorliegenden Ausführungsformen werden nun im Folgenden unter Bezugnahme auf die beiliegenden Zeichnungen vollständiger beschrieben, die einen Teil hiervon bilden und die zur Veranschaulichung spezielle Aspekte zeigen, wie die Ausführungsformen praktiziert werden können. Diese Ausführungsformen können jedoch viele verschiedene Formen annehmen und sollten nicht so ausgelegt werden, dass sie die hier dargelegten Ausführungsformen beschränken; vielmehr werden diese Ausführungsformen vorgelegt, damit diese Offenbarung gründlich und vollständig ist und dem Fachmann den Schutzbereich vollständig vermittelt. Die vorliegenden Ausführungsformen können unter anderem Verfahren oder Vorrichtungen umfassen. Dementsprechend können die vorliegenden Ausführungsformen die Form von vollständig in Hardware oder einer Kombination aus Software- und Hardwareaspekten annehmen. Die folgende ausführliche Beschreibung ist daher nicht in einem einschränkenden Sinn zu verstehen.
- In der Spezifikation und den Ansprüchen besitzen die folgenden Begriffe die explizit hier assoziierten Bedeutungen, sofern der Kontext nicht klar etwas anderes diktiert. Die Phrase ”in einer Ausführungsform”, wie hier verwendet, bezieht sich nicht notwendigerweise auf die gleiche Ausführungsform, wenngleich dies möglich ist. Ferner bezieht sich die Phrase ”in einer weiteren Ausführungsform”, wie hier verwendet, nicht notwendigerweise auf eine andere Ausführungsform, wenngleich dies möglich ist. Somit können, wie unten beschrieben, verschiedene Ausführungsformen der Erfindung ohne weiteres kombiniert werden, ohne vom Schutzbereich oder Wesen der Erfindung abzuweichen.
- Außerdem ist, wie hier verwendet, der Begriff ”oder” ein inklusiver ”Oder”-Operator und ist äquivalent dem Begriff ”und/oder”, sofern der Kontext nicht deutlich etwas anderes diktiert. Der Begriff ”auf der Basis von” ist nicht abschließend und gestattet das Basieren auf zusätzlichen, nicht beschriebenen Faktoren, sofern der Kontext nicht deutlich etwas anderes diktiert. Außerdem umfasst in der Spezifikation die Bedeutung von ”ein/eine/einer” und ”der/die/das” Pluralreferenzen. Die Bedeutung von ”in” umfasst ”in” und ”auf”.
- Der Begriff ”Bild” oder ”Bilddaten”, wie hier verwendet, bezieht sich auf Daten, die ein in wenigstens zwei Dimensionen anzuzeigendes Bild definieren, und kann die Form eines einzelnen Displays des Bilds oder eines zeitlich variierenden Displays einer Sequenz von Bildern annehmen, die mehrere Videorahmen umfassen, die zeitlich beabstandet sein können.
- Der Begriff ”Cinemagramm”, wie hier verwendet, bezieht sich auf überwiegend bewegungslose Bilder, in denen eine wiederholte Bewegung innerhalb eines Abschnitts einer Szene innerhalb einer Bildsequenz vorkommt.
- Der Begriff ”automatisiert”, wie hier verwendet, bezieht sich auf eine Sequenz von durch ein Rechensystem unternommenen Aktionen ohne Notwendigkeit für Benutzerinteraktionen mit der Rechenvorrichtung. Insbesondere beinhaltet die Automatisierung eine Herstellung eines Cinemagramms, was eine Bildgebungsvorrichtung umfasst, die Aktionen ohne zusätzliche Benutzerinteraktionen über das Erfassen einer Anfangssequenz von Bildern hinaus und das Anzeigen, dass ein Cinemagramm aus der Sequenz hergestellt werden soll, hinaus durchführt. Bei einer Ausführungsform könnten solche Benutzerinteraktionen ein Wählen auf der Bilderfassungsvorrichtung, wie etwa einer Kamera, eines Knopfs, eines Icons oder dergleichen, das Anzeigen, dass ein Cinemagramm hergestellt werden soll, und das Initiieren einer Bilderfassung umfassen. Bei einer Ausführungsform könnte das Initiieren einer Bilderfassung das Drücken eines Wahlindikators durch den Benutzer auf der Bilderfassungsvorrichtung, die zu einer Bildszene gerichtet ist, umfassen. Die Bilderfassungsvorrichtung kann dann ohne weitere Benutzerinteraktionen die Erfassung der Sequenz von Bildern durchführen und dann das Cinemagramm automatisch herstellen. Somit erfordert ”automatisiert”, wie hier verwendet, beispielsweise keine zusätzlichen Benutzereingaben, etwa zum Identifizieren und/oder anderweitigen Wählen von Gebieten der Bewegung, von Hintergrundgebieten oder dergleichen. Solche Bestimmungen können hier ohne Benutzerinteraktionen durchgeführt werden, wodurch die Herstellung eines Cinemagramms vereinfacht wird.
- Folgendes beschreibt kurz die Ausführungsformen, um ein grundlegendes Verständnis einiger Aspekte zu vermitteln. Diese kurze Beschreibung ist nicht als ein umfassender Überblick gedacht. Sie soll keine wichtigen oder kritischen Elemente identifizieren oder den Schutzbereich umreißen oder anderweitig einengen. Ihr Zweck besteht lediglich darin, einige Konzepte in einer vereinfachten Form vorzulegen als Auftakt zu der ausführlicheren Beschreibung, die später vorgelegt wird.
- Kurz gesagt betreffen Ausführungsformen das automatische Herstellen eines Cinemagramms auf wenigstens einer Bildgebungsvorrichtung, wobei das Cinemagramm ohne zusätzliche Benutzerinteraktion über ein Erfassen einer Anfangssequenz von Bildern und einem Anzeigen hinaus, dass ein Cinemagramm aus einer Sequenz hergestellt werden soll, hergestellt werden kann. Zudem umfassen, wie erwähnt, die vorliegenden Innovationen das automatische Herstellen des Cinemagramms auf der Bilderfassungsvorrichtung wie etwa einer Digitalkamera, einem Handy, einem mit einer Kamera oder ähnlichen Bildsensoren ausgestatteten Laptopcomputer, einer Webcam, einem Tablet mit einer Kamera und so weiter. Der Benutzer wählt eine Szene und nimmt mit der Vorrichtung eine Videosequenz auf und zeigt weiter an, dass aus der Sequenz ein Cinemagramm hergestellt werden soll. Der Rest des Prozesses wird dann von der Bilderfassungsvorrichtung ohne zusätzliche Benutzerinteraktionen automatisch durchgeführt. Bei einigen Ausführungsformen jedoch könnte ein Benutzer während der Erfassungssequenz angeleitet werden, um Verbesserungen vorzuschlagen. Beispielsweise könnte dem Benutzer über Menüoptionen gestattet werden, die Anwendung an die Präferenzen des Benutzers anzupassen.
- Kurz gesagt wird eine geeignete Sequenz von Rahmen durch den Benutzer erfasst. Aus dieser Sequenz wird einer der Rahmen automatisch als ein Ankerrahmen gewählt. Dann wird jeder der anderen Rahmen in der Sequenz automatisch auf dem Ankerrahmen ausgerichtet (ein Prozess, der hier manchmal als ”Registrierung” bezeichnet wird). Eine Detektion und Segmentierung von sich bewegenden Objekten innerhalb der Rahmen bezüglich des Ankerrahmens wird durchgeführt. Die Detektion und Segmentierung der Rahmen umfasst das automatische Wählen eines oder mehrerer Bewegungsbereiche. Die Segmentierung begrenzt die Bewegungsbereiche in den Rahmen und kann als Maske verwendet werden. Bei einigen Ausführungsformen kann eine morphologische Dilatation automatisch auf der Maske durchgeführt werden, um Ränder hinzufügen, die einen glatten progressiven Übergang zwischen einem sich bewegenden Vordergrund und einem umgebenden Hintergrund innerhalb der Szene in den Rahmen gestatten. Die Maske für einen aktuellen Rahmen kann eine Vereinigung der berechneten Maske und eine Maske des Ankerrahmens sein. Grenzen zwischen dem sich nicht bewegenden Hintergrund und dem sich bewegenden Abschnitt des Bildrahmens können geglättet werden, um die Cinemagrammausgabesequenz zu erzeugen. Bei einer Ausführungsform kann die Sequenz auf sich selbst zurückgeschleift bzw. zurückgeloopt werden, um eine sich wiederholende Sequenz selektiver Animation zu erzeugen. Bei einer weiteren Ausführungsform kann eine ”Rückwärts”-Sequenz der Animation zum Ende der Sequenz hinzugefügt werden, um eine Wiederholung der Animation bereitzustellen.
- Durch Bereitstellen eines automatisierten Prozesses zur Erzeugung von Cinemagrammen ohne Benutzereingabe zwischen einem Erfassen einer Sequenz und Anzeigen, dass ein Cinemagramm hergestellt werden soll, braucht der Benutzer die Videosequenz nicht von der Bilderfassungsvorrichtung herunterzuladen. Dies lässt somit zu, dass die Herstellung des Cinemagramms fast unmittelbar nach dem Erfassen der Bildsequenz erfolgt. Dies liefert dann eine sofortigere Befriedigung und sofortigeres Feedback. Durch das Empfangen eines solchen schnellen Feedbacks über die auf der Bilderfassungsvorrichtung sichtbaren Ergebnisse kann der Benutzer dann wählen, die Szene erneut aufzunehmen, einen Abschnitt der Szene, den Aufnahmewinkel oder dergleichen zu modifizieren und schnell neue Ergebnisse zu erhalten.
- Veranschaulichende Arbeitsumgebungen
-
1 zeigt Komponenten einer Umgebung, in der Ausführungsformen praktiziert werden können. Möglicherweise sind nicht alle Komponenten erforderlich, um die Ausführungsformen zu praktizieren, und Variationen hinsichtlich Anordnung und Typ der Komponenten können vorgenommen werden, ohne vom Wesen oder Schutzbereich der Erfindung abzuweichen. Zudem können verschiedene Implementierungen des Systems viel mehr oder weniger Komponenten als jene in1 gezeigten umfassen. Die gezeigten Komponenten genügen jedoch, um eine veranschaulichende Ausführungsform zum Praktizieren der vorliegenden Erfindung offenzulegen. - Wie gezeigt, kann das System
100 von1 eine Kamera oder eine beliebige einer Vielzahl anderer möglicher tragbarer Vorrichtungen darstellen, einschließlich Videokameras, Mobiltelefone, Smartphones, Display-Pagers, Hochfrequenzvorrichtungen (HF), Infrarotvorrichtungen (IR), PDAs (Personal Digital Assistants), handgehaltene Computer, Laptopcomputer, tragbare Computer, Tablet-Computer, integrierte Vorrichtungen, die eine oder mehrere der vorausgegangenen Vorrichtungen kombinieren, und dergleichen, die zum Empfangen und Verarbeiten von Bildern einschließlich Bildsequenzen ausgelegt sein können. Bei einer Ausführungsform kann das System100 nicht gezeigte Komponenten wie etwa eine Linse oder andere optische Komponenten und einen/mehrere Bildsensoren zum Empfangen von Bildern umfassen, die in ein digitales Bild zur Speicherung innerhalb einer oder mehrerer Speichervorrichtungen konvertiert werden können. - Wie gezeigt, kann das System
100 Komponenten auf einem einzelnen integrierten Schaltungschip oder auf mehreren verschiedenen Schaltungschips umfassen. Jedenfalls umfassen in1 gezeigte Komponenten eine Taktschaltung102 zum Liefern von Taktsignalen an die Schaltungschips und andere Komponenten. Wenngleich als eine separate Komponente dargestellt, versteht sich, dass die Taktschaltung102 auch auf einem verbesserten Bildprozessor (EIP)200 oder dergleichen enthalten sein kann. - Ebenfalls gezeigt wird ein flüchtiger Direktzugriffsspeicher-(RAM)Schaltungschip
106 , der an den EIP200 gekoppelt sein kann, um eine temporäre Datenspeicherung bereitzustellen. Bei einigen Ausführungsformen kann der RAM106 konfiguriert sein zum Empfangen und Speichern von Bilddaten wie etwa eines oder mehrere Rahmen von Bilddaten zur Verwendung durch den EIP200 oder Ausgabe von Daten von dem EIP200 sowie zum Speichern von Benutzerpräferenzen, Bildsequenzen, Masken, Segmentierungsdaten, Schwellwerten und dergleichen. Ein separater nichtflüchtiger Festwertspeicher-(ROM)Speicherchip104 ist ebenfalls an den EIP200 gekoppelt und kann zur Speicherung eines Prozessorprogramms, von Kalibrierungsdaten, Nachschlagetabellen (LUIS – Look-up Tables) nichtlinearen Funktionen, einer Vielzahl anderer durch das System100 verwendbarer Daten und dergleichen verwendet werden. Bei einer Ausführungsform kann der ROM104 ein Flash-Speicher sein, der erneut programmiert werden kann oder ein Speicher, der einmal programmiert werden kann, wie etwa ein programmierbarer Festwertspeicher (PROM), ein elektrisch programmierbarer Festwertspeicher (EEPROM) oder eine einer Vielzahl anderer Speichervorrichtungen. - Wenngleich nicht dargestellt, kann ein anderer Typ von Speicher oder physikalischen Speichervorrichtungen innerhalb des Systems
100 enthalten sein, einschließlich beispielsweise Speicherkarten, die einen elektrisch löschbaren und programmierbaren Flash-Halbleiterfestwertspeicher, eine entfernbare drehbare Magnetplattenspeicherung, entfernbare USB-Vorrichtungen (Universal Serial Bus) oder eine beliebige einer Vielzahl anderer Speichervorrichtungen beinhalten können. Bei einer Ausführungsform kann das System100 auch durch eine Eingangs-/Ausgangs-Vorrichtung (E/A-Vorrichtung)108 konfiguriert werden zum Zugreifen auf Speichervorrichtungen, die sich außerhalb des Systems100 befinden können. Somit ist zu verstehen, dass der EIP200 ausgelegt sein kann zum Empfangen eines oder mehrerer Rahmen von Bilddaten, Bearbeiten des oder der empfangenen einen oder mehreren Rahmen von Bilddaten zum Erzeugen eines Cinemagramms, Komprimieren der Cinemagrammdaten und Speichern oder anderweitig Senden eines sich ergebenden komprimierten (codierten) Bitstroms, der die Cinemagrammdaten darstellt, unter Verwendung einer Vielzahl von Speichervorrichtungen und/oder Kommunikationsmechanismen über jene hier beschriebenen hinaus. - Die E/A-Vorrichtung
108 enthält eine Schaltungsanordnung zum Koppeln des Systems100 an eine oder mehrere externe Vorrichtungen, Netzwerke oder dergleichen und ist konstruiert zur Verwendung mit einem oder mehreren Kommunikationsprotokollen und einer oder mehreren Kommunikationstechnologien, einschließlich einem/einer einer Vielzahl von Kommunikationsprotokollen und -technologien, die zum Kommunizieren von Bildern verwendet werden können, einschließlich von Bildern zu und/oder vom System100 . Bei einer Ausführungsform ist die E/A-Vorrichtung108 manchmal als Sendeempfänger, Sendeempfangsvorrichtung oder Netzwerkschnittstellenkarte (NIC – Network Interface Card) bekannt. - Die E/A-Vorrichtung
108 kann auch für verschiedene andere Kommunikationen sorgen, einschließlich zur Verwendung verschiedener Eingabeeinrichtungen wie etwa Tastaturpads, Touchscreens oder dergleichen, sowie Ausgabevorrichtungen einschließlich Bildschirmdisplays, Audioausgaben oder dergleichen. Wenngleich nicht gezeigt, kann das System100 somit auch einen Lautsprecher und/oder ein Mikrofon umfassen, das an die E/A-Vorrichtung108 gekoppelt sein kann, um Kommunikationen zu gestatten. Das System100 kann auch ein Display umfassen, das ein Flüssigkristalldisplay (LCD – Liquid Crystal Display), ein Gasplasma, eine Leuchtdiode (LED) oder irgendeinen anderen Typ von Display umfassen kann, der zum Bereitstellen von Text und/oder eines Bilds zur Anzeige verwendet werden kann. Beispielsweise kann das System100 ein Display umfassen, das zur Anzeige eines sich ergebenden Cinemagramms verwendet werden kann, wodurch der Benutzer ein fast sofortiges Feedback der Ergebnisse der automatischen Operationen erhält. Ferner kann das Display bei einer Ausführungsform auch einen berührungsempfindlichen Bildschirm umfassen, der ausgelegt ist zum Empfangen einer Eingabe von einem Objekt wie etwa einem Griffel oder einem Finger von einer menschlichen Hand. - Außerdem dargestellt sind Bildsensoren & Analog-Digital-Wandler (S & A/D)
110 , die ausgelegt sein können zum Empfangen eines ein Bild darstellenden analogen Signals und zum Konvertieren des empfangenen Signals in digitale Bilddaten, die in einer Ausführungsform eine Sequenz einzelner Blöcke digitaler Bilddaten sein können, die eine Lichtintensität darstellen, die durch verschiedene Fotodetektoren eines Bildsensors und/oder Linsenanordnung (nicht gezeigt) empfangen werden können. Der S & A/D110 kann dann die digitalen Daten zur Verarbeitung an den EIP200 liefern. - Eine Ausführungsform des EIP
200 ist in2 gezeigt. Der EIP200 kann viel mehr oder weniger Komponenten als jene gezeigten umfassen. Die gezeigten Komponenten reichen jedoch aus, um eine veranschaulichende Ausführungsform zum Praktizieren verschiedener Ausführungsformen offenzulegen. - Wie in
2 gezeigt, kann der EIP200 einen Bildprozessor208 umfassen, der eine Allzweck- oder eine spezialisierte Computerverarbeitungseinheit (CPU), programmierbare Hardwareeinheiten oder eine beliebige Kombination darstellen kann, die ausgelegt ist zum Durchführen mehrerer Berechnungen an einem Bild und/oder einer Sequenz von Bildern und zum Steuern verschiedener Operationen des Systems100 in Reaktion auf computerlesbare Anweisungen, die innerhalb eines der Speichervorrichtungen von1 , wie etwa des ROM104 oder dergleichen, gespeichert sein können. Bei einer Ausführungsform können digitale Daten eines oder mehrerer Bildrahmen durch eine Eingangsschnittstellenschaltung202 empfangen und durch eine Verbindung durch eine Speicherverwaltungsvorrichtung206 an andere Komponenten kommuniziert werden. Bei einer Ausführungsform kann ein automatischer Cinemagramm-Generator (ACG)201 wie weiter unten beschrieben verwendet werden, um eine Sequenz von Bildern zu empfangen und automatisch, ohne zusätzliche Benutzereingaben, ein Cinemagramm als Ausgabe zu erzeugen. Bei einigen Ausführungsformen kann die Ausgabe für Speicher- und/oder Übertragungsleistungen komprimiert werden. Die Ausgabe kann dann ein komprimierter Bitstrom sein, der das Cinemagrammbild darstellt, das durch eine Ausgangsschnittstellenschaltung204 zu verschiedenen Speichervorrichtungen oder sogar über ein Netz, einschließlich einem drahtlosen und/oder verdrahteten Netz, zu einer anderen Vorrichtung ausgegeben werden kann. Bei einer Ausführungsform kann das Cinemagrammbild als unkomprimierte Bilddaten in einer Speichervorrichtung gespeichert werden. - Zudem kann der ACG
201 bei einer Ausführungsform in Software implementiert werden, die innerhalb des Bildprozessors208 arbeitet. Bei einer anderen Ausführungsform jedoch kann der ACG201 eine Hardwarekomponente, integrierte Schaltung oder dergleichen darstellen, die ausgelegt sind zum Durchführen von Aktionen, wie hier beschrieben. - Die Schnittstellen
210 können für verschiedene Mechanismen zum Kommunizieren mit dem Bildprozessor208 und/oder einer Speicherverwaltung206 , anderen Komponenten, sorgen, um Modifikationen an verschiedenen Aktionen zu ermöglichen, einen Status einer Aktion oder dergleichen durch eine andere Vorrichtung, einen Endbenutzer oder dergleichen bereitzustellen. - Veranschaulichende Netzvorrichtung
-
3 zeigt eine Ausführungsform einer weiteren Vorrichtung, die mit einer weiteren Ausführungsform des EIP verwendet werden kann. Die Netzvorrichtung300 kann viel mehr oder weniger Komponenten als jene gezeigten enthalten. Die gezeigten Komponenten reichen jedoch aus, um eine veranschaulichende Ausführungsform zum Praktizieren der Erfindung offenzulegen. Die Netzvorrichtung300 kann eine beliebige einer Vielzahl von Rechenvorrichtungen darstellen, unter anderem PCs, Desktoprechner, Multiprozessorsysteme, mikroprozessorbasierte oder programmierbare Elektronik, eine in einem Rack montierte Mehrfachverarbeitungskonfiguration, Netz-PCs, Fernsehgeräte, Kamerasysteme, Servervorrichtungen, Netzwerkgeräte und dergleichen. Bei einer Ausführungsform können, während eine einzelne Netzvorrichtung300 dargestellt ist, bezüglich wenigstens des EIP und/oder des ACG erörterte Operationen auch über mehrere Rechenvorrichtungen verteilt werden, wie sie beispielsweise innerhalb einer Cloudarchitektur, einer Peer-to-Peer-Struktur, einer Clusterarchitektur oder anderen verteilten Architekturen auftreten könnten, wo eine Bildvorrichtung wie etwa eine Kamera mit der Netzvorrichtung300 verbunden ist, um eine Bilderfassung zu ermöglichen. - Die Netzvorrichtung
300 enthält eine zentrale Verarbeitungseinheit312 , einen Videodisplayadapter314 und einen Massenspeicher, alle über einen Bus322 in Kommunikation miteinander. Der Massenspeicher umfasst allgemein den RAM316 , den ROM332 und eine oder mehrere permanente Massenspeichervorrichtungen wie etwa ein Festplattenlaufwerk328 , ein Bandlaufwerk, ein CD-ROM-(Compact Disc Read Only Memory)/DVD-ROM-(Digital Versatile Disc-ROM) Laufwerk326 und/oder ein Diskettenlaufwerk. Der Massenspeicher speichert ein Betriebssystem320 zum Steuern der Operation der Netzvorrichtung300 . Es kann ein beliebiges Allzweckbetriebssystem oder Spezialbetriebssystem verwendet werden. Ein BIOS (Basis Input/Output System)318 ist ebenfalls zum Steuern der Operation der Netzvorrichtung300 auf niedriger Ebene vorgesehen. Wie in3 gezeigt, kann die Netzvorrichtung300 auch mit dem Internet oder mit irgendeinem anderen Kommunikationsnetz über die Netzschnittstelleneinheit310 kommunizieren, die zur Verwendung mit verschiedenen Kommunikationsprotokollen einschließlich dem TCP/IP-Protokoll konstruiert ist. Die Netzschnittstelle310 ist manchmal als ein Sendeempfänger, eine Sendeempfangsvorrichtung oder eine Netzschnittstellenkarte (NIC) bekannt. - Bildsensoren & Analog-Digital-Wandler (A/D) (S & A/D)
360 kann ausgelegt sein zum Empfangen eines ein Bild darstellenden analogen Signals und zum Konvertieren des empfangenen Signals in digitale Bilddaten, die in einer Ausführungsform eine Sequenz einzelner Blöcke digitaler Bilddaten sein können, die eine Lichtintensität darstellen, die durch verschiedene Fotodetektoren eines Bildsensors und/oder Linsenanordnung (nicht gezeigt) empfangen werden kann. Der S & A/D3600 kann dann die digitalen Daten zur Verarbeitung an den Enhanced Image Processor (EIP)358 liefern, wie hier näher beschrieben. - Der Massenspeicher, wie oben beschrieben, veranschaulicht einen anderen Typ von computerlesbarer oder prozessorlesbarer Vorrichtung, nämlich nicht-vorübergehende computerlesbare Speichermedien. Computerlesbare Speichermedien (Vorrichtungen) können flüchtige, nichtflüchtige, nicht-vorübergehende, entfernbare und nichtentfernbare Medien umfassen, die in einem beliebigen Verfahren oder einer beliebigen Technologie zur Speicherung von Informationen implementiert werden, wie etwa computerlesbaren Anweisungen, Datenstrukturen, Programmmodulen oder anderen Daten. Zu Beispielen für nicht-vorübergehende computerlesbare Speichermedien zählen RAM, ROM, EEPROM (Electrically Erasable Programmable Read-Only Memory), Flash-Speicher oder eine andere Speichertechnologie, CD-ROM, DVD (Digital Versatile Disc) oder eine andere optische Speicherung, Magnetkassetten, Magnetband, Magnetplattenspeicherung oder andere magnetische Speichervorrichtungen oder irgendein anderes physisches Medium, das zum Speichern der gewünschten Informationen verwendet werden kann und auf das durch eine Rechenvorrichtung zugegriffen werden kann.
- Wie gezeigt, können Datenspeicher
354 eine Datenbank, Text, Tabellenkalkulation, Ordner, Datei oder dergleichen enthalten, die ausgelegt sein können zum Pflegen und Speichern von Daten, die vom automatischen Cinemagramm-Generator (ACG)301 verwendet werden können, einschließlich Schwellwertdaten, Funktionsverweise, Tabellen, Videobilder, einzelne Bilder, codierte Daten, rekonstruierte Rahmendaten, Referenzrahmendaten, Bewegungsvektoren, Dilatationsdaten, Segmentierungsdaten, Masken, eine oder mehrere Rahmendaten oder dergleichen. Die Datenspeicher354 können ferner Programmcode, Daten, Algorithmen und dergleichen zur Verwendung durch einen Prozessor wie etwa eine zentrale Verarbeitungseinheit (CPU)312 zum Ausführen und Durchführen von Aktionen umfassen. Bei einer Ausführungsform könnten wenigstens einige der Daten und/oder Anweisungen, die in Datenspeichern354 gespeichert sind, auch auf einer anderen Vorrichtung der Netzvorrichtung300 gespeichert sein, einschließlich unter anderem CD-ROM/DVD-ROM326 , Festplattenlaufwerk328 oder einer anderen computerlesbaren Speichervorrichtung, die sich auf der Netzvorrichtung300 befindet oder beispielsweise über die Netzwerkschnittstelleneinheit310 durch die Netzvorrichtung300 zugänglich ist. - Der Massenspeicher speichert auch Programmcode und Daten. Eine oder mehrere Anwendungen
350 werden in den Massespeicher geladen und laufen auf dem Betriebssystem320 . Zu Beispielen von Anwendungsprogrammen können Transcoder, Scheduler, kundenspezifische Benutzerschnittstellenprogramme, Sicherheitsprogramme usw. zählen. Der Speicher kann auch den EIP358 umfassen, der ferner den ACG301 umfassen kann. Es sollte zu erkennen sein, dass, während der EIP358 und der ACG301 innerhalb des RAM316 dargestellt sind, andere Ausführungsformen den EIP358 und/oder den ACG301 innerhalb des ROM332 und/oder innerhalb einer oder mehrerer nicht gezeigter separater Schaltungskarten innerhalb der Netzvorrichtung300 umfassen können. - Der EIP
358 und der ACG301 arbeiten im Wesentlichen ähnlich dem EIP200 beziehungsweise ACG201 der1 –2 , um eine Sequenz von Bildern mit wenigstens einem Abschnitt mit Bewegung und einem anderen Abschnitt im Wesentlichen ohne Bewegung und automatischem Erzeugen eines Cinemagramms zu empfangen, wie unten ausführlicher beschrieben. Der Begriff ”im Wesentlichen ohne Bewegung”, wie hier verwendet, bezieht sich auf einen Abschnitt einer Bildsequenz, wo bestimmt wird, dass eine etwaige Bewegung, die detektiert werden kann, unter einem definierbaren Bewegungsschwellwert liegt. - Es sollte zu erkennen sein, dass der EIP
358 und der ACG301 auf Bilddaten arbeiten können, die von Datenspeichern354 , Festplattenlaufwerken328 , CD-ROM-/DVD-ROM-Laufwerk326 , anderen Speichervorrichtungen oder sogar von einem Netz oder von einer anderen Vorrichtung durch die Netzschnittstelleneinheit310 sowie von verschiedenen Bilderfassungsvorrichtungen wie etwa durch S & A/D360 oder dergleichen erhalten werden. - Verallgemeinerter Betrieb
- Der Betrieb bestimmter Aspekte der Erfindung wird nun bezüglich
4 –12 beschrieben. Die Operationen der unten beschriebenen Prozesse können bei einer Ausführungsform innerhalb des EIP200 und/oder ACG201 von1 –2 und/oder innerhalb des EIP358 und/oder ACG301 von3 durchgeführt werden. - Der Prozess
400 von4 beginnt bei Block402 , Benutzerpräferenzen können empfangen werden. Beispielsweise kann der Benutzer bei einer Ausführungsform angeben, dass aus einer Sequenz von Bildern ein Cinemagramm erzeugt werden soll. Bei einigen Ausführungsformen könnte der Benutzer auch verschiedene Bilderfassungsparameter wählen, einschließlich unter anderem Beleuchtungsparameter, Brennpunktparameter und/oder dergleichen. Bei anderen Ausführungsformen jedoch können ein oder mehrere der Bilderfassungsparameter durch die Bilderfassungsvorrichtung automatisch gewählt werden. - Weiter zu Block
404 können die Benutzerpräferenzen und/oder automatisch gewählte Parameter dann zum Konfigurieren der Bilderfassungsvorrichtung verwendet werden. Vom Block404 geht die Verarbeitung weiter zu Block406 , wo wenigstens ein erstes Bild erfasst wird. Bei einer Ausführungsform kann das erste Bild als ein Ankerrahmenbild bezeichnet werden. Es sei jedoch angemerkt, dass, während andere Bilder in einer Sequenz von Bildern später erfasst werden, ein anderes Bild in der Sequenz als das Ankerrahmenbild gewählt werden kann, wobei das Ankerrahmenbild als ein Referenzbild darstellend angesehen werden könnte, von dem verschiedene Vergleiche durchgeführt werden könnten, wie unten näher beschrieben. - Die Verarbeitung geht dann zum Entscheidungsblock
408 , wo eine Bestimmung erfolgt, ob die Sequenz von Bildern erfasst werden soll. Bei einer Ausführungsform könnte das Erfassen des ersten Bilds auf einer Detektion eines teilweisen Drückens eines Erfassungsknopfs auf der Bilderfassungsvorrichtung basieren. Das Erfassen der Sequenz könnte auf der Detektion eines vollen Drückens des Erfassungsknopfs basieren. Das Erfassen könnte auch auf einer automatischen Detektion einer Bewegung in der Szene durch die Bilderfassungsvorrichtung basieren. Es können jedoch auch andere Kriterien verwendet werden. Jedenfalls kann, falls die Sequenz von Bildern nicht erfasst werden soll, die Verarbeitung zurück zu Block404 gehen. Ansonsten kann die Verarbeitung zu Block410 weitergehen, wo die Sequenz von Bildern erfasst werden kann, bis detektiert wird, dass der Erfassungsknopf oder dergleichen losgelassen ist. Während Block410 wird eine geeignete Sequenz von Bildrahmen unter Verwendung der Bilderfassungsvorrichtung erfasst. Es ist wünschenswert, dass der Benutzer die Bilderfassungsvorrichtung während der Erfassung der Sequenz relativ still hält, um eine globale Bewegung über die erfassten Bilder zu minimieren, und wobei eine gewisse lokale Bewegung innerhalb der Bilder auftritt. Die Bilderfassungsvorrichtung kann dann über eine Zeitperiode eine Anzahl von Bildrahmen erfassen. - Bei einer Ausführungsform kann ein Bild ein Einzelrahmen innerhalb mehrerer Bilder sein. Wie hier verwendet, kann der Begriff Rahmen deshalb auch ein Einzelbild oder ein Einzelbild innerhalb einer Sequenz von Bildern darstellen. Jedenfalls kann ein Rahmen unter Verwendung einer beliebigen einer Vielzahl von Mechanismen codiert werden, einschließlich jenen, die durch das Joint Video Team (JVT) oder die ISO-IEC Moving Picture Expert Group (MPEG) und die ITU-T Video Coding Experts (VCEG) definiert sind. Es versteht sich jedoch, dass darin erörterte Ausführungsformen nicht auf einen bestimmten Typ von Codiermechanismus beschränkt sind und auch beliebige mehrerer anderer Formate, Normen oder dergleichen verwendet werden können.
- Bei einer Ausführungsform kann ein Rahmen aus einer analogen Quelle erhalten werden und kann durch rote (R), grüne (G) und blaue (B) Linien dargestellt werden, die beispielsweise unter Verwendung verschiedener Prozesse zu Farbdifferenzkomponenten konvertiert werden können. Beispielsweise können bei einer Ausführungsform solche Farbdifferenzkomponenten auf der Basis der Rec. 601-(früher als CCIR-601 bekannt)Komponente der Farbfernsehnorm des Radiokommunikationssektors (ITU-R) der International Telecommunication Union (ITU) erhalten werden. Es kann jedoch eine mehrerer anderer Techniken verwendet werden, und Ausführungsformen sind nicht auf eine bestimmte Norm oder ein bestimmtes Format beschränkt. Jedenfalls können die Bilddaten lediglich beispielhaft durch drei Komponenten des Bildsignals definiert werden; nämlich eine Luminanzkomponente (Y) und zwei komplementäre Chrominanzkomponenten (Farbdifferenzen) (V = R – Y) und (U = B – Y). Für diese dreidimensionalen oder höherdimensionalen Bilder und/oder andere Typen von Bilddarstellungen können auch andere Komponenten aufgenommen werden. Bei einigen Ausführungsformen umfassen die Bilddaten ein Farbsignal, das ferner Farbinformationen in der Form von Chrominanzkomponenten Cb und Cr umfasst, wobei Cb und Cr die Blaudifferenzkomponente (U) beziehungsweise die Rotdifferenzkomponente (V) sind.
- Verschiedene Mechanismen können eingesetzt werden, um die RGB-Datensignale in Farbdifferenzkomponenten zu konvertieren, einschließlich beispielsweise unter Einsatz einer Matrixschaltung zum Liefern der Komponentensignale für Luminanz (Y) und Chrominanz (Cb, Cr). Bei einer Ausführungsform können die Luminanzkomponente und die Chrominanzkomponenten als analoge Signale empfangen werden, die an jeweilige Tiefpassfilter (oder Filter gleicher Bandbreite) geliefert und durch Analog-Digital-Wandler geschickt werden, um ein digitales Datenformat zu erzeugen. Bei einer Ausführungsform können die gefilterten und digitalisierten Luminanz- und Chrominanzkomponenten bei einer Ausführungsform an eine Blockformungsschaltung geliefert werden, wo die beschriebenen Bildblöcke gebildet werden können.
- Zudem können bei einigen Ausführungsformen während der oben beschriebenen Erfassungsphase Belichtungszeit-, Brennpunkt- und/oder Weißausgleichseinstellungen auf der Basis der bei Block
404 bestimmten und/oder auf der Basis einer Analyse des ersten, bei Block406 erfassten Bilds blockiert werden. Bei anderen Ausführungsformen können jedoch verschiedene Parameter dynamisch bestimmt werden. Beispielsweise kann ein Intervall zwischen Rahmenerfassungen auf der Basis einer Analyse einer Geschwindigkeit einer Aktion innerhalb der Szene, die erfasst wird, eingestellt werden. Somit könnte bei einer Ausführungsform auf der Basis von zwei oder mehr Bildern die Bilderfassungsvorrichtung automatisch ohne zusätzliche Benutzereingabe über das Anweisen der Vorrichtung, die Sequenz zu erfassen, hinaus, Bewegungsvektoren von sich bewegenden Objekten innerhalb der Szene berechnen und eine Geschwindigkeit der Bewegung gemäß einer Länge der Bewegungsvektoren auswerten. Eine Zeit zwischen dem Erfassen von nachfolgenden Rahmen könnte dann auf der Basis der bestimmten Geschwindigkeit der Bewegung justiert werden. - Der Prozess
400 geht dann zu Block412 , wo bei einer Ausführungsform der Ankerbildrahmen möglicherweise auf der Basis einer Analyse der Sequenz verändert werden könnte. Während bei Block406 der erste Rahmen möglicherweise anfänglich gewählt werden könnte, könnte somit bei einer anderen Ausführungsform ein anderer Rahmen möglicherweise als der Ankerrahmen gewählt werden. Eine derartige Wahl könnte auf einem in einem gegebenen Objekt zwischen Rahmen detektierten Änderungsausmaß basieren, wie unterschiedliche Objekte innerhalb eines gegebenen Rahmens bestimmt werden könnten oder auf der Basis mehrerer anderer Kriterien. Beispielsweise könnte bei einer Ausführungsform der Ankerrahmen als der Rahmen mit einem geringsten Ausmaß an Änderung von einem letzten Rahmen für ein bestimmtes Objekt in der Szene gewählt werden. Bei einer Ausführungsform könnte das bestimmte Objekt dasjenige Objekt mit einem detektierbaren größten Ausmaß an lokaler Bewegung sein. Bei einer weiteren Ausführungsform könnte der Ankerrahmen als der letzte Rahmen in der Sequenz gewählt werden. Natürlich können andere Kriterien verwendet werden, um ohne Benutzereingabe den Ankerrahmen zu wählen. - Zudem werden bei Block
412 alle Rahmen in der Sequenz von Rahmen dann auf den Ankerrahmen ausgerichtet oder registriert. Da Bilder im obigen unter Verwendung einer handgehaltenen Kamera oder einer anderen Bilderfassungsvorrichtung aufgenommen werden können, bewegt sich die Kamera möglicherweise zwischen Rahmen mit der Sequenz geringfügig. Dies kann bewirken, dass sich die Bilder zwischen den Rahmen unangemessen bewegen oder drehen. Um dies zu kompensieren, kann ein Schätzwert, wie ein Bild bewegt werden soll, um auf ein anderes ausgerichtet zu werden (manchmal als Registrierung bezeichnet), bestimmt werden, um Ausrichtungsungenauigkeiten zu kompensieren. Bei Abwesenheit solcher Ausrichtungen können sich ergebende Bilder ein unerwünschtes Jitter aufweisen, das sich zeigen kann. Dies kann durch eine automatische Detektion einer Bildausrichtung durchgeführt werden. - Eine Ausführungsform eines robusten Ansatzes zum Ausrichten der Bilder beinhaltet den Versuch des Schätzens einer parametrischen Funktion T: R2 → R2, was eine Beziehung zwischen Bildkoordinaten in einem Bild und Bildkoordinaten in einem zweiten Bild darstellt. Ein Beispiel beinhaltet die affine Funktion:
x' = a11x + a12y + a13 y' = a21x + a22y + a23 - Um die Transformation zu schätzen, können zuerst Bewegungsvektoren zwischen entsprechenden Pixeln in den beiden Bildern extrahiert werden und ein Schätzwert der globalen Bewegungstransformation kann abgeleitet werden. Dies kann beispielsweise durch Durchführen einer blockbasierten Bewegungssuche von jedem Rahmen zum Ankerrahmen erfolgen.
- Zur Bewegungssuche können viele Techniken verwendet werden. Beispielsweise kann eine Ausführungsform ein Verfahren auf der Basis der mittleren normalisierten Summe der absoluten Differenzen (SAD) verwenden, bei dem eine Bewegung eines Blocks von Pixeln in jedem Rahmen durch den Ort des Blocks im Ankerrahmen bestimmt wird, aus dem die MNSAD minimal ist. Das heißt, Entsprechungen können zwischen den beiden Bildern gefunden werden, die Orte in einem Bild aufweisen, die Orten in einem anderen Bild entsprechen. Ein nichtbegrenzender Ansatz für Bewegungssuchen könnte ein Verfahren ähnlich dem verwenden, das in ”Techniques Of Motion Estimation When Acquiring An Image Of A Scene That May Be Illuminated With A Time Varying Luminance”, Meir Tzur, Victor Pinto und Eran Pinhasov,
US-Patent 7,995097 , erteilt am 9. August 2011, das in seiner Gänze hier aufgenommen ist, beschrieben wird. Es können jedoch auch andere Ansätze verwendet werden. - Beispielsweise kann in einer anderen Ausführungsform die Bewegungssuche unter Verwendung einer mittleren reduzierten SAD (MRSAD) durchgeführt werden, wobei eine Bewegung eines Blocks von Pixeln in einem Rahmen durch den Ort des Blocks in dem anderen Rahmen bestimmt wird, für die die MRSAD als minimal bestimmt ist. Ein Rahmen kann als ”Ziel” – IT und der andere als ”Referenz” – IR bezeichnet werden. Dann gilt wobei: dann gilt: wobei BX, BY die Größe des Blocks definieren und AX und AY den Suchbereich definieren.
- Die Bewegungssuche kann dann unter Verwendung eines beliebigen, auf einer integrierten Schaltung implementierten Spezialhardwarebeschleunigers durchgeführt werden, der das Referenz- und Zielbild akzeptiert und für jeden Block in den Bildern eine Liste von ”Bewegungsvektoren” zurückgibt. Außerdem kann die Bewegungssuche an einer niedrig aufgelösten Kopie der Bilder durchgeführt und dann durch Durchführen einer zusätzlichen Suche in einer höheren Auflösung verfeinert werden. Die Bewegungssuche kann durch Anwenden einer Eckdetektion an den Bildern weiter verbessert werden, da Ecken mit größerer Wahrscheinlichkeit zuverlässige Bewegungsvektoren zurückgeben. Bei einigen Ausführungsformen kann ein Robustheitsmaß extrahiert werden, indem die MRSAD-Karte als eine Funktion eines (u, v)-Bewegungsvektors beobachtet und nachgesehen wird, ob die Minima, die MV(x, y) erzeugten, eindeutig sind.
- Nachdem Bewegungssuchen durchgeführt sind, wird eine Menge von Entsprechungen in jedem Bildpaar erhalten als
(xi, yi) ↔ (xi', yi') = (xi + MVx(xi, yi), yi + MVy(xi, yi)) - Beginnend beim zweiten Bild werden die innerhalb des Bereichs des sich bewegenden Objekts gefundenen Bewegungsvektoren (während der Bearbeitung eines vorausgegangenen Bilds in der Sequenz extrahiert) aus einer Menge von Entsprechungen ausgeschlossen.
- Bei einer Ausführungsform kann ein RANSAC-Algorithmus (Random Sample Consensus) für die Schätzung der Transformation aus den verbleibenden Übereinstimmungen verwendet werden. Ein Prozess kann die Transformationsschätzwerte iterativ aufbauen und Ausreißer zurückweisen. Die finale Transformation kann berechnet werden, indem die Gruppe aller nichtabweichenden Werte (die als ”1” bezeichnet sein können) genommen wird und eine Transformation durch Gleichungen der kleinsten Quadrate (lineare Regression) geschätzt wird: wobei die Summierung über ∀i ∊ I und N = |I| erfolgt. Alle Summierungen können in einer Festkommaarithmetik durchgeführt werden, während die Matrixinversion unter Verwendung eines Fließkommas durchgeführt werden kann – zur Verbesserung der Geschwindigkeit. Es wird angemerkt, dass die affine Transformation zwar als ein Beispiel angegeben ist, auch andere parametrische Transformationen betrachtet werden können und somit Ausführungsformen nicht auf diesen Ansatz beschränkt sind.
- Nachdem die Transformation gefunden ist, wird der Rahmen entsprechend verzogen, so dass er auf den Ankerrahmen ausgerichtet ist. Bei einigen Ausführungsformen kann auf der Basis der obigen Transformation ein hardwarebasierter Beziehungsmechanismus verwendet werden, um den Rahmen auf die Koordinaten des Ankerrahmens zu transformieren. Dies kann über jeden der Rahmen in der Sequenz von Rahmen durchgeführt werden.
- Der Prozess
400 geht dann weiter zu Block414 , wo, nachdem die Rahmen auf den Ankerrahmen ausgerichtet sind, eine Detektion und Segmentierung von sich bewegenden Objekten innerhalb der Rahmen bezüglich des Ankerrahmens durchgeführt werden. Ein Ansatz zur Durchführung der Segmentierung des sich bewegenden Objekts kann als zwei Stufen aufweisend beschrieben werden. - In einer ersten Stufe kann eine anfängliche Detektion von Bewegungsbereichen durchgeführt werden, indem eine Schwellwertbildung an einem Bild von normalisierten Abständen (wie oben beschrieben) durchgeführt wird und dann die Segmentierung unter Verwendung aktiver Konturen verfeinert wird. Bei einer Ausführungsform können die Berechnungen an herunterskalierten Bildern durchgeführt werden. Dies ist auf das Einsparen von Rechenleistung sowie das Glätten des Bilds ausgerichtet, was das Vermeiden von Rauschstörungen unterstützen kann.
- Anfängliche Detektion der Bewegung
- Die anfängliche Detektion der Bewegung kann durchgeführt werden durch Berechnen eines normalisierten Abstands zwischen jedem Pixel eines aktuellen Rahmens in der Sequenz und dem Ankerrahmen im YUV-Raum, wobei beispielsweise die folgende Formel verwendet wird: wobei w1 und w2 Gewichte sind. Es kann wünschenswert sein, dass diese Gewichte kleiner oder gleich Ziffer 1 sind, so dass die Berechnung der Differenz zwischen den Bildern größtenteils auf der Luminanz basiert. Eine Normalisierung kann verwendet werden, um ein unterschiedliches Verhalten verschiedener Graupegel zu vermeiden.
- Pixel mit normalisierten Abstandswerten, die einen vorbestimmten Schwellwert übersteigen, werden markiert. Diese Pixel können eine Grobabschätzung des Bewährungsbereichs darstellen. Der Bewegungsbereich enthält sowohl das sich bewegende Objekt als auch den Bereich, den er geräumt hat. Indem der Bewegungsbereich so definiert wird, wenn das sich bewegende Objekt von jedem Rahmen auf den Ankerrahmen umgesetzt wird, bedeckt der Fleck den Ort des sich bewegenden Objekts im Ankerrahmen; ansonsten kann das Objekt zweimal erscheinen. Diese Grobabschätzung dient dann als eine anfängliche Schätzung für eine verfeinertere Segmentierung.
- In diesem Stadium können falsche Bewegungsbereiche detektiert und gelöscht werden, die aufgrund von Rauschen oder einer geringfügigen Fehlausrichtung detektiert wurden. Dies kann sich als sehr kleine Blobs zeigen, die beispielsweise durch morphologisches Öffnen entfernt werden können. Bewegungsbereiche, die nahe beieinanderliegen, können dann miteinander verbunden werden.
- Das Endergebnis dieser Stufe ist eine Bewegungsmaske wie etwa eine Funktion M(x, y), die die Werte von 0 oder 1 annimmt, wobei M(x, y) = 1 einen Bewegungsbereich und ein Wert von 0 einen Nicht-Bewegungsbereich anzeigt.
- Wählen eines oder mehrerer Bewegungsbereiche
- Einer oder mehrere der Bewegungsbereiche können dann gewählt werden, wobei der Bewegungsbereich ein Gebiet in dem Bild ist, für die die Bewegung detektiert wird. Bei einer Ausführungsform, wenn der ausgewertete Rahmen ein erster Rahmen (z. B. der Ankerrahmen) ist, könnte eine Entscheidung auf vordefinierten Präferenzen basieren, die bei Block
402 durch den Benutzer eingestellt werden. Diese Präferenzen können den Bereich umfassen, in dem erwartet wird, dass die Bewegung erscheint (beispielsweise ein Viertel des Rahmens), eine Größe der erwarteten Bewegung (beispielsweise groß oder klein), eine Nähe zu der Brennebene oder ein beliebiges einer Vielzahl anderer Kriterien. Bei anderen Ausführungsformen jedoch, wo eine Vollautomatisierung gewünscht ist, so dass der Prozess Bestimmungen in Abwesenheit von vom Benutzer eingestellten Präferenzen durchführt, werden Standardwerte angewendet. Beispielsweise könnte ein Bereich in der Mitte des Rahmens mit einer gewissen Größe gewählt werden. Bei einer anderen Ausführungsform könnte der Bereich auf der Basis eines Brenngebiets gewählt werden, das durch die Bilderfassungseinrichtung gewählt wird. Bei einer Ausführungsform könnte ein Standardgebiet gewählt werden, wie etwa ein Drittel der Breite und/oder Höhe des Rahmens. Jedenfalls können die Präferenzen als M0 ausgedrückt werden, während die nachfolgenden Bewegungsbereiche – gemäß der jeweiligen Rahmennummer – als M1, M2, ... ausgedrückt werden. - Bei einigen Ausführungsformen wird für jeden Rahmen der gewählte Bewegungsbereich derjenige Bereich mit einer maximalen Überlappung mit der Maske des vorausgegangenen Rahmens sein. Dies stellt eine Kontinuität der Maske sicher.
- Das heißt:
Für jeden Rahmen i wähle bei gegebenem gewählten Bewegungsbereich des vorausgegangenen Rahmens Mi-1 und dem detektierten Bewegungsbereich M des aktuellen Rahmens Mi als die einzelne verbundene Komponente in M, die die größte Überlappung (Anzahl von üblicherweise markierten Pixeln) zu dem durch Mi-1 markierten Gebiet aufweist. - Verfeinerte Segmentierung
- Für die in der anfänglichen Stufe bereitgestellte Segmentierung kann in einigen Fällen bestimmt werden, dass sie nicht genau genug ist. Ein möglicher Grund dafür kann darin liegen, dass die Segmentierung allein auf dem Vergleichen der Pixelwerte des sich bewegenden Objekts mit dem des Hintergrunds basiert, jedoch können die Pixelwerte von Hintergrund- und Vordergrundobjekten manchmal sehr ähnlich sein.
- Deshalb kann es in dieser Stufe wünschenswert sein, die Segmentierung unter Verwendung eines Prozesses zu verfeinern, der auf ein Verbessern der Ausrichtung der Grenze des Entscheidungsgebiets auf die Grenzen des oder der relevanten Objekte abzielt. In einigen Situationen kann eine Segmentierung ohne irgendwelche Anhaltspunkte ein schwieriges und üblicherweise schlecht gestelltes Problem sein; wenn die anfängliche Grobsegmentierung bereits erhalten ist, kann das Verfeinern der Segmentierung ein verbessertes Ergebnis liefern.
- Es gibt mehrere Verfahren für die Bildsegmentierungsverfeinerung, und beliebige dieser Verfahren können verwendet werden. Beispielsweise wird ein Verfahren, das verwendet werden kann, in "Fast approximate curve evolution" von James Malcolm, Yogesh Rathi, Anthony Yezzi und Allen Tannenbaum, Real-Time Image Processing 2008, Nasser Kehtarnavaz; Matthias F. Carlsohn, Editors, Proc. SPIE Vol. 6811, 68110L (2008) beschrieben, was hier durch Bezugnahme aufgenommen ist. Es können jedoch auch andere Verfahren verwendet werden, und als solches sind die hier beschriebenen vorliegenden Innovationen nicht auf ein bestimmtes Verfahren für die Segmentierungsverfeinerung beschränkt.
- In diesem Verfahren werden die segmentierten Gebietsgrenzpixel markiert und als eine ”Kurve” bezeichnet. Die Pixel auf der Kurve sind mit '0' bezeichnet, während die Pixel innerhalb des Gebiets mit '–1' und die Pixel außerhalb des Gebiets mit '+1' bezeichnet sind. Natürlich können andere Werte gewählt werden. Der mittlere Pixelwert u aller Pixel innerhalb des Gebiets wird berechnet und auch der mittlere Pixelwert v aller Pixel außerhalb des segmentierten Gebiets.
- Eine auf ein Grenzpixel wirkende Kraft kann dann definiert werden als:
f = ||I(x) – u||2 – ||I(x) – v||2. - Es wird angezeigt, dass die Kraft stark positiv ist, falls der Pixelwert (um einen Schwellwert) sehr nahe an dem Hintergrundmittelwert v liegt, und stark negativ, falls er (um einen Schwellwert) sehr nahe am Objektmittelwert u liegt.
- Der Algorithmus geht über jedes Grenzpixel und prüft die Kraft darauf. Falls die Kraft von null verschieden ist, wird das Pixel von der Grenze je nachdem, ob die Kraft positiv oder negativ ist, jeweils zur Außenseite oder Innenseite der Kurve bewegt; bei einer Ausführungsform wird die Kurve so gewählt, dass sie entlang der Nachbarn des Pixels läuft, das relativ zu dem gewählten Pixel eine Kraft mit entgegengesetztem Vorzeichen aufweist.
- Dieser Algorithmus kann mehrmals wiederholt werden (beispielsweise einige wenige dutzende Iterationen), bis bestimmt wird, dass die Kurve sich nicht länger entwickelt, beispielsweise auf der Basis einer Bestimmung, dass die Größenänderung des segmentierten Gebiets kleiner als ein Schwellwert ist.
- Der Prozess
400 von4 bewegt sich als nächstes zu Block416 , wo die Segmentierung von der vorausgegangenen Stufe den bestimmten faszinierenden Bewegungsbereich in dem Rahmen begrenzt. Bei Block416 kann dieses segmentierte Gebiet dann als eine Maske verwendet werden. Bei einer Ausführungsform kann eine morphologische Dilatation (beispielsweise unter Verwendung eines 7 × 7-Strukturierungselements) auf der Maske durchgeführt werden, um Ränder hinzuzufügen, die auf das Bereitstellen eines glatten progressiven Übergangs zwischen dem sich bewegenden Vordergrund und einem umgebenden Hintergrund abzielen. - Als nächstes weiter zu Block
418 kann die Maske des aktuellen Rahmens als eine Vereinigung der oben berechneten Maske und der Maske des ersten Rahmens (z. B. des Ankerrahmens) definiert werden. Dies soll Fälle behandeln, wo der vakante Ort, den das Objekt zurückgelassen hat, und der aktuelle Ort des Objekts losgelöst sind und somit als separate Blobs behandelt werden können. Bei einer Ausführungsform könnte dann möglicherweise nur einer gewählt werden. In diesen Situationen zielt das Hinzufügen der Maske des ersten Rahmens (z. B. des Ankerrahmens) darauf ab, sicherzustellen, dass, wenn der Hintergrund des aktuellen Rahmens mit entsprechenden Pixeln von dem ersten Rahmen (z. B. dem Ankerrahmen) ersetzt wird, das Objekt an seinem anfänglichen Ort nicht wieder erscheint. - Der Prozess
400 geht dann zu Block420 , wo Pixel außerhalb der Maske als der sich nicht bewegende Hintergrund bezeichnet werden. Diese Pixel können durch entsprechende Pixel von dem Ankerbildrahmen ersetzt werden. Die Grenze zwischen dem sich bewegenden Objekt und dem Hintergrund kann durch Gewichte weiter geglättet werden. Die sich ergebende Ausgabe ist dann die animierte Sequenz, Cinemagramm. Bei einer Ausführungsform kann die Sequenz verknüpft werden, wiederholt durch die Sequenz von Rahmen zu Schleifen, wobei eine beliebige mehrerer Schleifenbildungstechniken verwendet wird, um eine wiederholte nahtlose Ausführung der Sequenz zu ermöglichen. - Es wird angemerkt, dass in Prozess
400 in Situationen, wo bestimmt wird, dass die lokale Bewegung innerhalb eines kleinen Bereichs des Rahmens enthalten ist und sich beispielsweise nicht über den Rahmen verteilt, es angemessen sein könnte, optional eine Glätte zwischen dem Beginn und dem Ende der Sequenzschleife zu erhalten. Bei einer Ausführungsform kann dies durchgeführt werden, indem das gleiche Video, das rückwärts spielt (oder von der ersten Sequenz umgekehrt) am Ende der ersten Sequenz hinzugefügt wird. - Die Verarbeitung kann dann zu Block
422 gehen, wo das ausgegebene Cinemagramm als ein kurzes Video oder möglicherweise ein animiertes GIF gespeichert werden kann, das wiederholt abgespielt werden kann. Im erzeugten Cinemagramm kann ein größter Teil der beobachteten Szene als überwiegend unbewegt mit wenig bis keiner Bewegung angesehen werden, was als ein konstantes Bild erscheint; während zu sehen ist, dass ein anderer kleinerer Abschnitt der Szene – das sich bewegende Objekt – eine kleine Bewegung wiederholt. Bei einer Ausführungsform kann die Ausgabesequenz auch unter Einsatz mehrerer Mechanismen komprimiert werden, die auf eine effiziente Speicherung und/oder Übertragung der Ausgabesequenz abzielen. Der Prozess400 kann dann zu einem Aufrufprozess oder dergleichen zurückgehen. - Außerdem wird angemerkt, dass die Verwendung der Bilderfassungsvorrichtung es dem Benutzer auch gestattet, das Cinemagramm sofort abzuspielen und die Sequenz innerhalb eines Suchers oder einer anderen Displaybildschirmkomponente auf der Eingangserfassungsvorrichtung zu betrachten. Indem ein derartiges sofortiges Feedback gestattet wird, erhält der Benutzer dann die Möglichkeit, die Sequenz wiederaufzunehmen sowie die Szene, einen Winkel der Aufnahme oder andere Parameter zu modifizieren, ohne warten zu müssen, bis er die Sequenz auf eine andere Vorrichtung herunterladen kann.
-
5 veranschaulicht einen Logikflussprozess, der allgemein eine Ausführungsform eines Prozesses zeigt, mit dem ein einzelner Ausgangsrahmen innerhalb eines Cinemagramms errichtet werden kann. Der Prozess500 von5 kann viel mehr oder weniger Elemente als jene gezeigten umfassen. Die gezeigten Elemente reichen jedoch aus, um eine veranschaulichende Ausführungsform zum Praktizieren der vorliegenden Innovationen offenzulegen. Bei einer Ausführungsform soll der Prozess500 ein dargestelltes rahmenweises nicht beschränkendes, nicht erschöpfendes Beispiel entsprechend den Blöcken von4 bereitstellen. - Somit veranschaulicht
5 , wie gezeigt, ein Beispiel eines Anfangsbildrahmens502 mit einem Objekt503 , das innerhalb der Sequenz von Rahmen Bewegung aufweist. Der Rahmen501 kann als der Ankerrahmen definiert werden. Wie oben in Verbindung mit Prozess400 von4 beschrieben, werden die Rahmen registriert, wodurch ein oder mehrere sich ergebende ausgerichtete Bildrahmen bereitgestellt werden, wie in5 als ausgerichteter Bildrahmen504 dargestellt. Es sei angemerkt, dass der Prozess500 zwar einen Fluss eines einzelnen Rahmens veranschaulicht, oder Aktionen über die Sequenz von Rahmen ausgeführt werden. Somit kann der ausgerichtete Bildrahmen504 die aus der Sequenz von erfassten Bildern erhaltenen mehreren ausgerichteten Bildrahmen umfassen. - Prozess
500 fließt zum Durchführen einer anfänglichen Bewegungsdetektion und Erzeugen einer als Maske507 im Rahmen506 gezeigten Anfangsmaske. Unter Fortsetzung des Flusses liefert die Segmentierung des gewählten Blobs, innerhalb der Maske507 dargestellt, eine verfeinerte Maske509 im Rahmen508 . Diese verfeinerte Maske509 kann dann zum Zusammensetzen mit dem vom Ankerrahmen501 erhaltenen Hintergrund verwendet werden, um die sich ergebende Sequenz von Rahmen510 herzustellen, die das automatisch erzeugte Cinemagramm darstellt. -
6 zeigt einen Logikfluss, der allgemein eine Ausführungsform eines Prozessbeispiels des Vereinigens von Segmentierungen zum Herstellen eines Cinemagramms zeigt. Der Prozess600 von6 kann viel mehr oder weniger Elemente als jene gezeigten umfassen. Die gezeigten Elemente reichen jedoch aus, um eine veranschaulichende Ausführungsform zum Praktizieren der vorliegenden Innovationen zu offenbaren. Bei einer Ausführungsform soll der Prozess600 ein dargestelltes rahmenweises nicht beschränkendes, nicht erschöpfendes Beispiel des Vereinigens von Segmentierungen in einer Situation von zerlegten Bewegungsgebieten bereitstellen. Wie im Prozess600 dargestellt, ist zu sehen, dass das Objekt602 des Ankerbilds601 sich signifikant bewegt hat, wie durch das bewegte Objekt603 in einem aktuellen ausgerichteten Bildrahmen604 dargestellt. Diese Bewegung kann zu zwei zerlegten Bewegungsgebieten, in den Bewegungsgebietsbildern606 gezeigt, führen. Bei einer Ausführungsform könnte eines dieser Gebiete auf der Basis eines beliebigen mehrerer Kriterien automatisch gewählt werden, einschließlich einem Ort des Gebiets innerhalb der Szene oder dergleichen. Bei einigen Ausführungsformen könnte die automatische Wahl auf dem Wählen des Gebiets aus dem Ankerbild601 basieren (Objekt602 ). Der Rahmen608 veranschaulicht eine derartige sich ergebende Wahl. Dann zielt das Vereinen von Segmentierungen zwischen dem ersten und aktuellen Bildrahmen, wie im Bildrahmen610 dargestellt, auf das Lösen dieses Problems von zerlegten Gebieten ab. Es sei jedoch angemerkt, dass eine Bildsequenz mehrere Bewegungsgebiete umfassen kann und als solche unter Verwendung des obigen Ansatzes als separate Objekte behandelt werden kann und nicht als zerlegte Gebiete betrachtet wird, die zu kombinieren oder anderweitig zu lösen sind. - Als eine Anmerkung zielt, wie oben beschrieben, die Segmentierung auf das ordnungsgemäße Identifizieren einer Bewegung innerhalb einer Bildsequenz ab, während die Aufnahme von zu vielen sich bewegenden Objekten oder nur Teilen eines sich bewegenden Objekts minimiert wird. Während mehrere sich bewegende Objekte gewählt werden können, kann somit bei einer Ausführungsform eine Schwellwertanzahl auf der Basis einer Größe, der Gebiete, eines Zählwerts der detektierten sich bewegenden Objekte oder auf der Basis mehrerer anderer Kriterien gewählt werden.
- Es versteht sich, dass jede Komponente der Darstellungen und Kombinationen von Komponenten in diesen Darstellungen durch Computerprogrammanweisungen implementiert werden können. Diese Programmanweisungen können an einen Prozessor geliefert werden, um eine Maschine herzustellen, so dass die Anweisungen, die auf dem Prozessor laufen, Mittel erzeugen zum Implementieren der in der oder den Flusskomponenten spezifizierten Aktionen. Die Computerprogrammanweisungen können von einem Prozessor ausgeführt werden, um zu bewirken, dass vom Prozessor eine Reihe von Arbeitsschritten ausgeführt werden, um einen computerimplementierten Prozess herzustellen, so dass die Anweisungen, die auf dem Prozessor laufen, Schritte zum Implementieren der in der oder den Flusskomponenten spezifizierten Aktionen bereitstellen. Die Computerprogrammanweisungen können auch bewirken, dass wenigstens einige der in den Komponenten der Flüsse gezeigten Arbeitsschritte parallel ausgeführt werden. Zudem können einige der Schritte auch über mehr als einen Prozessor ausgeführt werden, wie dies in einem Mehrprozessorcomputersystem geschehen könnte. Außerdem können auch eine oder mehrere Komponenten oder Kombinationen von Komponenten in den Flussdarstellungen gleichzeitig mit anderen Komponenten oder Kombinationen von Komponenten oder sogar in einer anderen Sequenz als dargestellt ausgeführt werden.
- Dementsprechend unterstützen Komponenten der Flussdarstellungen Kombinationen von Mitteln zum Durchführen der spezifizierten Aktionen, Kombinationen von Schritten zum Durchführen der spezifizierten Aktionen und Programmanweisungsmittel zum Durchführen der spezifizierten Aktionen. Es versteht sich auch, dass jede Komponente der Flussdarstellungen und Kombinationen von Komponenten in den Flussdarstellungen durch spezielle hardwarebasierte Systeme implementiert werden können, die die spezifizierten Aktionen durchführen, oder Kombinationen von speziellen Hardware- und Computeranweisungen.
- ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Patentliteratur
-
- US 7995097 [0054]
- Zitierte Nicht-Patentliteratur
-
- ”Fast approximate curve evolution” von James Malcolm, Yogesh Rathi, Anthony Yezzi und Allen Tannenbaum, Real-Time Image Processing 2008, Nasser Kehtarnavaz [0072]
- Matthias F. Carlsohn, Editors, Proc. SPIE Vol. 6811, 68110L (2008) [0072]
Claims (20)
- Prozessorbasiertes Verfahren, das innerhalb einer Bilderfassungsvorrichtung arbeitet, umfassend: Verwenden einer oder mehrerer Bildsensorvorrichtungen zum Erfassen einer Sequenz von Bildrahmen, wobei die Sequenz wenigstens etwas Bewegungs- und etwas Nicht-Bewegungsinhalt innerhalb einer erfassten Szene aufweist; und automatisches Durchführen von Aktionen auf der erfassten Sequenz ohne Benutzereingabe, wobei die Aktionen umfassen: Wählen eines Ankerrahmens aus innerhalb der Sequenz von Bildrahmen; Registrieren jedes der anderen Bildrahmen in der Sequenz auf dem Ankerrahmen; Detektieren einer lokalen Bewegung zwischen den registrierten Bildrahmen und dem Ankerrahmen; Segmentieren des Gebiets mit detektierter lokaler Bewegung in jedem Bildrahmen; und Ersetzen von Pixeln in jedem Bildrahmen, ausschließlich der Pixel, die mit dem Gebiet mit detektierter lokaler Bewegung assoziiert sind, durch entsprechende Pixel aus dem Ankerrahmen, um ein Cinemagramm zu erzeugen.
- Verfahren nach Anspruch 1, wobei das Erfassen der Sequenz von Bildrahmen ferner das automatische Wählen eines Brennparameters und/oder einer Erfassungsgeschwindigkeit durch die Bilderfassungsvorrichtung umfasst.
- Verfahren nach Anspruch 1, wobei das Wählen des Ankerrahmens das Wählen des Ankerrahmens als einen ersten Rahmen in der Sequenz der Bilder oder einen letzten Rahmen umfasst.
- Verfahren nach Anspruch 1, wobei das Registrieren jedes der anderen Bildrahmen auf dem Ankerrahmen ferner das Verwenden einer mittleren normalisierten Summe absoluter Differenzen umfasst zum Durchführen einer Bewegungssuche und Verwenden eines Ergebnisses zum Erzeugen einer Transformation, die auf jeden der anderen Bildrahmen angewendet wird.
- Verfahren nach Anspruch 1, wobei das Segmentieren der detektierten lokalen Bewegung ferner das Detektieren von Bewegungsbereichen innerhalb der Sequenz durch Schwellwertbildung an einem Bild von normalisierten Abständen und dann Verfeinern der Segmentierung unter Verwendung einer aktiven Konturierung umfasst.
- Verfahren nach Anspruch 1, wobei das Detektieren einer lokalen Bewegung ferner das Wählen eines Bewegungsbereichs auf der Basis einer größten Überlappung mit einer Maske umfasst, die anhand eines vorausgegangenen Bildrahmens in der Sequenz von Bildrahmen bestimmt ist.
- Verfahren nach Anspruch 1, wobei das Segmentieren des Gebiets mit detektierter lokaler Bewegung ferner das Untersuchen jedes als ein Grenzpixel identifizierten Pixels zum Gebiet mit lokaler Bewegung umfasst, um das Pixel der Außenseite des Gebiets mit lokaler Bewegung oder der Innenseite des Gebiets mit lokaler Bewegung zuzuordnen, auf der Basis eines Werts einer auf das Grenzpixel wirkenden berechneten Kraft.
- Bildsystem, umfassend: eine Bildsensorvorrichtung, die zum Erfassen einer Sequenz von Bildrahmen verwendet wird, und einen oder mehrere Prozessoren, die Aktionen auf der erfassten Sequenz ohne Benutzereingabe automatisch durchführen, wobei die Aktionen umfassen: Wählen eines Ankerrahmens aus innerhalb der Sequenz von Bildrahmen; Registrieren jedes der anderen Bildrahmen in der Sequenz auf dem Ankerrahmen; Detektieren einer lokalen Bewegung zwischen den registrierten Bildrahmen und dem Ankerrahmen; Segmentieren des Gebiets mit detektierter lokaler Bewegung in jedem Bildrahmen; und Ersetzen von Pixeln in jedem Bildrahmen, ausschließlich der Pixel, die mit dem Gebiet mit detektierter lokaler Bewegung assoziiert sind, durch entsprechende Pixel aus dem Ankerrahmen, um ein Cinemagramm zu erzeugen.
- Bildsystem nach Anspruch 8, wobei das Erfassen der Sequenz von Bildrahmen ferner das automatische Wählen eines Brennparameters und/oder einer Erfassungsgeschwindigkeit durch die Bilderfassungsvorrichtung umfasst.
- Bildsystem nach Anspruch 8, wobei die Aktionen ferner das Hinzufügen einer umgekehrten Sequenz von Rahmen in der Cinemagrammsequenz zu einem Ende des Cinemagramms umfasst.
- Bildsystem nach Anspruch 8, wobei das Registrieren jedes der anderen Bildrahmen auf dem Ankerrahmen ferner das Verwenden einer mittleren normalisierten Summe absoluter Differenzen umfasst zum Durchführen einer Bewegungssuche und Verwenden eines Ergebnisses zum Erzeugen einer Transformation, die auf jeden der anderen Bildrahmen angewendet wird.
- Bildsystem nach Anspruch 8, wobei das Segmentieren der detektierten lokalen Bewegung ferner das Detektieren von Bewegungsbereichen innerhalb der Sequenz durch Schwellwertbildung an einem Bild von normalisierten Abständen und dann Verfeinern der Segmentierung unter Verwendung einer aktiven Konturierung umfasst.
- Bildsystem nach Anspruch 8, wobei das Detektieren einer lokalen Bewegung ferner das Wählen eines Bewegungsbereichs auf der Basis einer größten Überlappung mit einer Maske umfasst, die anhand eines vorausgegangenen Bildrahmens in der Sequenz von Bildrahmen bestimmt ist.
- Bildsystem nach Anspruch 8, wobei das Segmentieren des Gebiets mit detektierter lokaler Bewegung ferner das Untersuchen jedes als ein Grenzpixel identifizierten Pixels zum Gebiet mit lokaler Bewegung umfasst, um das Pixel der Außenseite des Gebiets mit lokaler Bewegung oder der Innenseite des Gebiets mit lokaler Bewegung zuzuordnen, auf der Basis eines Werts einer auf das Grenzpixel arbeitenden berechneten Kraft.
- Vorrichtung zum Verwalten von Bilddaten, umfassend: eine oder mehrere physische Komponenten zum Erfassen einer Sequenz von Bildern; und eine oder mehrere Schaltungseinheiten, die Aktionen auf der erfassten Sequenz ohne Benutzereingabe automatisch durchführen, wobei die Aktionen umfassen: Wählen eines Ankerrahmens aus innerhalb der Sequenz von Bildrahmen; Registrieren jedes der anderen Bildrahmen in der Sequenz auf dem Ankerrahmen; Detektieren einer lokalen Bewegung zwischen den registrierten Bildrahmen und dem Ankerrahmen; Segmentieren des Gebiets mit detektierter lokaler Bewegung in jedem Bildrahmen; und Ersetzen von Pixeln in jedem Bildrahmen, ausschließlich der Pixel, die mit dem Gebiet mit detektierter lokaler Bewegung assoziiert sind, durch entsprechende Pixel aus dem Ankerrahmen, um ein Cinemagramm zu erzeugen.
- Vorrichtung nach Anspruch 15, wobei das Erfassen der Sequenz von Bildrahmen ferner das automatische Wählen eines Brennparameters und/oder einer Erfassungsgeschwindigkeit durch die Bilderfassungsvorrichtung umfasst.
- Vorrichtung nach Anspruch 15, wobei das Registrieren jedes der anderen Bildrahmen auf dem Ankerrahmen ferner das Verwenden einer mittleren normalisierten Summe absoluter Differenzen umfasst zum Durchführen einer Bewegungssuche und Verwenden eines Ergebnisses zum Erzeugen einer Transformation, die auf jeden der anderen Bildrahmen angewendet wird.
- Vorrichtung nach Anspruch 15, wobei das Segmentieren der detektierten lokalen Bewegung ferner das Detektieren von Bewegungsbereichen innerhalb der Sequenz durch Schwellwertbildung an einem Bild von normalisierten Abständen und dann Verfeinern der Segmentierung unter Verwendung einer aktiven Konturierung umfasst.
- Vorrichtung nach Anspruch 15, wobei das Detektieren einer lokalen Bewegung ferner das Wählen eines Bewegungsbereichs auf der Basis einer größten Überlappung mit einer Maske umfasst, die anhand eines vorausgegangenen Bildrahmens in der Sequenz von Bildrahmen bestimmt ist.
- Vorrichtung nach Anspruch 15, wobei die Aktionen ferner das Hinzufügen einer umgekehrten Sequenz von Rahmen in der Cinemagrammsequenz zu einem Ende des Cinemagramms umfassen.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/656,442 | 2012-10-19 | ||
US13/656,442 US9082198B2 (en) | 2012-10-19 | 2012-10-19 | Method for creating automatic cinemagraphs on an imagine device |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102013017122A1 true DE102013017122A1 (de) | 2014-04-24 |
DE102013017122B4 DE102013017122B4 (de) | 2024-03-07 |
Family
ID=49397218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102013017122.9A Active DE102013017122B4 (de) | 2012-10-19 | 2013-10-15 | Verfahren zum Herstellen automatischer Cinemagramme auf einer Bildgebungsvorrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US9082198B2 (de) |
JP (1) | JP6305719B2 (de) |
DE (1) | DE102013017122B4 (de) |
GB (1) | GB2507172B (de) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013113985A1 (en) * | 2012-01-31 | 2013-08-08 | Nokia Corporation | Method, apparatus and computer program product for generation of motion images |
CN104125392B (zh) * | 2013-04-24 | 2017-10-10 | 株式会社摩如富 | 图像合成装置及图像合成方法 |
KR102090105B1 (ko) * | 2013-07-16 | 2020-03-17 | 삼성전자 주식회사 | 카메라를 구비하는 장치의 이미지 처리장치 및 방법 |
KR102127351B1 (ko) * | 2013-07-23 | 2020-06-26 | 삼성전자주식회사 | 사용자 단말 장치 및 그 제어 방법 |
GB2520319A (en) * | 2013-11-18 | 2015-05-20 | Nokia Corp | Method, apparatus and computer program product for capturing images |
WO2015100518A1 (en) | 2013-12-31 | 2015-07-09 | Google Inc. | Systems and methods for converting static image online content to dynamic online content |
JP6516478B2 (ja) * | 2015-01-16 | 2019-05-22 | キヤノン株式会社 | 画像処理装置及び画像処理装置の制御方法 |
US10154196B2 (en) * | 2015-05-26 | 2018-12-11 | Microsoft Technology Licensing, Llc | Adjusting length of living images |
US9443316B1 (en) * | 2015-07-21 | 2016-09-13 | Sony Corporation | Semi-automatic image segmentation |
US9959880B2 (en) * | 2015-10-14 | 2018-05-01 | Qualcomm Incorporated | Coding higher-order ambisonic coefficients during multiple transitions |
US9858965B2 (en) | 2015-10-23 | 2018-01-02 | Microsoft Technology Licensing, Llc | Video loop generation |
KR101698314B1 (ko) | 2015-12-09 | 2017-01-20 | 경북대학교 산학협력단 | 영상 통계정보에 기반한 정지장면 분할장치 및 그 방법 |
EP3206163B1 (de) * | 2016-02-11 | 2018-12-26 | AR4 GmbH | Bildverarbeitungsverfahren, mobile vorrichtung und verfahren zur erzeugung einer videobilddatenbank |
US20180025749A1 (en) * | 2016-07-22 | 2018-01-25 | Microsoft Technology Licensing, Llc | Automatic generation of semantic-based cinemagraphs |
US10062410B2 (en) | 2016-09-23 | 2018-08-28 | Apple Inc. | Automated seamless video loop |
US9934818B1 (en) | 2016-09-23 | 2018-04-03 | Apple Inc. | Automated seamless video loop |
US10062409B2 (en) | 2016-09-23 | 2018-08-28 | Apple Inc. | Automated seamless video loop |
US10176845B2 (en) | 2016-09-23 | 2019-01-08 | Apple Inc. | Seamless forward-reverse video loops |
US10122940B2 (en) | 2016-09-23 | 2018-11-06 | Apple Inc. | Automated seamless video loop |
US10262208B2 (en) | 2016-09-23 | 2019-04-16 | Microsoft Technology Licensing, Llc | Automatic selection of cinemagraphs |
KR101804844B1 (ko) | 2016-12-20 | 2017-12-05 | 재단법인대구경북과학기술원 | 시네마그래프 생성 장치 및 그 방법 |
US10586367B2 (en) * | 2017-01-04 | 2020-03-10 | Samsung Electronics Co., Ltd. | Interactive cinemagrams |
US10734025B2 (en) | 2017-05-16 | 2020-08-04 | Apple Inc. | Seamless output video variations for an input video |
US10904607B2 (en) | 2017-07-10 | 2021-01-26 | Dolby Laboratories Licensing Corporation | Video content controller and associated method |
US10573052B2 (en) * | 2018-02-13 | 2020-02-25 | Adobe Inc. | Creating cinemagraphs with virtual long-exposure images |
US10796421B2 (en) * | 2018-02-13 | 2020-10-06 | Adobe Inc. | Creating selective virtual long-exposure images |
JP6572500B1 (ja) * | 2018-03-14 | 2019-09-11 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd | 画像処理装置、撮像装置、移動体、画像処理方法、及びプログラム |
US10701279B2 (en) | 2018-10-02 | 2020-06-30 | Adobe Inc. | Utilizing alignment models and motion vector path blending to generate a long exposure digital image from a sequence of short exposure digital images |
WO2020137524A1 (ja) * | 2018-12-25 | 2020-07-02 | キヤノン株式会社 | 電子機器 |
KR20210098239A (ko) * | 2020-01-31 | 2021-08-10 | 삼성전자주식회사 | 콘텐츠를 형성하기 위한 전자 장치 및 그의 동작 방법 |
WO2022056817A1 (en) * | 2020-09-18 | 2022-03-24 | Qualcomm Incorporated | Anchor frame selection for blending frames in image processing |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4689683B1 (en) * | 1986-03-18 | 1996-02-27 | Edward Efron | Computerized studio for motion picture film and television production |
US5594554A (en) | 1993-10-04 | 1997-01-14 | Zoran Corporation | Image compression coder having improved scale factor control |
US7982796B2 (en) | 2001-03-21 | 2011-07-19 | Apple Inc. | Track for improved video compression |
US6625310B2 (en) | 2001-03-23 | 2003-09-23 | Diamondback Vision, Inc. | Video segmentation using statistical pixel modeling |
JP2005277916A (ja) * | 2004-03-25 | 2005-10-06 | Seiko Epson Corp | 動画像処理装置、画像処理システム、動画像処理方法およびそのプログラム、記録媒体 |
KR100782811B1 (ko) * | 2005-02-04 | 2007-12-06 | 삼성전자주식회사 | 영상의 주파수 특성에 따라 포맷을 달리하는 스테레오 영상 합성 방법 및 장치와, 그 영상의 송신 및 수신 방법과, 그 영상의 재생 방법 및 장치 |
US7702131B2 (en) | 2005-10-13 | 2010-04-20 | Fujifilm Corporation | Segmenting images and simulating motion blur using an image sequence |
US7609271B2 (en) * | 2006-06-30 | 2009-10-27 | Microsoft Corporation | Producing animated scenes from still images |
JP2009124618A (ja) * | 2007-11-19 | 2009-06-04 | Hitachi Ltd | カメラ装置、画像処理装置 |
US8406491B2 (en) | 2008-05-08 | 2013-03-26 | Ut-Battelle, Llc | Image registration method for medical image sequences |
JP2011035636A (ja) * | 2009-07-31 | 2011-02-17 | Casio Computer Co Ltd | 画像処理装置及び方法 |
DE102009038364A1 (de) * | 2009-08-23 | 2011-02-24 | Friedrich-Alexander-Universität Erlangen-Nürnberg | Verfahren und System zur automatischen Objekterkennung und anschließenden Objektverfolgung nach Maßgabe der Objektform |
US9049447B2 (en) * | 2010-12-30 | 2015-06-02 | Pelco, Inc. | Video coding |
US9473702B2 (en) * | 2011-12-23 | 2016-10-18 | Nokia Technologies Oy | Controlling image capture and/or controlling image processing |
US8872850B2 (en) * | 2012-03-05 | 2014-10-28 | Microsoft Corporation | Juxtaposing still and dynamic imagery for cliplet creation |
-
2012
- 2012-10-19 US US13/656,442 patent/US9082198B2/en active Active
-
2013
- 2013-09-03 GB GB1315659.1A patent/GB2507172B/en active Active
- 2013-10-15 DE DE102013017122.9A patent/DE102013017122B4/de active Active
- 2013-10-21 JP JP2013218528A patent/JP6305719B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Non-Patent Citations (2)
Title |
---|
"Fast approximate curve evolution" von James Malcolm, Yogesh Rathi, Anthony Yezzi und Allen Tannenbaum, Real-Time Image Processing 2008, Nasser Kehtarnavaz |
Matthias F. Carlsohn, Editors, Proc. SPIE Vol. 6811, 68110L (2008) |
Also Published As
Publication number | Publication date |
---|---|
GB2507172A (en) | 2014-04-23 |
DE102013017122B4 (de) | 2024-03-07 |
GB201315659D0 (en) | 2013-10-16 |
GB2507172B (en) | 2018-07-18 |
US9082198B2 (en) | 2015-07-14 |
JP2014102820A (ja) | 2014-06-05 |
JP6305719B2 (ja) | 2018-04-04 |
US20140111662A1 (en) | 2014-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102013017122B4 (de) | Verfahren zum Herstellen automatischer Cinemagramme auf einer Bildgebungsvorrichtung | |
Li et al. | Low-light image and video enhancement using deep learning: A survey | |
Li et al. | Detail-enhanced multi-scale exposure fusion | |
DE112018002228B4 (de) | Konfigurierbare faltungsmaschine für verschachtelte kanaldaten | |
DE102011078662B4 (de) | Erfassen und Erzeugen von Bildern mit hohem Dynamikbereich | |
DE112006001017B4 (de) | Verfahren und Vorrichtung zum Eingliedern von Irisfarbe in eine Rotes-Auge-Korrektur | |
DE102016115292B4 (de) | Verfahren und Vorrichtung zur automatischen Belichtungswerterfassung für High Dynamic Range Imaging | |
DE102012023299A1 (de) | Einrichtung und Algorithmus zum Erfassen von HDR-Video (High Dynamic Range - hoher Dynamikumfang) | |
CN106462955B (zh) | 具有时间平滑和用户超驰的自动视频质量增强 | |
DE102017010210A1 (de) | Bild-Matting mittels tiefem Lernen | |
DE102014010152A1 (de) | Automatikeffektverfahren für Fotografie und elektronische Vorrichtung | |
DE202013012272U1 (de) | Einrichtung zur Steuerung einer Kamera | |
US20190335077A1 (en) | Systems and methods for image capture and processing | |
SE1150505A1 (sv) | Metod och anordning för tagning av bilder | |
DE102007025670A1 (de) | Intelligente Bildqualitäts-Funktionseinheit | |
DE202015009148U1 (de) | Automatische Bearbeitung von Bildern | |
DE202015003717U1 (de) | "System zur dynamischen Wahl der Kompressionsrate" | |
DE102014117895A1 (de) | Hinweis-basierte Spot-Healing-Techniken | |
DE112019007550T5 (de) | Automatisches segmentieren und anpassen von bildern | |
CN104969240A (zh) | 用于图像处理的方法和系统 | |
DE102016122790A1 (de) | Unterstützter automatischer Weißabgleich | |
JP5676610B2 (ja) | 画像シーケンスの関心領域に基づくアーティファクト低減のためのシステム及び方法 | |
Florea et al. | Directed color transfer for low-light image enhancement | |
Sitohang | Reduction Eye Red Digital Image Effect With Algorithm Intensity Color Checking | |
Fu et al. | Learning an adaptive model for extreme low‐light raw image processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |
|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division |