-
UMWANDLUNG
VON BILDERN
-
TECHNISCHES
GEBIET
-
Die
vorliegende Erfindung bezieht sich auf digitale, unbewegte Kamerabilder
und spezieller auf ein System und Verfahren zum Umwandeln eines
Bildes, das durch eine digitale Fotokamera (Kamera für unbewegte
Bilder – digital
still camera) erzeugt wurde, und zum Speichern des umgewandelten
Bildes zusammen mit seinen entsprechend aktualisierten Metadaten.
-
HINTERGRUND
DER ERFINDUNG
-
Kameras
zum Aufnehmen von unbewegten Fotografien in digitaler Form sind
sehr populär
geworden. Die meisten solcher Kameras können in einer Art und Weise ähnlich zu
traditionellen Filmkameras eingesetzt werden, ausgenommen, dass
die aufgenommenen Bilder in elektronischer Form gespeichert werden,
wie z.B. auf einer entfernbaren Compact-Flash-Datenträgerkarte.
-
Frühe digitale
Kameras speicherten Bilder in verschiedenen elektronischen Dateiformaten,
abhängig
von dem Kamerahersteller. Als sich digitale Kameras entwickelten,
begannen die Meisten Bilder in digitalen Bildformaten zu speichern,
die ein Hauptbild und zugehörige
Metadaten spezifizieren. Ein Beispiel solcher digitalen Bildformate
ist das nun gut bekannte „austauschbare
Bilddatei"-Format
(Exchangeable Image File Format – EXIF-Format), das durch die
Japan Electronic Industry Development Association veröffentlicht
wurde. Die Version 2.1 des EXIF-Standards ist eine aktuelle Version
und ist öffentlich über das
Internet verfügbar.
Der EXIF-Standard definiert ein Format zum Speichern eines digitalen
Bildes, das ein Hauptbild und bestimmte zugehörige Metadaten umfasst. Die
Metadaten können
Informationen einschließen,
wie z.B. eine Vorschau(Thumbnail) oder Miniatur-Darstellungen des
Hauptbildes und Informationen über
das Hauptbild selbst, einschließlich
dem Datum, der Zeit, Aufnahmeeinstellung, den Global-Positioning-Satellite-Ort
und anderen Daten. Die Metadaten können durch die Verwendung bestimmter "Kennzeichnungen" (tags) oder Feldnamen
identifiziert werden. Zum Beispiel ist der "Komprimierungs"-Kennzeichnungsname ein Feld, das anzeigt, ob
ein Bild in einem komprimierten Format gespeichert ist. Unter dem
EXIF-Standard gibt ein Wert von „6" in dem Komprimierungs-Kennzeichnungsnamen ein
komprimiertes JPEG-Bild
an.
-
Nach
dem Aufnehmen eines Bildes mit einer digitalen Fotokamera möchten Verbraucher
oft das Bild auf einem Anzeigegerät, wie z. B. einem Fernseher,
ansehen. Digitale Fotos sind jedoch im Allgemeinen aufgenommen worden,
wobei die Kamera von ihrer normalen horizontalen Ausrichtung weggedreht wurde.
Als ein Ergebnis ist das aufgenommene Foto entsprechend gedreht
und der Verbraucher ist nicht in der Lage, das Bild in seiner ursprünglichen
Ausrichtung anzusehen, ohne das Bild zu drehen.
-
Ein
Bild, das in den digitalen Bildformaten, wie z. B. dem EXIF-Format,
gespeichert ist, kann unter Verwendung von Personalcomputersoftware
modifiziert werden, aber es gibt Einschränkungen. Solche Software kann
den Hauptbildteil des EXIF-Bildes umwandeln, welches üblicherweise
in der EXIF-Datei als ein Bild in dem JPEG-Format (Joint Photographic Experts
Group Format) gespeichert ist. Derzeitige Software verarbeitet jedoch
die EXIF-Metadaten nicht korrekt. Nach Beendigung der Hauptbildumwandlung
kann die Software deshalb das umgewandelte Hauptbild speichern,
verwirft dann aber entweder die Metadaten oder speichert lediglich
einen Teil der ursprünglichen
Metadaten, welche nicht mehr länger
das nun umgewandelte Hauptbild akkurat beschreiben. Zum Beispiel
könnten
das Hauptbild und seine zugehörigen
Metadaten erzeugt worden sein, während
die Kamera um 90 Grad gedreht ist, und in einer EXIF-Datei gespeichert
sein. Unter Verwendung eines PCs könnte bestehende Software die EXIF-Datei
lesen, das Hauptbild extrahieren und es durch das Rotieren auf eine
horizontale Ausrichtung zur Betrachtung umformen. Jedoch bleibt
die Miniaturbild-Darstellung (thumbnail representation) zugehörig zu dem
Hauptbild unverändert
und ist immer noch um 90 Grad von dem nun umgewandelten Hauptbild
gedreht, so dass das Miniaturbild das umgeformte Bild nicht akkurat
zeichnet. Die restlichen Metadaten würden gleichermaßen inakkurat
sein, wie z.B. die, die die Höhe
und Breite des nun umgewandelten Hauptbildes betreffen. Die Verbraucher können versuchen,
das umgewandelte Hauptbild unter Verwendung der Betrachtungssoftware,
die mit der digitalen Kamera verkauft wird, zu betrachten oder das
umgewandelte Hauptbild auf eine digitale Kamera zur späteren Betrachtung
hinaufladen. Weil jedoch die Metadaten nicht länger dem umgewandelten Hauptbild
entsprechen, sind die Software und die digitale Kamera nicht in
der Lage, das digitale Bild zu verarbeiten, was bewirkt, dass eine
normale Bearbeitung aufhört.
Außerdem
kann ein Verlust der Metadaten das Kategorisieren und Suchen nach
Bildern basierend auf den Metadaten nachteilig beeinflussen. Kurz
gesagt gibt es kein zufriedenstellendes System oder Verfahren, um
das Hauptbild eines EXIF-Bildes umzuwandeln, um die Metadaten zu
aktualisieren, um die Umwandlung widerzuspiegeln und um dann das
umgewandelte Hauptbild zusammen mit den entsprechenden aktualisierten
Metadaten unter Verwendung des EXIF-Formates zu speichern.
-
EP-A-1
154 631 bezieht sich auf ein System zum Weitergeben digitaler Bilder,
die durch eine digitale Kamera aufgenommen wurden, an einen Serviceprovider über ein
Datenübertragungsnetzwerk.
Die aufgenommenen Bilder sind komprimiert und als JPEG-Bilddatei
unter Verwendung des sog. "EXIF-Bildformates" gespeichert. Des
Weiteren schließt
das System drei verschiedene Speichergebiete zum Speichern ein:
(1) die EXIF-Bilddateien, die das JPEG-komprimierte Hauptbild, das
Miniaturbild und die Bild-Metadaten
enthalten, (2) Bestätigungsdateien,
nach dem die Bilder, die durch die digitale Kamera gespeichert wurden,
zu dem Serviceprovider übermittelt
wurden, wobei die Bestätigungsdateien
die Daumennagel-großen
JPEG-komprimierten Bildbestätigungsdateien
und/oder entsprechende Text- oder HTML-Dateien einschließen können, und (3)
Miniaturbilddateien, nachdem die vorher gespeicherten Bilder in
voller Auflösung
zu dem Serviceprovider übermittelt
und dann von dem Speicher gelöscht
worden sind. Zusätzlich
können
die Miniaturbilder in einer Kamera, die geeignet ist, eine Bilddatei digital
zu zoomen und zu beschneiden, nachdem sie aufgenommen wurde, den
gezoomten und zugeschnittenen Teil des Bildes widerspiegeln. Dies
kann durch Speichern von Miniaturbildern, die nur das endgültige gezoomte
und zugeschnittene Bild widerspiegeln, oder durch das Überlagern
eines Zoom- und Zuschneide-Retikal auf das Miniaturbild des ursprünglichen
(unbeschnittenen) Bildes erreicht werden.
-
US-A-6
154 755 bezieht sich auf ein Verfahren zum Speichern von digitalen
Bildern, die von fotografischen Bildern auf einer Floppydisk erzeugt wurden
und zum Erzeugen eines Index-Ausdrucks der Bilder, die auf der Floppydisk
gespeichert sind. Des Weiteren wird eine Rotationsfunktion beschrieben,
wo die Miniaturansicht (thumbnail) der Bilder gedreht wird, und
die gedrehte Miniaturansicht auf dem Bildschirm gezeichnet wird,
und ein Bild-Objekt-Rotationswert aktualisiert wird. Die U Werte
werden in einer "Rotation.dat" (Datei) gespeichert.
-
KURZFASSUNG
DER ERFINDUNG
-
Es
ist die Aufgabe der Erfindung, eine Verbesserung für das Anzeigen
von aufgenommenen Bildern bereitzustellen.
-
Diese
Aufgabe wird durch die Erfindung wie in den unabhängigen Ansprüchen beansprucht
gelöst.
-
Bevorzugte
Ausführungsformen
werden durch die abhängigen
Ansprüche
definiert.
-
Die
vorliegende Erfindung adressiert die Einschränkungen der konventionellen
Bildumwandlung durch Bereitstellen eines Systems und Verfahrens zum
richtigen Umwandeln eines digitalen Bildes, einschließlich eines
Hauptbildes und zugehörigen
Metadaten, so dass die umgewandelten Metadaten die Umwandlungen,
die an dem Hauptbild gemacht wurden, akkurat widerspiegeln.
-
Das
Verfahren beginnt durch das Erlangen eines digitalen Bildes von
einer Datei oder einem anderen Speicherdatenträgern, der ein digitales Bildformat
verwendet, wie z. B. das EXIF-Format. Solch andere Speicherdatenträger könnten einen
Eingabedatenstrom, der in dem Speicher eines Personalcomputers gespeichert
ist, einschließen.
Die Erfindung analysiert die digitale Bilddatei oder Daten, um das Hauptbild
und seine entsprechenden Metadaten für ein digitales Bild zu extrahieren.
Ein Parameter wird dann erlangt, wie z.B. von einem Benutzer, um
das Hauptbild in einer gewünschten
Art und Weise umzuwandeln. Solch ein Parameter könnte z.B. anweisen, dass das
Hauptbild im Uhrzeigersinn um 90 Grad gedreht wird. Das Hauptbild
wird anschließend
in Übereinstimmung
mit dem Parameter umgewandelt. Nachdem das Hauptbild umgewandelt
worden ist, aktualisiert die Erfindung die Metadaten gemäß dem Parameter.
Dieser Aktualisierungsschritt kann das Modifizieren eines Thumbnail-Bildes
(Miniaturbildes) zugehörig
zu dem Hauptbild einschließen,
so dass der Thumbnail eine Miniaturversion des umgewandelten Hauptbildes
darstellt, der eine gleiche Betrachtungsausrichtung aufweist. In
dem vorliegenden Beispiel wird deshalb das Thumbnail-Bild durch
das Drehen um 90 Grad im Uhrzeigersinn modifiziert, um der Umwandlung,
die auf das Hauptbild angewandt wurde, zu entsprechen. Der Aktualisierungsschritt schließt des Weiteren
das Aktualisieren irgendeines anderen Teils der Metadaten, die das
Hauptbild oder Thumbnail-Bild
beschreiben, wenn notwendig, ein. Deshalb werden die Höhen- und
Breitendimensionen des Hauptbildes, wie sie in den Metadaten gespeichert
sind, aktualisiert, um die Umwandlung widerzuspiegeln. Das umgewandelte
Hauptbild und die aktualisierten Metadaten werden dann in einer
Datei unter Verwendung des EXIF-Formates gespeichert, so dass ein
EXIF-kompatibles Gerät
das umgewandelte digitale Bild betrachten kann.
-
Zusätzliche
Vorteile und neuartige Merkmale der Erfindung werden in der nun
folgenden Beschreibung dargelegt, und werden z. T. jenen Fachleuten nach
der Auswertung des Folgenden bewusst oder können durch das Praktizieren
der Erfindung gelernt werden.
-
KURZE BESCHREIBUNG
DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
-
Die
vorliegende Erfindung wird unterhalb detaillierter mit Bezug auf
die angehängten
Zeichnungsfiguren beschrieben, wobei:
-
1 ein
Blockdiagramm einer Computersystemumgebung ist, die zur Verwendung
bei der Implementierung der vorliegenden Erfindung auf einem Computer
geeignet ist;
-
2 ein
Ablaufdiagramm ist, das einen Überblick über ein
digitales Bild, das in dem EXIF-Format (Exchangeable Image File
Format) gespeichert ist, darstellt;
-
3 ein
Ablaufdiagramm ist, das einen Überblick über die
vorliegende Erfindung darstellt;
-
4 ein
Ablaufdiagramm ist, das den Decoder-Objektteil der vorliegenden
Erfindung darstellt;
-
5 ein
Ablaufdiagramm ist, das den Bitmap-Objektteil der vorliegenden Erfindung
darstellt;
-
6 ein
Ablaufdiagramm ist, das den Encoder-Objektteil der vorliegenden
Erfindung darstellt.
-
DETAILLIERTE
BESCHREIBUNG DER ERFINDUNG
-
Die
vorliegende Erfindung stellt ein System und Verfahren bereit, das
es einem Benutzer ermöglicht,
eine aktualisierte Version einer digitalen Bilddatei, wie z.B. einer
EXIF-Datei zu speichern. Die vorliegende Erfindung wird geeigneter
Weise auf einem Personalcomputer ausgeführt, aber kann ebenso in dem
Kontext einer Netzwerkcomputerumgebung ausgeführt werden.
-
Im
Allgemeinen wird ein digitales Bild erzeugt, wie z. B. durch die
Verwendung einer digitalen Kamera, und unter Verwendung des EXIF-Formates (Exchangeable
Image File Format) gespeichert. EXIF ist ein öffentlich verfügbarer Standard,
der jenen Fachleuten gut bekannt ist. Das EXIF-Bild kann auf einem
elektronischen Speicherdatenträger
zugehörig
zu der Kamera gespeichert werden, was ein Compact-Flash-Speichergerät, eine
beschreibbare CD oder anderer Datenträger sein kann. Alternativ kann
das EXIF-Bild als ein Datenstrom in dem Speicher eines Personalcomputers
gespeichert werden. Ein Verbraucher kann das digitale Bild zu einem
Personalcomputer überspielen,
so dass es umgewandelt werden kann. Um die Umwandlung auszuführen, bestimmt
der Verbraucher einen Parameter zur Umwandlung des digitalen Bildes,
wie z. B. durch das Anweisen einer Software auf dem Personalcomputer, das
digitale Bild zu drehen, seine Farbe zu verändern oder eine andere Modifikation
zu machen. Die EXIF-Datei, die das gewünschte Bild zur Umwandlung
enthält,
wird anschließend
durch die Software erlangt und in dem Speicher des Computers gespeichert.
Der Hauptbildteil des digitalen Bildes wird gemäß dem Parameter umgewandelt
und die Metadaten entsprechend aktualisiert. Im Speziellen dreht
die vorliegende Erfindung das Miniaturbild, passt es in der Größe an, oder,
wenn notwendig, wandelt es in anderer Art und Weise um, um das entsprechende umgewandelte
Hauptbild akkurat in einer Miniaturform zu zeichnen. Zusätzlich aktualisiert
die vorliegende Erfindung die Metadaten, um Veränderungen in der Größe, Bittiefe,
Farbe oder anderen Aspekten, die während irgendeiner Umwandlung,
die auf das Hauptbild angewandt wurde, modifiziert worden sein können, widerzuspiegeln.
Die Umwandlung, die auf das Hauptbild und das Miniaturbild angewandt
wurde, kann eine verlustlose Transformation sein, wie z.B. eine
verlustlose Rotation des Bildes. Wenn die gewünschten Umwandlungen durchgeführt worden sind,
werden das umgewandelte Hauptbild und die aktualisierten Metadaten
als ein digitales Bild in einer Datei unter Verwendung des EXIF-Formats
gespeichert, so dass ein EXIF-kompatibles Gerät auf das digitale Bild, einschließlich des
Hauptbildes als auch der Metadaten, einschließlich eines Miniaturbildes, wie
sie modifiziert wurden, zugreifen kann.
-
Nachdem
die Ausführungsform
der vorliegenden Erfindung kurz beschrieben worden ist, wird unterhalb
ein exemplarisches Betriebssystem für die vorliegende Erfindung
beschrieben:
-
Exemplarische
Arbeitsumgebung
-
1 stellt
ein Beispiel einer geeigneten lokalen Computersystemumgebung 100 dar,
auf der die Erfindung implementiert werden kann. Die Computersystemumgebung 100 ist
nur ein Beispiel einer geeigneten Computerumgebung und ist nicht
gedacht, irgendeine Einschränkung
auf den Umfang der Verwendung oder Funktionalität der Erfindung vorzuschlagen.
Noch sollte die Computerumgebung so interpretiert werden, als hätte sie
irgendwelche Abhängigkeiten
oder Erfordernisse bezüglich
irgendeiner oder einer Kombination von Komponenten, die in der exemplarischen
Arbeitsumgebung 100 dargestellt werden.
-
Die
Erfindung kann im allgemeinen Kontext von Computer-ausführbaren
Instruktionen beschrieben werden, wie z.B. Programmmodulen, die
durch einen Computer ausgeführt
werden. Im Allgemeinen schließen
Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen,
etc. ein, die bestimmte Aufgaben durchführen oder bestimmte abstrakte
Datentypen implementieren. Außerdem werden
jene Fachleute es begrüßen, dass
die Erfindung mit anderen Computersystemkonfigurationen praktiziert
werden kann, einschließlich
tragbaren Geräten,
Multiprozessorsystemen, mikroprozessorbasierter oder programmierbarer
Unterhaltungselektronik, Minicomputern, Mainframecomputern und ähnlichem.
Die Erfindung kann ebenso in verteilten Computerumgebungen ausgeführt werden,
wo Aufgaben durch remote, (entfernt liegende) verarbeitende Geräte, die
durch ein Datenübertragungsnetzwerk
verbunden sind, durchgeführt
werden. In einer verteilten Computerumgebung können Programmmodule sowohl
lokal als auch auf Remote-Computerspeicherdatenträgern, einschließlich Speicherdatenträgergeräten, liegen.
-
Mit
Bezug auf 1 schließt ein exemplarisches System 100 zum
Implementieren der Erfindung ein Allzweckcomputergerät in der
Form eines Computers 110 ein, der eine Prozessoreinheit
(Verarbeitungseinheit) 120, einen Systemspeicher 130 und einen
Systembus 121, der verschiedene Systemkomponenten einschließlich des
Systemspeichers der Prozessoreinheit 120 koppelt, einschließt.
-
Der
Computer 110 schließt üblicherweise eine
Vielfalt von computerlesbaren Datenträgern ein. Als Beispiel, und
nicht Einschränkung,
können
computerlesbare Datenträger
Computerspeichermedien und Datenübertragungsmedien
umfassen. Der Systemspeicher 130 schließt Computerspeichermedien in
der Form von flüchtigem
und/oder nicht flüchtigem Speicher
ein, wie z.B. Read Only Memory (ROM) 131 und Random Access
Memory (RAM) 132. Ein Basic-Input/Output-System 133 (BIOS),
das die Basisroutinen enthält,
die helfen, Informationen zwischen den Elementen innerhalb des Computers
zu übertragen,
wie z. B. während
des Hochfahrens, ist üblicherweise
in dem ROM 131 gespeichert. Der RAM 132 enthält üblicherweise
Daten und/oder Programmmodule, auf die durch die Prozessoreinheit 120 sofort
zugegriffen werden kann und/oder auf der aktuell durch die Prozessoreinheit 120 gearbeitet wird.
Als Beispiel, und nicht als Einschränkung, stellt 1 ein
Betriebssystem 134, Anwendungsprogramme 135, andere
Programmmodule 136 und Programmdaten 137 dar.
Der Computer 110 kann ebenso andere entfernbare/nicht entfernbare,
flüchtige/nicht
flüchtige
Computerspeicherdatenträger
einschließen.
Nur als Beispiel stellt 1 ein Festplattenlaufwerk 141,
das von/zu einem nicht entfernbaren, nicht flüchtigen magnetischen Datenträger liest oder
schreibt, ein magnetisches Disklaufwerk 151, das von/zu
einer entfernbaren, nicht flüchtigen
magnetischen Disk 152 liest oder schreibt, und ein optisches
Disklaufwerk 155, das von/zu einer entfernbaren, nicht
flüchtigen
optischen Disk 156, wie z. B. einer CD ROM oder anderem
optischen Datenträger liest
oder schreibt, dar. Andere entfernbare/nicht entfernbare, flüchtige/nicht
flüchtige
Computerspeicherdatenträger,
die in der exemplarischen Arbeitsumgebung verwendet werden können, schließen ein,
sind aber nicht darauf begrenzt, magnetische Bandkassetten, Flash
Memory Karten, Digital Versatile Disks, digitale Videobänder, Solid
State RAM, Solid State ROM und ähnliches.
Das Festplattenlaufwerk 141 ist üblicherweise mit dem Systembus 121 durch
eine Schnittstelle für
nicht entfernbaren Speicher, wie z.B. Schnittstelle 140,
verbunden, und das magnetische Disklaufwerk 151 und optische
Disklaufwerk 155 sind üblicherweise
mit dem Systembus 121 durch eine Schnittstelle für entfernbaren
Speicher, wie z. B. Schnittstelle 150, verbunden.
-
Die
Laufwerke und ihre zugehörigen
Computerspeicherdatenträger,
die oberhalb diskutiert und in 1 dargestellt
wurden, bieten Speicher für
computerlesbare Instruktionen, Datenstrukturen, Programmmodule und
andere Daten für
den Computer 110. In 1, z. B.,
ist das Festplattenlaufwerk 141 so dargestellt, dass es
Betriebssystem 144, Anwendungsprogramme 145, andere
Programmmodule 146 und Programmdaten 147 speichert.
Es ist zu beachten, dass diese Komponenten entweder dieselben sein
können
oder verschieden sein können
von dem Betriebssystem 134, Anwendungsprogrammen 135,
anderen Programmmodule 136 und Programmdaten 137.
Das Betriebssystem 144, die Anwendungsprogramme 145,
anderen Programmmodule 146 und Programmdaten 147 sind
hier verschiedene Nummern gegeben worden, um darzustellen, dass sie
wenigstens unterschiedliche Kopien sind. Ein Benutzer kann Befehle
und Informationen in den Computer 110 durch Eingabegeräte eingeben,
wie z.B. eine Tastatur 162 und Zeigegerät 161, allgemein als eine
Maus, Trackball oder Touchpad bezeichnet. Andere Eingabegeräte (nicht
gezeigt) können
ein Mikrofon, einen Joystick, ein Gamepad, eine Satellitenschüssel, Scanner
oder ähnliches
einschließen.
Diese und andere Eingabegeräte sind
oft mit der Prozessoreinheit 120 durch eine Benutzereingabeschnittstelle 160 verbunden,
die mit dem Systembus 121 gekoppelt ist, können aber
durch andere Schnittstellen und Busstrukturen verbunden sein, wie
z.B. einen Parallelanschluss, Spieleanschluss (game port) oder einen
Universal Serial Bus (USB). Ein Monitor 191 oder anderer
Typ von Anzeigegerät
ist ebenso mit dem Systembus 121 über eine Schnittstelle, wie
z.B. Videoschnittstelle 190, verbunden. Zusätzlich zu
dem Monitor können
Computer auch andere periphere Ausgabegeräte, wie z. B. Lautsprecher 197 und
Drucker 196 einschließen,
welche durch eine Ausgabe-Peripherieschnittstelle 195 verbunden
sind.
-
Der
Computer 110 wird in der vorliegenden Erfindung in einer
Netzwerkumgebung unter Verwendung logischer Verbindungen zu einem
oder mehreren Remote-Computern, wie z.B. Remote-Computer 180,
arbeiten. Der Remote-Computer 180 kann ein Personalcomputer
sein, und schließt üblicherweise viele
oder alle der oben mit Bezug auf Computer 110 beschriebenen
Elemente ein, obwohl nur ein Datenspeichergerät 181 in 1 dargestellt
worden ist. Die logischen Verbindungen, die in 1 gezeigt
sind, schließen
ein Local Area Network (LAN) 171 und ein Wide Area Network
(WAN) 173 ein, können
aber auch andere Netzwerke einschließen.
-
Wenn
er in einer LAN-Netzwerkumgebung verwendet wird, ist der Computer 110 mit
dem LAN 171 durch eine Netzwerkschnittstelle oder -adapter 170 verbunden.
Wenn er in einer WAN-Netzwerkumgebung verwendet wird, schließt der Computer 110 üblicherweise
ein Modem 172 oder andere Mittel zum Herstellen von Datenübertragungen über das
WAN 173, wie z.B. das Internet, ein. Das Modem 172,
welches intern oder extern sein kann, kann mit dem Systembus 121 über die
Benutzereingabeschnittstelle 160 oder einen anderen passenden
Mechanismus verbunden sein. In einer Netzwerkumgebung können Programmmodule,
die bezüglich
Computer 110 gezeigt sind, oder Teile davon, in dem Remote-Datenspeichergeräte gespeichert
sein. Als Beispiel und nicht Einschränkung, stellt 1 Remote-Anwendungsprogramme 185 so
dar, dass sie auf dem Speichergerät 181 liegen. Es wird
begrüßt, dass
die gezeigten Netzwerkverbindungen exemplarisch sind, und andere
Mittel zum Herstellen einer Datenübertragungsverbindung zwischen
den Computern verwendet werden kann.
-
Obwohl
viele andere interne Komponenten des Computers 110 nicht
gezeigt sind, werden jene Fachleute es begrüßen, dass solche Komponenten und
die Zwischenverbindungen gut bekannt sind. Dementsprechend müssen zusätzliche
Details, die die interne Konstruktion des Computers 110 betreffen,
nicht in Verbindung mit der vorliegenden Erfindung offenbart werden.
-
UMWANDLUNG
DES EXIF-BILDES
-
Die
vorliegende Erfindung kann unter Verwendung eines Personalcomputers
implementiert werden, wie z.B. eines IBM-kompatiblen PCs, auf dem
das MICROSOFT WINDOWS Betriebssystem läuft.
-
2 stellt
ein Übersichtsblockdiagramm des
EXIF-Dateiformats für
ein digitales Bild dar. Im Speziellen stellt 2 ein einzelnes
digitales Bild 202 dar, das in dem EXIF-Format gespeichert ist, wie z. B. eine
Datei auf einem PC oder einem entfernbaren Speichergerät in einer
digitalen Kamera. Wie es durch jene Fachleute begrüßt wird,
kann eine EXIF-Datei mehrere digitale Bilder enthalten, die ein ähnliches
Format haben. Jedes digitale Bild 202 umfasst im Allgemeinen
ein Hauptbild 204 und Metadaten 206 und 208.
Einfache Metadaten 206 können Informationen einschließen, wie
z.B. die Breite und Höhe
des Hauptbildes, und die komplexen Metadaten 208 können ein
Miniaturbild (thumbnail) oder eine Miniaturdarstellung des Bildes 204 einschließen. Weitere
Details, die das EXIF-Format betreffen, sind in dem Dokument "Digital Still Camera
Image File Format Standard" mit
dem Datum 12. Juni 1998, und durch die Japan Electronic
Industry Development Association (JEIDA) veröffentlicht, dargelegt, was
hiermit eingereicht und hier durch Bezug mit einbezogen wird.
-
3 stellt
ein Übersichtsblockdiagramm der
vorliegenden Erfindung dar. Das Verfahren beginnt bei Schritt 210 durch
das Zugreifen auf einen Datenstrom mit EXIF-Daten. Solch ein Datenstrom, wie
es durch jene Fachleute begrüßt wird,
kann sich auf die Daten beziehen, die in einer EXIF-Format-Datei
gespeichert sind, z.B. auf einem PC-Festplattenlaufwerk, aber können sich
ebenso auf Informationen beziehen, die in einem Computerspeicher
gespeichert sind, die ebenso von einer EXIF-Format-Datei oder anderen
Quelle erlangt wurden. Der EXIF-Datenstrom 210 wird durch
das Decoderobjekt 212 erlangt, das unterhalb detaillierter
diskutiert wird. Das Decoderobjekt 212 erlangt von dem
EXIF-Datenstrom 210 das
Hauptbild und die Metadaten, einschließlich eines Miniaturbildes.
Das Miniaturbild und ein Umwandlungsparameter werden an das Bitmapobjekt 214 übergeben,
das das Miniaturbild wie unterhalb detaillierter diskutiert wird,
umwandelt. Nach Abschluss der Umwandlung übergibt das Bitmapobjekt 214 den
Parameter und das umgewandelte Miniaturbild an das Encoderobjekt 216.
Das Decoderobjekt 212 übergibt
gleichermaßen
die restlichen Metadaten sowie den Parameter und das Hauptbild an das
Encoderobjekt 216. Das Encoderobjekt 216 codiert
dann die Daten, die von dem Bitmatobjekt 214 und dem Decoderobjekt 212 empfangen
wurden, und speichert die Daten in dem EXIF-Dateiformat in Schritt 218.
-
4 stellt
im größeren Detail
die Vorgänge des
Decoderobjektes 212 dar. Wie darin gezeigt, greift das
Decoderobjekt auf einen EXIF-Datenstrom 220 zu. Der EXIF-Datenstrom
enthält
mindestens ein digitales Bild in dem Format, das in 2 dargestellt ist,
was ein Hauptbild 204, einfache Metadaten 206 und
komplexe Metadaten 208, wie z. B. ein Miniaturbild oder
Audiodaten, aufweist. Bei Schritt 222 extrahiert deshalb
des Decoderobjekt 212 aus dem EXIF-Datenstrom 220 ein
Hauptbild, Metadaten und Miniaturbild-Informationen. Wie es durch jene Fachleute
begrüßt wird,
könnten
die so erlangten Daten in einer Vielfalt von Datenstrukturen gespeichert
werden. Zum Beispiel zur einfacheren Verarbeitung könnten die
Metadaten einschließlich
des Miniaturbildes in einer verknüpften Listendatenstruktur (linked list
data structure) gespeichert werden. Daraufhin ermittelt das Decoderobjekt
bei Schritt 224, ob das Miniaturbild, das aus dem EXIF-Datenstrom 220 extrahiert
wurde, in dem JPEG-komprimierten Format vorliegt. Wie oberhalb erwähnt, ist
dieses Format durch jene Fachleute sehr bekannt und ist sehr geeignet, um
verlustlose Umwandlungen unter Verwendung öffentlich verfügbarer Software
und Algorithmen durchzuführen.
Zum Beispiel kann unter dem EXIF-Standard der Komprimierungskennzeichner
zugehörig
zu dem Miniaturbild einen Wert von "6" aufweisen,
was angibt, dass das Miniaturbild in dem JPEG-komprimierten Format
ist. Wenn das aus dem EXIF-Datenstrom 220 extrahierte Miniaturbild
unkomprimiert ist, dann geht die Steuerung zu Schritt 226 weiter,
und das Decoderobjekt 212 konvertiert das Miniaturbild
in das JPEG-komprimierte Format. Wenn auf der anderen Seite bei
Schritt 224 ermittelt wurde, dass das Miniaturbild bereits
in dem JPEG-komprimierten Format ist, dann geht die Steuerung zu
Schritt 228 weiter und das Decoderobjekt 212 übergibt
das Miniaturbild an das Bitmapobjekt 214, das unterhalb
detaillierter diskutiert wird. Danach, bei Schritt 230, übergibt
das Decoderobjekt das Hauptbild und die Metadaten an das Encoderobjekt 216.
-
5 stellt
in größerem Detail
die Funktion des Bitmapobjekts 214 der vorliegenden Erfindung dar.
Wie es durch jene Fachleute verstanden wird, bezieht sich das Bitmapobjekt
auf ein objektorientiertes Programmierungsobjekt, wie z. B. eines,
was unter Verwendung der MICROSOFT VISUAL C++ Sprache und der BITMAP-Klassendefinition,
die in dem Microsoft Foundation-Classes mit dem Visual C++ Produkt
bereitgestellt wird, erzeugt wurde. Nachdem ein Bitmapobjekt 214 instanziiert
wurde, empfängt das
Bit mapobjekt 214 bei Schritt 240 das Miniaturbild und
einen Parameter von dem Decoderobjekt 212. Der Parameter
beschreibt die Umwandlung, wie z. B. eine Drehung, die auf dem Hauptbild
ausgeführt
wird. Das Bitmapobjekt 214 wandelt dann bei Schritt 242 das
Miniaturbild gemäß dem Parameter
um. Zum Beispiel, wenn der Parameter angibt, dass eine 90 Grad Drehung
auf dem Hauptbild ausgeführt
werden soll, dann würde
das Bitmapobjekt 214 bei Schritt 242 eine gleiche
90 Grad Drehung im Uhrzeigersinn auf das Miniaturbild ausführen. Die
Steuerung geht dann zu Schritt 244 über und die Miniaturbild-Daten werden
zu dem Encoderobjekt 216 übergeben. Die Steuerung geht
dann zu Schritt 246 weiter, wobei bei Schritt 248 der
Umwandlungsdatenparameter dem Encoderobjekt 216 bereitgestellt
wird, und bei Schritt 260 die Verarbeitung durch das Bitmapobjekt
abgeschlossen ist.
-
6 stellt
die Gesamtfunktion des Encoderobjekts 216 dar. Bei Schritt 270 empfängt das
Encoderobjekt Daten für
das Hauptbild, Metadaten und den Parameter. Das Encoderobjekt fährt dann
fort, diese Daten in einer Datei unter Verwendung des EXIF-Formats zu speichern.
Deshalb schreibt bei Schritt 272 das Encoderobjekt die
EXIF-Headerinformationen
(EXIF-Kopfinformationen). Die EXIF-Headerinformationen werden durch
den EXIF-Standard definiert und sind jenen Fachleuten gut bekannt.
Bei Schritt 284 wird es anschließend ermittelt, ob eine verlustfreie
Umwandlung des Hauptbildes angefragt worden ist und möglich ist.
Zum Beispiel wird ein Hauptbild in einem komprimierten Format bereitgestellt,
wie z. B. dem JPEG-Format, was ein verlustbehaftetes Format ist.
Bestimmte verlustfreie Umwandlungen sind auf einem JPEG-Bild möglich, wie
z. B. eine 90 Grad Drehung oder ein horizontales oder vertikales
Umdrehen. Wenn solch eine Umwandlung möglich ist und angefragt wird,
wird sie dann bei Schritt 276 durchgeführt. Wenn solch eine Umwandlung
entweder nicht möglich
oder nicht angefragt wurde, dann wird bei Schritt 275 eine
verlustbehaftete oder andere Umwandlung durchgeführt. Die Steuerung geht dann
zu Schritt 278 weiter, und das Encoderobjekt aktualisiert
die Metadaten, um dem umgewandelten Hauptbild zu entsprechen. Solch
ein Aktualisierungsschritt könnte
z. B. das Aktualisieren des Kennzeichners ExiflmageWidth (Exif-Bildbreite)
und ExiflmageHeight (Exif-Bildhöhe)
sein, um Veränderungen
an der Breite bzw. Höhe
des Hauptbildes, wie es umgewandelt wurde, widerzuspiegeln.
-
Bei
Schritt 280 werden das umgewandelte Hauptbild, die aktualisierten
Metadaten und das Miniaturbild in einer Datei in dem EXIF-Format
gespeichert. Das Schreiben der Informationen in die EXIF-Formatdatei
könnte
durch eine Vielfalt von Möglichkeiten
passieren. Zum Beispiel könnte
eine Datenstruktur erzeugt werden, um die Metadaten zu sammen mit
den entsprechenden Metadaten-Kennzeichnern (tags) zu speichern.
Solche Kennzeichner könnten
EXIF-Kennzeichner, GPS-Kennzeichner, Miniaturbild-Kennzeichner und
andere einschließen. Die
Kennzeichner könnten
dann, basierend auf dem identifizierten Kennzeichner, sortiert werden,
was entweder der alphanumerische Name oder der hexadezimale Wert
zugehörig
zu dem Kennzeichner sein könnte.
Der EXIF-Standard
definiert das "Bild-Datei-Verzeichnis" (image file directory)
oder "IFD" als den Teil der
Datei, der Metadaten oder Bilddaten für ein gegebenes digitales Bild
enthält.
Das erste IFD in einer EXIF-Datei ist als das 0-te IFD bekannt,
welches die Hauptbildinformationen enthält. Im Speziellen enthält das 0-te
IFD einen Zeiger, der zu dem Ort in der Datei des ersten IFD zeigt,
welches üblicherweise
die Miniaturbild-Daten für
das 0-te IFD Hauptbild enthält.
Deshalb könnte
nach dem Sortierungsschritt der 0-te IFD-Wert in die EXIF-Datei
geschrieben werden. Solch ein Schreib-Schritt könnte ebenso das Schreiben irgendwelcher
GPS-Informationen in die EXIF-Datei einschließen. Metadaten, die in dem 1-ten
IFD für
das Miniaturbild des 0-ten IFD-Hauptbildes enthalten sind, könnten anschließend geschrieben
werden, gefolgt durch das Miniaturbild selbst und letztendlich des
Hauptbildes. Auf diese Weise könnte ein
digitales Bild in einer Datei in dem EXIF-Dateiformat gespeichert
werden.
-
Im
Betrieb könnte
ein Verbraucher die vorliegende Erfindung in einer Vielzahl von
Art und Weisen verwenden. Der Verbraucher könnte durch das Aufnehmen eines
Bildes unter Verwendung einer digitalen Kamera, die digitale Bilder
in dem EXIF-Format speichert, beginnen. Die EXIF-Bilder können auf
einer Compact-Flash-Speicherkarte oder anderem beschreibbaren Speichergerät gespeichert
werden. Der Verbraucher könnte
anschließend
die Compact-Flash-Karte oder anderen Datenspeicherträger von
der digitalen Kamera entfernen und den Datenträger einem Personalcomputer
zum Übertragen
des digitalen Bildes von dem Datenträger auf den Personalcomputer
bereitstellen. Der Verbraucher kann eine Software verwenden, die
die vorliegende Erfindung beinhaltet, um das Hauptbild und Metadaten zugehörig zu einem
digitalen Bild aus der EXIF-Datei zur Umwandlung zu erlangen. Das
Hauptbild wird gemäß einem
Parameter, der durch den Verbraucher zum Beschreiben einer gewünschten
Umwandlung bereitgestellt wird, umgewandelt. Die Metadaten sind daraufhin
gemäß dem Parameter
aktualisiert, und die Umwandlung und aktualisierten Metadaten werden daraufhin
in dem EXIF-Format gespeichert, das auf dem Personalcomputer betrachtet
werden könnte oder
zu der digitalen Kamera für
eine spätere
Betrechtung übertragen
werden könnte.
-
Von
dem vorangegangenen kann die Erfindung so gesehen werden, dass sie
einen Verbraucher mit einer wertvollen Art und Weise zur Betrachtung
digitaler Bilder, die mit einer digitalen Kamera oder anderen digitalen
Fotogeräten
erzeugt wurden, bereitstellt. Durch das Ermöglichen, dass Verbraucher solche
Umwandlungen machen und die resultierenden Daten in einer richtig
gestellten EXIF-Format-Datei speichern können, werden Verbrauchern viele
der Probleme beim Versuch, ein digitales Bild zu drehen oder anderweitig
umzuformen, erspart. Die verschiedenen Computersysteme und Komponenten,
die in den 1 bis 6 gezeigt
sind und in der Beschreibung beschrieben sind, sind nur Beispiele jener,
die zur Verwendung in Verbindung mit der vorliegenden Erfindung
geeignet sind. Zum Beispiel werden hiermit andere Ausführungsformen
betrachtet, wie z.B. das Speichern des Verfahrens der vorliegenden
Erfindung auf einem computerlesbaren Datenträger, einschließlich einem
Nur-Lese-Speichergerät,
zugehörig
zu einer digitalen Kamera, die einen Mikroprozessor oder andere
Steuereinrichtungen zum Umformen von EXIF-Bildern, ohne die Verwendung
eines Personalcomputers, aufweist. Dementsprechend ist der Umfang
der vorliegenden Erfindung eher durch die anhängigen Ansprüche als durch
die vorangegangene Beschreibung definiert.