DE19982811B4 - Verfahren und Einrichtung zur Standbildaufnahme während Videolaufbildoperationen einer Angekoppelten Digitalkamera - Google Patents

Verfahren und Einrichtung zur Standbildaufnahme während Videolaufbildoperationen einer Angekoppelten Digitalkamera Download PDF

Info

Publication number
DE19982811B4
DE19982811B4 DE19982811T DE19982811T DE19982811B4 DE 19982811 B4 DE19982811 B4 DE 19982811B4 DE 19982811 T DE19982811 T DE 19982811T DE 19982811 T DE19982811 T DE 19982811T DE 19982811 B4 DE19982811 B4 DE 19982811B4
Authority
DE
Germany
Prior art keywords
camera
image
digital camera
video
still image
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.)
Expired - Fee Related
Application number
DE19982811T
Other languages
English (en)
Other versions
DE19982811T1 (de
Inventor
Bruce P. Phoenix Clemens
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE19982811T1 publication Critical patent/DE19982811T1/de
Application granted granted Critical
Publication of DE19982811B4 publication Critical patent/DE19982811B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/21Intermediate information storage
    • H04N1/2104Intermediate information storage for one or a few pictures
    • H04N1/2112Intermediate information storage for one or a few pictures using still video cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/21Intermediate information storage
    • H04N1/2104Intermediate information storage for one or a few pictures
    • H04N1/2112Intermediate information storage for one or a few pictures using still video cameras
    • H04N1/212Motion video recording combined with still video recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0048Type of connection
    • H04N2201/0049By wire, cable or the like

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Verfahren zum Betreiben eines Bildverarbeitungssystems in einem dualen Betriebsmodus, in dem ein Standbild während der Durchführung von digitalen Videostromoperationen einer mit einem Computersystem verbunden Digitalkamera aufgenommen wird, wobei:
die digitalen Videostromoperationen der Digitalkamera ausgesetzt werden (506);
ein Standbild von der Digitalkamera aufgenommen wird (508, 510);
das Standbild als digitale Standbilddaten in einem Speicher in der Digitalkamera gespeichert wird;
die digitalen Standbilddaten aus der Digitalkamera an das Computersystem übertragen werden (512–518);
die digitalen Standbilddaten in einem ersten Speicher des Computersystem gespeichert (522) und digitale Videostromdaten in einem zweiten Speicher des Computersystems gespeichert werden; und
die digitalen Videostromoperationen der Digitalkamera wieder aufgenommen werden (526, 528);
wobei die obigen Schritte als unteilbare Operation, welche nicht unterbrechbar ist, ausgeführt werden.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Bildverarbeitungssystems, bei dem sowohl ein Standbild von einer mit einem Computersystem verbundenen Digitalkamera aufgenommen als auch Videostromoperationen ausgeführt werden können.
  • Die Digitalkamera wurde jüngst als ein transportables System entwickelt, das digitale Standbilder gewinnt und in elektronischer Form speichert. Die Bilder können auf unterschiedlichste Weise verwendet werden, wie beispielsweise in einem "elektronischen" Fotoalbum angezeigt oder verwendet werden, um grafische Computeranwendungen auszuschmücken. Die Digitalkamera hat eine einer herkömmlichen chemischen Filmkamera sehr ähnliche Bedieneroberfläche, aber die Bilder werden vollständig unter Verwendung elektronischer Festkörperschaltungen und Bildverarbeitungstechniken aufgenommen und gespeichert.
  • Eine typische Digitalkamera weist einen elektronischen Bildsensor auf, der von einem Objekt oder einer Szene reflektiertes, durch eine optische Schnittstelle einfallendes Licht aufnimmt. Die optische Schnittstelle kann ein Linsensystem, einen Blendenmechanismus und möglicherweise ein Lichtfilter umfassen. Der Sensor kann üblicherweise als ein Array von ladungsgekoppelten Bauelementen (CCD) oder Komplementär-Metall-Oxid-Halbleiter(CMOS)-Fotoerfassungsschaltungen implementiert sein, die lichtgenerierte Signale in Abhängigkeit von dem einfallenden Licht erzeugen. Analogsignale aus dem Sensor werden in ein Digitalformat durch einen Analog-Digital-Umsetzer (A/D-Umsetzer) konvertiert und dann weiter durch Logikschaltungen und/oder einen programmierten Prozessor verarbeitet, um ein aufgenommenes Digitalbild des Objekts oder der Szene hervorzubringen. Das aufgenommene Bild wird vorübergehend in einem internen Speicher mit wahlfreiem Zugriff (RAM) gespeichert und kann dann außerdem in einem entnehmbaren lokalen Speicher in der Kamera gespeichert werden. Der interne RAM speichert ein einzelnes Bild, aber der entfernbare lokale Speicher kann eine Reihe von Bildern speichern. Darüber hinaus können Bilder zu einem mit der Digitalkamera verbundenen Computer zur Speicherung als elektronische Dateien, zur Anzeige an einen Benutzer, für eine weitere grafische und Bildverarbeitung, um die Qualität des Bildes zu verbessern, und zur Verwendung mit anderer Grafiksoftware übertragen werden.
  • Die meisten Käufer von Digitalkameras haben Zugriff auf ein Personalcomputer(PC)-System zum Betrachten der Standbilder. Folglich könnten diese Käufer auch Gefallen daran finden, ihre Digitalkamera zu verwenden, um mit einer anderen Person zu kommunizieren, wie beispielsweise in einer Videokonferenzanwendung mit einem anderen Computer, um die andere Person sowohl zu sehen als auch zu hören. Jedoch sind die meisten Digitalkameras typischerweise so konfiguriert, daß sie nur Standbilder bereitstellen. In ähnlicher Weise arbeiten Kameras, die für Videokonferenzen verwendet werden, typischerweise nicht als Standbildkamera, wenn sie von dem Computer entkoppelt werden. Als Reaktion auf diese Einschränkungen wurde eine Digitalkamera und eine zugehörige Bildverarbeitungsarchitektur entwickelt, die eine "Dual-Modus"-Verwendung der Kamera sowohl für Video gestattet, bei der die Kamera mit einem Computer für Videozwecke verbunden ("angebunden") sein kann, als auch für die Standbildaufnahme transportabel betrieben werden kann. Ein derartiges System kann Standbild- und Videobilder über das gleiche Signalverarbeitungssystem bereitstellen, wodurch die Kosten des Kaufens separater Standbild- und Videokameras für den Verbraucher vermieden werden.
  • Jedoch weisen derartige Dual-Modus-Kameras eine ihnen eigene Einschränkung dahingehend auf, daß der Standbildaufnahmemodus nur verwendet wird, wenn die Kamera auf eine transportable Nicht-Video-Weise betrieben wird. Wenn die Kamera in dem Videomodus benutzt wird (so beispielsweise dann, wenn sie mit einem PC für Videokonferenzen verbunden ist), so überschreibt die Serie von aufgenommenen Bildern, die die Videoeinzelbildsequenz darstellen, irgendwelche in dieser Zeit vorliegenden Standbilder, welche in der Kamera aufgenommen und in ihrem internen RAM gespeichert sein könnten, wodurch gleichzeitige Videolaufbild- (video streaming) und Standbildaufnahmeoperationen unmöglich gemacht werden.
  • Aus dem US-Patent 5,574,934 ist ein Videokonferenzsystem bekannt mit einer analogen Videokamera, die über eine Videokarte mit einem Computersystem gekoppelt ist. von der analogen Videokamera werden analoge Videosignale erzeugt und mit Hilfe eines Analog-Digital-Umsetzers auf der Videokarte in ein digitales Format konvertiert. Die Videokarte enthält außerdem einen Video-RAM zum Speichern der digitalisierten Videobilder. Da sich der Video-RAM auf der Videokarte des Systems befindet, kann auf einfache Weise ein Video-RAM verwendet werden, der groß genug ist, um 2 oder mehr Bilder oder Einzelbilder (Frames) zu speichern. So kann ein Dualmodusbetrieb (z.B. ein Aufnehmen eines Standbilds gleichzeitig mit kontinuierlichen Videostromoperationen) aufgrund des auf der Videokarte vorhandenen großen Video-RAM in dem Videokonferenzsystem implementiert werden.
  • Aufgabe der Erfindung ist es, ein Verfahren zum Bereitstellen gleichzeitiger Videolaufbild- und Standbildaufnahmeoperationen in einer mit einem Computer verbundenen Digitalkamera zu schaffen, das bzw. die die Nachteile und Einschränkungen des Standes der Technik überwindet, ohne die Kosten der Kamera zu erhöhen.
  • Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst.
  • Vorteilhafte und/oder bevorzugte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
  • Die Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung der vorliegenden Erfindung ersichtlich, in welcher:
  • 1 eine Darstellung der Systemumgebung eines Ausführungsbeispiels der vorliegenden Erfindung ist;
  • 2 eine logische Blockdarstellung einer Digitalbildaufnahmeeinrichtung, wie beispielsweise einer Digitalkamera, ist;
  • 3 eine Architektur eines Digitalkamerabildverarbeitungssystems nach einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht;
  • 4 ein logisches Ablaufdiagramm der Signalverarbeitungsschritte, die in Übereinstimmung mit einem Ausführungsbeispiel der vorliegenden Erfindung durchgeführt werden, ist;
  • 5 eine Blockdarstellung der Host-Computersystembasierten Komponenten ist, die mit der Digitalkamera zusammenwirken;
  • 6 eine Blockdarstellung eines Kameragerätetreibers ist; und
  • 7A und 7B Ablaufdiagramme der Schritte zum Aufnehmen und Wiedergewinnen eines Standbildes aus der Digitalkamera sind.
  • In der folgenden Beschreibung werden verschiedene Aspekte der vorliegenden Erfindung beschrieben. Für Fachleute ist es jedoch klar, daß die vorliegende Erfindung mit nur einigen oder auch sämtlichen Aspekten der vorliegenden Erfindung ausgeführt werden kann. Aus Gründen der Erläuterung werden spezielle Anzahlen, Materialien und Konfigurationen angegeben, um ein besseres Verständnis der vorliegenden Erfindung zu erreichen. Für einen Fachmann ist es jedoch ebenfalls klar, daß die vorliegende Erfindung auch ohne die speziellen Details ausgeführt werden kann. An anderen Stellen werden gut bekannte Merkmale fortgelassen oder vereinfacht, um die vorliegende Erfindung nicht zu verdunkeln.
  • Ein Ausführungsbeispiel der vorliegenden Erfindung ist ein Verfahren und eine Einrichtung zum Bereitstellen wahrer Dual-Modus-Merkmale für eine Digitalkamera, wodurch die Digitalkamera und ein zugehöriges Computersystem die gleichzeitige Aufnahme von Standbildern und Videolaufbildoperationen (video streaming operations) unterstützen. Die Dual-Modus-Standbildaufnahme gemäß der vorliegenden Erfindung wird wahrscheinlich durch irgendjemanden verwendet, der den kon tinuierlichen Video-Betriebsmodus (streaming video) verwendet, um die Inhalte einer Reihe von auf einem Computermonitor angezeigten Bildern zu überwachen, während auf eine richtige Bildzusammensetzung gewartet wird, bevor ein Standbildaufnahmekommando ausgegeben wird. Beispielsweise kann ein professioneller Fotograf, ein Hobbyfotograf oder gar ein Anfänger den Dualmodus benutzen, um ein Bild mit seiner Digitalkamera aufzunehmen, während er gleichzeitig ein Video einer Szene filmt. Bei einem anderen Beispiel werden in einem Videomodus betriebene Kameras manchmal als Überwachungs kameras verwendet. Unter Verwendung der vorliegenden Erfindung kann ein Bediener Standbildaufnahmekommandos ausgeben, wenn interessierende überwachte Ereignisse auftreten. Alternativ kann ein Echtzeitbildanalyseprogramm automatisch Standbildaufnahmekommandos erzeugen, wenn die Szenenzusammensetzung, die von der Kamera aufgezeichnet wird, interessant wird oder mit modifizierbaren vorgegebenen Parametern übereinstimmt.
  • 1 ist eine schematische Darstellung der Systemumgebung eines Ausführungsbeispiels der vorliegenden Erfindung. Eine Digitalkamera 10 wird von einem (nicht gezeigten) Benutzer betrieben, um Standbilder aufzunehmen, und um Videolaufbilder zu erzeugen. Die Digitalkamera ist mit einem Host-Computersystem 12 über ein Kabel 14 gekoppelt. Das Host-Computersystem kann irgendein Mehrzweckcomputersystem sein, einschließlich eines Personalcomputers (PCs), einer Workstation und dergleichen, die sämtlich wenigstens eine Verarbeitungseinheit und wenigstens einen Speicher zum Speichern maschinenlesbarer Befehle aufweisen. Bei einem Ausführungsbeispiel implementiert das System die Kommunikationsschnittstelle des universellen seriellen Busses (USB). Der USB ist eine Peripheriebusspezifikation, die ein "plug and play" von Computerperipherieeinrichtungen außerhalb des PCs bringt, die Notwendigkeit zum Installieren gedruckter Schaltungsplatinen in spezielle Computersteckplätze und zum Umkonfigurieren des Systems, wenn eine neue Peripherieeinrichtung hinzugefügt wird, beseitigt. Mit dem USB ausgestattete Computer ermöglichen es, daß Peripherieeinrichtungen automatisch konfiguriert werden, sobald sie physisch angekoppelt sind. Der USB ist in 1 als Kabel 14 dargestellt. Alternativ können andere Kommunikationsschnittstellen zwischen einem Computersystem und Computerperipherieeinrichtungen verwendet werden.
  • 2 ist eine logische Blockdarstellung einer Digitalbildaufnahmeeinrichtung, wie beispielsweise einer Digi talkamera. Die Digitalkamera 100 arbeitet in wenigstens zwei Betriebsmodi, um Stand- und Videobilder über das gleiche Signalverarbeitungssystem bereitzustellen. Bei einem Ausführungsbeispiel liefert das Signalverarbeitungssystem Video- und Standbilddaten aus den gleichen detaillierten ursprünglichen Bildsensorsignalen, indem digitale Bildverarbeitungsoperationen in einer verketteten Weise durchgeführt werden. Die ursprünglichen Bildsensorsignale werden digitalisiert und zum räumlichen Skalieren aufbereitet und dann in komprimierte Daten dekorreliert und codiert. Die verschiedenen Bildverarbeitungsoperationen werden in einer umprogrammierbaren Logikschaltung implementiert, auf die über einen Computerbus, wie beispielsweise den USB, zugegriffen werden kann, oder alternativ durch Programmieren eines Hochleistungsdatenprozessors, um die Operationen in Software auszuführen.
  • Die Digitalkamera 100 enthält einen Video- und Standbildverarbeitungsblock 110, eine ein Linsensystem 104 und eine Blende 108 aufweisende optische Schnittstelle, die dem einfallenden Licht ausgesetzt wird, das von einem Objekt 102 reflektiert wird, dessen Bild aufgenommen werden soll. Die Kamera 100 kann darüber hinaus ein Blitzlicht oder einen elektronischen Blitz zum Erzeugen einer zusätzlichen Beleuchtung enthalten, um das Objekt 102 zusätzlich zu beleuchten, wenn die Kamera bei Bedingungen geringer Beleuchtung betrieben wird.
  • Das Linsensystem 104 weist vorzugsweise eine feste Brennweite auf, welche sowohl für Video- als auch Standbildoperationen akzeptabel ist, da ein Abfall in der Modulationsübertragungsfunktion (MTF) der optischen Schnittstelle (und somit eine Verschlechterung der Bildqualität) für Objekte im Nahbereich (wie beispielsweise das Gesicht eines Benutzers während einer Videokonferenz) im Videomodus toleriert werden kann. Die optische Schnittstelle weist einen Blendenmechanismus 108 auf, um die Menge des auf den Sensor auftreffenden Lichtes und die Tiefenschärfe zu steuern und kann sowohl für Video- als auch für Standbildbetrieb mit nur zwei Einstellungen konfiguriert werden, wie es unten beschrieben wird.
  • Die optische Schnittstelle kanalisiert das einfallende Licht auf einen elektronischen Bildsensor 114. Der Bildsensor 114 weist eine Reihe von Pixeln auf, welche elektrisch auf die einfallende Lichtintensität und -farbe ansprechen. Der Sensor 114 erzeugt Signale, die ein aufgenommenes Bild mit einer ausreichenden Auflösung darstellen, um als Standbild akzeptabel zu sein. Ein (nicht gezeigter) A/D-Umsetzer, der die vom Licht erzeugten analogen Sensorsignale empfängt, kann in dem Sensor 114 enthalten sein und wird verwendet, um digitale Sensorsignale zu erzeugen, die ein Digitalbild des belichteten Objekts 102 und der begleitenden Szene definieren. Alternativ stellt der Sensor 114 Analogsignale dem Block 110 zur Verfügung, welcher wiederum eine Analogsignalverarbeitung an den Signalen durchführen kann, bevor er sie in ein digitales Format konvertiert. Bei beiden Szenarien definieren die digitalisierten Sensorsignale somit Bilddaten, welche dann gemäß der Bildverarbeitungsmethodik durch den Video- und Standbildblock 110 verarbeitet werden, um Standbilder oder eine Sequenz von Videobildern, die eine Bewegung des belichteten Objekts oder der Szene zeigen, zu bilden, was davon abhängt, ob der Standbild- oder der Video-Betriebsmodus ausgewählt worden ist.
  • Die Modusauswahl kann von dem Benutzer der Einrichtung 100 über (nicht gezeigte) mechanische Steuereinrichtungen an der Einrichtung 100 vorgenommen werden. Einstellungen mechanischer Knöpfe können von einer lokalen Benutzerschnittstelle 158 empfangen und in Steuersignale und Daten umgesetzt werden, die von einer Systemsteuereinrichtung 160 verarbeitet werden sollen. Die Einrichtung 100 kann mit einem Host-Computer, wie beispielsweise einem PC, für den Videomodus über eine Host-PC-Kommunikationsschnittstelle 154 verbunden werden. Diese Host-PC-Kommunikationsschnittstelle verbindet mit dem Kabel 14 gemäß 1, Der Videomodus kann nur dann verwendet werden, wenn die Kamera mit dem Computersystem verbunden ist. Der Benutzer kann die Modusauswahl über eine auf dem Host 12 gemäß 1 ablaufende Software vornehmen, welche wiederum die richtigen Steuersignale und Daten an die Systemsteuereinrichtung 160 über die Host-PC-Schnittstelle 154 übermittelt.
  • Die Systemsteuereinrichtung 160 organisiert die Aufnahme von Video- und Standbildern in Abhängigkeit von der von dem Benutzer in der oben ausgeführten Weise getroffenen Modusauswahl. Die Systemsteuereinrichtung 160 konfiguriert den Video- und Standbildverarbeitungsblock 110, um entweder Standbilddaten oder Videobilddaten, die eine Sequenz von Videoeinzelbildern zeigen, bereitzustellen. Die Bilder werden dann innerhalb der Einrichtung 100 gespeichert und/oder zu dem Host/PC für eine Dekompression (sofern die Bilder komprimiert worden sind), Wiedergabe und/oder Anzeige übertragen.
  • Die Digitalkamera 100 enthält eine lokale Speichereinrichtung 122, welche die Standbilddaten empfängt und speichert. Die Speichereinrichtung 122 kann einen Flash-Halbleiterspeicher und/oder eine Einrichtung mit einem rotierenden Medium enthalten. Der Flash-Speicher kann entnehmbar sein, wie beispielsweise der von der Intel Corporation im Handel erhältliche Miniaturkarten-Flash-Speicher. Das rotierende Medium kann ebenfalls entnehmbar oder fest eingebaut sein und kann von der Art einer Magnetplatte oder einer anderen Art sein, die zum Speichern von Bilddateien geeignet ist.
  • Die Bilddaten können auch über die Host-PC-Kommunikationsschnittstelle 154 aus der Kamera 100 heraus übertragen werden. Die Kommunikationsschnittstelle 154 kann so konfiguriert werden, daß sie sowohl Standbild- als auch Videobilddaten zu dem Host-PC in Übereinstimmung mit einem Computerperipheriebusstandard überträgt. Die verwendeten Busstan dards sind beispielsweise die serielle Schnittstelle RS-232, der universelle serielle Bus (USB) oder der Hochleistungsstandard 1394–1995 des Institute of Electrical and Electronics Engineers (IEEE).
  • Wie oben erwähnt, ist die Kamera sowohl optisch als auch elektronisch so konfigurierbar, daß sie in eine Reihe von Modi betrieben werden kann, die einen Videomodus, wie beispielsweise während Videokonferenzen, und einen Standbildmodus, wie beispielsweise dann, wenn Bilder in einer der Verwendung herkömmlicher transportabler Kameras ähnlichen Weise aufgenommen werden, einschließen. Von einem optischen Standpunkt aus ist ein Linsensystem 104 mit fest vorgegebener Brennweite, wie beispielsweise eines, das eine effektive Brennweite von 10 mm aufweist, vorzuziehen und kann für beide Modi verwendet werden, um die Kosten der Herstellung des Apparats gemäß dem Ausführungsbeispiel zu reduzieren. Bei dem in Videokonferenzen und bei Anwendungen mit schnellen Einzelbildraten zum Einfangen einer Bewegung verwendeten Videomodus kann eine Blende 108 von etwa f/2 ausgewählt werden. Der primäre Brennpunkt für diese Blendeneinstellung liegt vorzugsweise bei einem Abstand von etwa einem Meter für das Objekt 102 bei einer Tiefenschärfe für den Hintergrund, die sich auf 2 m erstreckt.
  • In dem Standbildbetriebsmodus können Standbilder akzeptabler Qualität für sowohl Außen- als auch Innenszenen aufgenommen werden. Für Innenszenen kann der Beleuchtungspegel so gering sein, daß er ein zusätzliches Licht erfordert, das von einem Blitzlicht oder elektronischen Blitz 112 erzeugt wird. Man würde normalerweise eine Blende 108 zwischen f/2 und f/8 für Innenszenen auswählen. Innerhalb dieses Blendenbereichs befindet sich der primäre Brennpunkt bei einem Abstand von etwa 2 m für das Objekt bei einer Tiefenschärfe für den Hintergrund, die sich auf 4 m erstreckt. Für Außenszenen mit Umgebungslicht liegt der primäre Brennpunkt vorzugsweise bei einem Abstand von etwa 2 bis 3 m für das Objekt bei einer Tiefenschärfe, die sich auf unendlich erstreckt. Normalerweise würde man eine Blende von etwa f/8 für Außenszenen auswählen, um diesen Brennpunkt zu erreichen.
  • Die Kamera 100 kann außerdem elektronisch für einen Dual-Modus-Betrieb konfiguriert werden, indem der Video- und Standbildverarbeitungsblock 110 so konfiguriert wird, daß er entweder Standbilddaten oder eine Sequenz von Videobildern bereitstellt. Bei einem Ausführungsbeispiel implementiert der Block 110 digitale Signal- und Bildverarbeitungsfunktionen in Form einer Logikschaltung und/oder eines programmierten Datenprozessors, um aus detaillierten ursprünglichen Bilddaten, die von dem Sensor 114 empfangen werden, komprimierte Bilddaten mit einer vorgegebenen Auflösung und einem vorgegebenen Kompressionsverhältnis zu erzeugen. Ein derartiger Block 110 ist in 3 veranschaulicht, welche eine logische Blockdarstellung eines Teils eines Bildverarbeitungssystems 200 einer Digitalkamera (oder einer anderen Bildaufnahmeeinrichtung) nach einem Ausführungsbeispiel der vorliegenden Erfindung ist.
  • 3 zeigt für ein Ausführungsbeispiel der Erfindung ein Datenflußdiagramm des Pfades, der von den Bilddaten für sowohl den Video-Betriebsmodus als auch den Standbildbetriebsmodus genommen wird. Der Verarbeitungsblock 110 enthält eine Kette von Bildgebungsfunktionen, welche mit einem Korrekturblock 210 beginnen kann. Der Korrekturblock 210 wird immer dann verwendet, wenn die Qualität der ursprünglichen, aus dem Sensor 114 empfangenen Bilddaten irgendeine Art einer Vorverarbeitung rechtfertigt, bevor das Bild skaliert und komprimiert wird. In bestimmten Fällen führt der Korrekturblock 210 eine Pixelsubstitution, -kompandierung und Gammakorrektur an den ursprünglichen Bilddaten aus, die aus dem Bildsensor empfangen werden. Die ursprünglichen Bilddaten sollten ausreichende Details aufweisen (z.B. eine räumliche Auflösung von 768 × 576 oder mehr wird bevorzugt), um Standbilder akzeptabler Qualität zu erbringen.
  • Die Pixelsubstitution kann im Block 210 durchgeführt werden, um ungültige Pixeldaten durch gültige Daten zu ersetzen, um eine deterministischere Eingabe für nachfolgende Bildgebungsfunktionen bereitzustellen. Die Kompandierung kann durchgeführt werden, um die Auflösung jedes Pixels (die Anzahl der Bits pro Pixel) zu verringern. Beispielsweise können die ursprünglichen Bilddaten mit 10 Bits pro Pixel eintreffen, wohingegen eine bevorzugte Pixelauflösung für die Logikschaltung 8 Bits (1 Byte) sein kann. Eine herkömmliche Gammakorrektur kann außerdem ausgeführt werden, um den Informationsinhalt des Bildes an denjenigen anzupassen, der von dem Host-Computer, bei dem das Bild schließlich angezeigt wird, erwartet wird.
  • Andere Funktionen, die im Block 210 an jedem empfangenen ursprünglichen Bildrahmen durchgeführt werden können, umfassen eine Festmusterrauschreduktion, welche oftmals erforderlich ist, bevor ein Bild komprimiert wird. Ob oder welche Korrekturfunktionen durch den Block 210 ausgeführt werden, hängt, wie bereits gesagt, allgemein von der Qualität der ursprünglichen aus dem Sensor 114 empfangenen Bilddaten ab, sowie von irgendeiner nachfolgenden Bildverarbeitung, wie beispielsweise einer Kompression, die durchgeführt werden soll, bevor die Bilddaten zur Speicherung oder Übertragung an den Host-Computer bereit sind.
  • Sobald die ursprünglichen Bilddaten korrigiert oder auf andere Weise in eine gewünschte Größe oder ein gewünschtes Format durch den Korrekturblock 210 gebracht worden sind, können die korrigierten Daten ggf. skaliert und komprimiert werden, um die Übertragungs- und Speicheranforderungen der Host-PC-Kommunikationsschnittstelle 154 und der lokalen Speichereinrichtung 122, wie sie in 2 zu sehen sind, zu erfüllen. Um derartige Anforderungen zu erfüllen, kann der Verarbeitungsblock 110 eine Skalierungs- und Kompressi onslogik 212 enthalten, um irgendeine erforderliche Bildskalierung und Kompression vor der Übertragung und/oder Speicherung durchzuführen.
  • Beispielsweise kann die Skalierungs- und Kompressionslogik 212 konfiguriert werden, um die Bildgröße und Bildauflösung zu reduzieren, um kleinere, weniger detaillierte Videobilder im Vergleich zu größeren und detaillierteren Standbildern hervorzubringen. Kleinere und weniger detaillierte Bilddaten können erforderlich sein, um eine schnelle Sequenz von Videobildern zu übertragen, die komprimiert und in dem Host/PC betrachtet werden sollen. Wenn jedoch die Übertragungsverbindung zwischen der Kamera 100 und dem Host/PC eine ausreichende Bandbreite aufweist, um eine Sequenz von detaillierten ursprünglichen Bilddaten bei der erforderlichen Rate an den Host/PC zu übertragen, dann kann die Skalierungs- und Kompressionslogik 212 vereinfacht oder sogar fortgelassen werden für sowohl Standbild- als auch Videooperationen.
  • Eine Reihe digitaler Bildverarbeitungsfunktionen sind für die Kompressionslogik 212, wie sie in 3 gezeigt ist, vorgesehen. Diese und andere in ihrer Funktion ähnliche können in der unten beschriebenen Weise durch einen Fachmann in Abhängigkeit von der Leistung (Geschwindigkeit der Wiedergabe der komprimierten Bilddaten) und der aus dem System 200 bei gegebener in der Kamera 100 verwendeter optischer Schnittstelle gewünschten Bildqualität konfiguriert werden. Die Bildgebungsfunktionen wurden bei einem Ausführungsbeispiel als separate Einheiten der Logikschaltungen implementiert, wie es in 3 gezeigt ist und welche im folgenden beschrieben werden.
  • Die Skalierungslogik 214 führt eine räumliche 2-D-Skalierung der korrigierten Bilddaten durch, um kleinere Bilder hervorzubringen, die einfacher zu speichern oder zu übermitteln sind. Die Skalierung wird in Übereinstimmung mit einem ausgewählten Skalierverhältnis unter Verwendung herkömmli cher bekannter Techniken durchgeführt. Das Skalierverhältnis kann ganzzahlig oder gebrochen sein. Die Skalierung kann in einer zweidimensionalen Weise durchgeführt werden, indem beispielsweise zwei separate eindimensionale Skalierungsprozesse benutzt werden.
  • Die Skalierungslogik 214 kann sowohl für Video- als auch Standbildaufnahmen verwendet werden, indem einfach das geeignete Skalierungsverhältnis ausgewählt wird. Beispielsweise kann eine 4:1-Subabtastung des korrigierten Bildes im Videomodus durchgeführt werden, so daß 16 Pixel aus den korrigierten Bilddaten miteinander gemittelt werden, um ein Pixel in den skalierten Bilddaten zu erzeugen. Auf der Grundlage der Standardabtasttheorie und unter der Annahme unkorrelierter Rauschquellen kann die Subabtastung darüber hinaus das Signal-Rausch-Verhältnis um einen Faktor von 4 verbessern. Geringere Skalierverhältnisse, wie beispielsweise 2:1, können außerdem verwendet werden, wobei 4 Pixel miteinander gemittelt werden, um ein einzelnes Pixel in den skalierten Bilddaten zu erzeugen, was zu einer Verbesserung des Signal-Rausch-Verhältnisses (SNR) von 2 führt. Indem die detaillierteren korrigierten Bilddaten auf diese Weise während des Betriebs im Videomodus skaliert werden, kompensiert das System 200 das erhöhte Rauschen infolge des geringeren Lichtpegels, das typischerweise beim Videobetrieb, wie beispielsweise während einer Videokonferenz, angetroffen wird.
  • Der nächste in der Kette der Bildfunktionsblöcke in 3 ist die Dekorrelations- und Codierlogik 220. Die aus der Skalierlogik 214 empfangenen skalierten Bilddaten werden in Vorbereitung einer Entropiecodierung, welche eine Art einer Bildkompression ist, mit Übereinstimmung mit einer ausgewählten Methode einer Reihe von Dekorrelationsmethoden dekorreliert. Wiederum kann der Benutzer eine bestimmte Dekorrelationsmethode auswählen, die zum Erlangen der normalerweise geringer dimensionierten Videobilder geeignet ist.
  • Die Dekorrelationsfunktion kann Fehlerbilddaten als Differenzen zwischen Nachbarpixeln erzeugen. Eine spezielle Methode, die zur Bilddekorrelation verwendet werden kann, ist die digitale Pulscodemodulation (DPCM). Um ggf. eine weitere Kompression der Bilddaten zu erhalten, beispielsweise bei der Übertragung einer großen Anzahl von Videoeinzelbildern, kann ein "Verlust" in Form eines "Quantisierungs"-Fehlers (durch Abbildung einer ersten Datenmenge auf eine geringere Menge von Werten) unter Verwendung von DPCM eingebracht werden.
  • Die nächste Stufe in der Kette der Bildgebungsfunktionsblöcke ist die vom Block 222 durchgeführte Entropiecodierung, welche eine Technik einer Codierung variabler Länge verwendet, um die dekorrelierten Bilddaten zu komprimieren. Beispielsweise ist eine allgemein bekannte Entropiecodierungsmethode, die verwendet werden kann, die Huffman-Codierung. Die Entropiecodierung umfaßt das Ersetzen von Symbolen in den dekorrelierten Bilddaten durch Bitketten auf eine Weise, bei der unterschiedliche Symbole durch binäre Ketten unterschiedlicher variabler Längen dargestellt werden, wobei die am häufigsten auftretenden Symbole durch die kürzesten Binärketten dargestellt werden. Die Entropiecodierungslogik 222 stellt somit komprimierte Bilddaten zur Verfügung, wie es beispielsweise in 3 zu sehen ist, bei der die skalierten 8-Bit-Daten in Daten codiert werden, die eine variable Größe von 3–16 Bits aufweisen.
  • Wiederum können die Codierungsmethoden zum Erlangen von Video- und Standbildern unterschiedlich und in Abhängigkeit vom Betriebsmodus ausgewählt werden. Beispielsweise kann ein größerer Satz von Symbolen (die eine variable binäre Zeichenkettenlänge aufweisen) zum Codieren von Standbilddaten im Vergleich zu Videobilddaten verwendet werden. Dies beruht darauf, daß in dem Host/PC mehr Zeit verbleibt, um Standbilder zu dekomprimieren, als zum Dekomprimieren von Videobildern. Andererseits sollte zum Codieren von Videobildern eine eingeschränktere Menge von Symbolen mit gleichförmigen binären Kettenlängen benutzt werden, um eine schnellere Dekompression einer Serie von Videoeinzelbildern zu erreichen. Das Vorhandensein einer gleichförmigen binären Kettenlänge gestattet darüber hinaus die Verwendung eines festen Betrags der Bandbreite, um die Bilddaten zu übermitteln, was speziell geeignet ist für eine Host/PC-Schnittstelle, wie beispielsweise dem USB.
  • Das Bildverarbeitungssystem 200 enthält zusätzliche Logik, die den oben beschriebenen Dual-Modus-Betrieb erleichtert. Insbesondere verwendet die Logikschaltung in den Blöcken 210 und 212 programmierbare Nachschlagetabellen (LUTs) und Speicher mit wahlfreiem Zugriff (RAM) für eine Flexibilität bei der Durchführung ihrer jeweiligen Bildgebungsfunktionen. Jede LUT oder jeder RAM liefert Informationen an ihre/seine jeweilige Bildgebungsfunktionslogik, wie sie von der ausgewählten Methode für den speziellen Betriebsmodus spezifiziert werden. Beispielsweise verwendet die Skalierungslogik 214 einen RAM-Speicherbereich, um Skalierungszwischenberechnungen zu speichern. Auch die LUT 234 für die Dekorrelations- und Codierlogik kann in Abhängigkeit davon, ob Stand- oder Videobilder erwünscht sind, mit unterschiedlichen Regeln und Daten geladen werden, die zum Durchführen der Dekorrelation und Codierung erforderlich sind, wie sie im Stand der Technik bekannt sind. Bei einem speziellen Ausführungsbeispiel werden zwei Nachschlagetabellen (LUTs) für die LUT 234 verwendet, eine zum Auflisten der Zeichen (ein sogenanntes "Codebuch") und eine zum Auflisten der Kettenlängen.
  • Es können verschiedene Techniken verwendet werden, um die geeigneten Werte zu bestimmen, die in den RAM und die LUTs geladen werden sollen. Beispielsweise kann eine Bildmessung durch die Kamerasteuereinheit 160 durchgeführt werden, um Beleuchtungs- und andere Faktoren zu bestimmen, welche die Dekorrelation und Entropiecodierung beeinflussen. Darüber hinaus können, wie zuvor erwähnt, Übertragungs- und Speicheranforderungen eine größere Kompression diktieren, insbesondere während des Videobetriebs, wo eine große Anzahl von Einzelbildern erzeugt wird, so daß die LUTs für die Dekorrelation und Entropiecodierung ein kleineres Codebuch für die Kompression der Bilddaten enthalten.
  • Obwohl die oben beschriebenen verschiedenen LUTs und RAM als Teil einer einzigen physikalischen RAM-Einheit implementiert oder alternativ in verschiedenen Kombinationen als eine oder mehrere RAM-Einheiten kombiniert werden können, wird jede LUT und jeder RAM vorzugsweise in einer physisch separaten Einheit implementiert, um eine schnellere Leistung der Bildgebungsfunktionen zu erreichen.
  • Nachdem die Bilddaten gemäß dem gewünschten Modus durch die Kompressionslogik 212 komprimiert worden sind, werden die jetzt eine variable Größe aufweisenden Daten dann zu der Datenpackeinheit 226 weitergeleitet, wo die Daten in Datensegmente konstanter Größe und folglich besser handhabbarer Datensegmente für eine effektivere Speicherung und Übertragung über einen Computerbus gepackt werden. Sofern die Bilddaten aus dem Sensor 114 ausreichend akzeptabel sind und es keine weiteren Übertragungs- oder Speicherbeschränkungen bei solchen Daten gibt, so wird wiederum die Datenpackeinheit überflüssig, da die Sensorbilddaten eine konstante Größe aufweisen und auf einfache Weise gespeichert und aus dem Apparat 100 bei minimaler Verarbeitung übertragen werden können.
  • In der Datenpackeinheit 226 werden die empfangenen Datenblöcke verschiedener Größe in Blöcke gepackt, die eine vorgegebene konstante Größe aufweisen. Beispielsweise bei dem System 200 gemäß 3 packt die Datenpackeinheit die komprimierten Bilddaten variabler Größe in 16-Bit-Blöcke. Die 16-Bit-Blöcke werden dann an eine Datenflußsteuereinrichtung 238, wie beispielsweise eine Direktspeicherzugriffs(DMA)-Steuereinrichtung, weitergeleitet, welche dann Adreßinformationen jedem Datenblock hinzufügt, bevor auf einen Bus 242 zugegriffen wird, um die 16-Bit-Blöcke auf den Bus weiterzuleiten. Die Speichersteuereinrichtung 246 nimmt die 16-Bit-Blöcke über den Bus 242 auf und speichert sie vorübergehend in einem Speicher, wie beispielsweise einem (nicht gezeigten) dynamischen RAM (DRAM) in der Kamera 100.
  • Alternativ zur Verwendung einer entnehmbaren Speichereinrichtung kann die Host/PC-Kommunikationssteuereinrichtung 154 verwendet werden, um sowohl die Standbilder als auch Videobilder aus der Kamera 100 hinaus zu übertragen. Dies kann durchgeführt werden, indem die Standbilddaten als eine zur Übertragung unter Verwendung des speziellen Busstandards, der in der Kommunikationsschnittstelle verwendet wird, geeignete Plattendatei vorbereitet werden, die zu dem Host-Computer 12 für eine Speicherung und für einen Zugriff durch den Host-Prozessor (nicht gezeigt) übertragen werden soll. Die Videobilddaten können in Übereinstimmung mit bekannten Techniken an den Host-Computer über eine Steuerschnittstelle, wie beispielsweise USB, kontinuierlich fortgeleitet (streamed) werden.
  • Der Dual-Modus-Betrieb der Kamera 100 und des Verarbeitungssystems 200 wurden im Kontext einer bus-basierten Ar chitektur beschrieben, die in 3 gezeigt ist. Um eine Softwaresteuerung der verschiedenen Betriebsmodi in dieser Architektur weiter zu erleichtern, kann eine Reihe von (nicht gezeigten) speicher-abgebildeten Steuerregistern mit dem Bus 242 gekoppelt werden, um der Systemsteuereinrichtung 160 zu ermöglichen, die Kamera 100 und das System 200 mit dem gewünschten Betriebsmodus zu konfigurieren. Es können Befehle vorgesehen sein zur Ausführung durch die Systemsteuereinrichtung, um auf die LUTs, den RAM und die Steuerregister über den Bus 242 zuzugreifen, um die für die richtige Bildverarbeitungsmethode des ausgewählten Betriebsmodus erforderlichen Parameter zu programmieren. Beispielsweise können die unterschiedlichen Regeln und Parameter für Skalierungs-, Dekorrelations- und Entropiecodierungsmethoden für sämtliche Betriebsmodi als Steuerinstruktionen in der Kamera 100 während der Herstellung gespeichert werden, wobei jedem Betriebsmodus ein unterschiedlicher Satz von Methoden zugewiesen wird. Der geeignete Satz kann in Abhängigkeit von einer durch den Benutzer getroffenen Modusauswahl, die entweder über die lokale Benutzerschnittstelle 158 oder die Host/PC-Kommunikationsschnittstelle 154 ausgeführt wurde, in den Video- und Standbildblock 110 geladen werden.
  • Obwohl ein Ausführungsbeispiel des Video- und Standbildblocks 110 eine Logikschaltung darstellt, kann das Bildverarbeitungssystem 200 auch mit einem programmierten Hochleistungsprozessor ausgerüstet werden, der Instruktionen ausführt, um die Digitalbildgebungsfunktionen des Blockes 110 durchzuführen. Beispielhafte Schritte, die von einem derartigen Prozessor ausgeführt werden können, sind in 4 veranschaulicht und können leicht auf der Grundlage der oben genannten Beschreibung des Korrekturblocks 210 und der Kompressionslogik 212 in dem Video- und Standbildverarbeitungsblock 110 des Ausführungsbeispiel in 3 verstanden werden. Die Sequenz der Schritte in 4 kann von der Systemsteuereinrichtung 160 oder durch einen (nicht gezeigten) separaten speziellen Prozessor, der ebenfalls mit dem Bus 242 gekoppelt wird, durchgeführt werden.
  • Um die Beschreibung der Kamera zusammenzufassen: die oben beschriebenen Ausführungsbeispiele können in einem Apparat, wie beispielsweise einer Digitalkamera, verwendet werden, der sowohl in einem Standbildmodus (zur Aufnahme von Standbildern, wenn er transportabel oder angekoppelt ist) als auch in einem Videomodus (bei dem die Digitalkamera über eine Computerperipheriebusschnittstelle mit einem Host-Computer oder einem anderen Bildbetrachtungssystem verbunden ist) arbeitet. Die Kamera weist einen Bildsensor und einen Video- und Standbildverarbeitungsblock 110 auf, der so konfiguriert ist, daß er detaillierte Bilder im Standbildmodus bei sowohl Innen- als auch Außenszenen aufnimmt. Im Videomodus kann die Kamera so konfiguriert werden, daß sie eine Sequenz detaillierter Bilder (sofern für die Übertragung und Speicherung erforderlich) unter Verwendung desselben Verarbeitungsblocks 110 komprimiert, um eine Videosequenz aufzunehmen, die an den Host-Computer zur Betrachtung über eine Computerperipheriebusschnittstelle, wie beispielsweise dem USB, übermittelt werden kann.
  • Die oben beschriebenen Ausführungsbeispiele der Digitalkamera sind selbstverständlich einigen Variationen in der Struktur und Implementierung unterworfen. Obwohl beispielsweise der Bilddatenpfad bei dem Verarbeitungsblock 110 mit anfänglich 8 Bit Breite und bis zu 16 Bit, wenn komprimiert, gezeigt ist, erkennt ein Fachmann, daß die Erfindung unter Verwendung anderer Datenpfadbreiten implementiert werden kann. Außerdem kann die Systemsteuereinrichtung 160 mit der Datenflußsteuereinrichtung 238 zu einer physikalischen integrierten Schaltungseinheit, wie beispielsweise einem Mikrocontroller, kombiniert werden.
  • 5 ist eine Blockdarstellung der host-computersystem-basierten Komponenten, die mit der Digitalkamera zusammenwirken. Die Digitalkamera 10 ist mit dem Computersystem 12 über eine Busschnittstelle 14 gekoppelt. Bei einem Ausführungsbeispiel ist die Schnittstelle der USB. Ein Anwendungsprogramm zum Betrachten eines Standbildes und/oder von voll bewegten Videobildern 300 wird von dem Computer im Anwendungsraum ausgeführt. Das Anwendungsprogramm kann zur Bildanzeige und -bearbeitung, für Videokonferenzen oder andere sich auf aufgenommene Bilder und Videoströme beziehende Funktionen verwendet werden. Das Anwendungsprogramm 300 bildet eine Schnittstelle zur Kameragerätetreiber-Software 302, um mit der Digitalkamera 10 zu kommunizieren. Die Kameragerätetreiber-Software wird von dem Computersystem im Betriebssystemraum ausgeführt. Die Schnittstelle zwischen dem Anwendungsprogramm und der Kameragerätetreiber-Software wird durch die Linien 304, 306 und 308 in 5 gezeigt. Die Schnittstelle 304 repräsentiert die Kommandos und Statusnachrichten, die zwischen den zwei Komponenten weitergeleitet werden, die Schnittstelle 306 repräsentiert die Übertragung von Standbildern und Massendaten (wie beispielsweise Kamerainitialisierungsnachschlagetabellen (LUTs)) und die Schnittstelle 308 repräsentiert die Übertragung von Videobildern.
  • Die Kameragerätetreiber-Software 302 liefert die Schnittstelle zwischen Anwendungsprogrammen, die auf dem PC ausgeführt werden, und der Digitalkamera. Der Treiber koordiniert die Kommunikation zwischen dem USB-Kabel 14 durch Interaktion mit einem Busschnittstellentreiber, der USB-Treiber (USBD) 310 genannt wird. Der USBD ist eine Routine auf niedriger Ebene zum Koordinieren der Pakete für sämtliche USB-Gerätetreiber für das Computersystem. Der USBD nimmt Kommandopakete aus dem Kameragerätetreiber und konvertiert sie in elektrische Signale, die über den USB-Hub 312 gesendet werden. Der USB-Hub 312 verbindet mit den I/O-Ports der Steuereinrichtung 314 auf niedriger Ebene, welche mit dem USB-Kabel 14 verbinden. Bei einem Ausführungsbeispiel ist die Steuereinrichtung auf niedriger Ebene ein PIIX-Controller, der von der Intel Corporation im Handel erhältlich ist.
  • Wenn die Digitalkamera mit dem Computersystem verbunden wird, wie in 5 gezeigt ist, wird ein von der Kamera aufgenommenes Bild im internen RAM gespeichert, bis eine Anforderung von der Kamera empfangen wird, das aufgenommene Bild an den Computer zu übertragen. Es gibt drei über die Schnittstelle 304 übermittelte, sich auf die Aufnahme und Übertragung von Standbildern beziehende Kommandos. Das erste Kommando ist das Bildaufnahmekommando. Das Standbild- und/oder Videobetrachtungsanwendungsprogramm 300 sendet dieses Kommando an die Digitalkamera, um die Kamera anzuweisen, den Kamerasensor zu öffnen, das Bild zu belichten und die Kopie des belichteten Bildes an den internen RAM in der Kamera zu kopieren. Das zweite Kommando ist das Kommando zum Anfordern der Größe des Bildes. Das Standbild- und/oder Videobetrachtungsanwendungsprogramm 300 sendet dieses Kommando an die Digitalkamera, um die Größe des aufgenommenen Standbildes in Bytes zu erlangen. Das Anwendungsprogramm weist dann einen Abschnitt des Speichers in dem Host-Computersystem zu, der das Standbild halten soll. Das dritte Kommando ist das Kommando, das das Senden des Bildes anfordert. Das Standbild- und/oder Videobetrachtungsanwendungsprogramm sendet dieses Kommando an die Digitalkamera, um diese zu veranlassen, das aufgenommene Bild an das Computersystem zu übertragen oder hinaufzuladen. Dieses Kommando enthält die Bildgröße in Form einer Anzahl von Bytes, die in Erwiderung des Kommandos zum Anfordern der Größe des Bildes empfangen wurde. Wenn der Betriebsmodus der Videomodus ist, werden die aufgenommenen Bilder an das Standbild- und/oder Videobetrachtungsanwendungsprogramm über die Schnittstelle 308 zurückübertragen. Wenn der Betriebsmodus der Standbildmodus ist, wird das aufgenommene Bild an das Standbild- und/oder Videoanwendungsprogramm über die Schnittstelle 306 zurückübertragen.
  • Bei bekannten Systemen hat die Kamera dann, wenn ein Kommando zum Initiieren einer Bildaufnahme an die Kamera gesendet wurde, das Bild aufgenommen und es in dem internen RAM der Kamera gespeichert. Zu einem nachfolgenden Zeitpunkt forderte das Anwendungsprogramm ein Hinaufladen des aufgenommenen Bildes aus der Kamera an den PC an. Im Standbildmodus arbeitet diese Methode bis zu dem Zeitpunkt, zu dem das Bild in dem internen RAM überschrieben wird. Während Videolaufbildoperationen jedoch wird das aufgenommene Standbild stets unmittelbar durch das nächste Videoeinzelbild, das von der Kamera aufgenommen wurde, überschrieben, da es nur einen Raum in dem internen RAM in der Kamera gibt, um ein einziges Bild zu speichern. Ein Ausführungsbeispiel der vorliegenden Erfindung überwindet dieses Problem auf folgende Weise. Zu irgendeinem Zeitpunkt, zu dem der Kameragerätetreiber 302 ein Bildaufnahmekommando aus dem Standbild- und/oder Videobetrachtungsanwendungsprogramm 300 erfaßt, führt der Kameragerätetreiber die gesamte Bildaufnahme- und Bildwiedergewinnungskommandosequenz als eine unteilbare Operation durch, wodurch bewirkt wird, daß das aufgenommene Bild in dem Host-Computersystem gespeichert wird, bevor es durch das nächste Videobild in der Videostromsequenz, die von der Kamera erzeugt wird, überschrieben werden kann. Diese unteilbare Operation kann nicht durch Ereignisse unterbrochen werden, die sich auf die Videostromverarbeitung beziehen, wodurch gesichert wird, daß das aufgenommene Bild in dem Host gehalten wird. Diese Verarbeitung wird auf Aufforderung zu einem Zeitpunkt durchgeführt, zu dem die Kamera mit dem Host-System gekoppelt ist, was im Endeffekt eine wahre Dual-Modus-Verarbeitungsfähigkeit herstellt. Die Benutzer können dann Standbilder während einer Videostromverarbeitung, wie beispielsweise einer Videokonferenz, aufnehmen.
  • Während Standbilder mit der Sequenz von Bildaufnahme/Bildgrößenanforderung/Bildsendeanforderung-Kommandos übertragen werden, werden laufende Videobilder über eine si gnifikant verschiedene Kommandosequenz übertragen. Zunächst sendet der Kameragerätetreiber ein Kommando an die Digitalkamera, das die Menge der bei jeder Videoübertragungsanforderung zu übertragenden Videodaten einstellt. Die ausgewählte Menge liegt typischerweise zwischen 64 und 768 Datenbytes für jedes Paket von Videodaten, das die Kamera an das Computersystem sendet. Bei einem Ausführungsbeispiel ist das Bild 320 Pixel breit und 240 Pixel hoch, was zu 76800 Bytes für ein einzelnes Videoeinzelbild führt. Somit sind einhundert 768-Byte-Pakete Videodaten erforderlich, um ein vollständiges Videoeinzelbild herzustellen. Der Kameragerätetreiber sendet ein Hole-mehr-Videodaten-Kommando einhundertmal, um ein einziges Videoeinzelbild zu erlangen, sofern die Paketgröße 768 Bytes beträgt. Der Kameragerätetreiber sendet ein Starte-Strom-Videodaten-Kommando an die Kamera. Der Kameragerätetreiber tritt dann in eine Schleife ein, wobei er die Operationen des Sendens eines Hole-mehr-Videodaten-Kommandos an die Kamera, des Anhängens eines Pakets Videodaten an einen Videodaten-Einzelbildpuffer auf dem Host, des Erlangens der Videodaten, bis ein vollständiges Videoeinzelbild empfangen ist, des Durchführens der Videodekompression und Anreicherung an dem Videoeinzelbild und des Sendens des verarbeiteten Videoeinzelbildes an das Anwendungsprogramm durchführt. Im Videomodus wird nur ein Aufnahmekommando gesendet (das Starte-Strom-Kommando), nur ein Größenkommando wird gesendet (dasjenige, das die Größe der einzelnen Pakete der Videodaten einstellt), und jedes Einzelbild Videodaten erfordert viele Datenholanforderungen. Ein Setze-Videodatenpaketgröße-Kommando und das Start-Strom-Kommando werden nur gesendet, wenn der Videomodus gestartet werden soll. Nachdem sie gesendet worden sind, strömen die Videodaten weiter aus der Kamera, solange, wie der Kameragerätetreiber damit fortfährt, Hole-mehr-Videodaten-Kommandos zu senden.
  • 6 ist eine Blockdarstellung des Kameragerätetreibers eines Ausführungsbeispiels der vorliegenden Erfindung. Der Kameragerätetreiber nimmt Kommandos auf und gibt Status und Daten an das Anwendungsprogramm zurück und tritt darüber hinaus mit dem USBD 310 für die Kommunikation mit der Digitalkamera in Interaktion. Die Verarbeite-Zustands- und Statuskommandos-Funktion 400 akzeptiert Kommandos aus dem Anwendungsprogramm, um die Digitalkamera aufzufordern, eine Funktion durchzuführen, und gibt den Status dieser Anforderung an das Anwendungsprogramm zurück. Die Verarbeite-Zustands- und Statuskommandos-Funktion 400 fragt den Kanalzustandsspeicher 402 nach dem aktuellen Status des Kameragerätetreibers und Digitalkamerabetriebs ab.
  • Sofern das empfangene Kommando sich auf die Standbildaufnahme und -wiedergewinnung und ein Herunterladen von Massendaten während der Kamerainitialisierung bezieht, weist die Verarbeite-Zustands- und Statuskommandos-Funktion 400 die Verarbeite-Zustands- und Massenkommandos-Funktion 404 an, das Kommando zu behandeln. Sofern sich das empfangene Kommando auf das Strömen von Video bezieht, weist die Verarbeite-Zustands- und Statuskommandos-Funktion 400 die Verarbeite-Stromkommandos-Funktion 406 an, das Kommando zu behandeln. In beiden Fällen sendet die richtige Funktion 404 oder 406 ein Kommando über den USBD an die Kamera. In Erwiderung werden Bilddaten von der Kamera an den Kameragerätetreiber über den USB gesendet. Wenn eine Massenübertragung von Daten stattfindet (beispielsweise bei der Kamerainitialisierung, wenn Farbnachschlagetabellen (LUTs) oder andere Daten heruntergeladen werden sollen), werden die Daten vor der Übertragung an die Kamera vorübergehend in dem Standbild- und Massenübertragungsspeicher 408 gespeichert. Wenn ein Standbild aus der Kamera gewonnen wird, werden die Bilddaten im Standbild- und Massenübertragungsspeicher 408 gespeichert, bevor sie an das Anwendungsprogramm übertragen werden. Wenn eines einer Serie von Videoeinzelbildern aus der Kamera gewonnen wird, werden die ein Videoeinzelbild bildenden Bilddaten in dem Stromspeicher 410 gespeichert, bevor sie an das Anwen dungsprogramm übertragen werden. Man beachte, daß Standbilddaten und Videodaten in separaten Speicherplätzen innerhalb des Kameragerätetreibers auf dem Host-Computer gespeichert werden. Man beachte außerdem die parallelen Steuerpfade zum Bewirken von Standbild- und Videostromoperationen oder Videolaufbildoperationen, wie sie von der Verarbeite-Standbild- und Massenkommandos-Funktion 404 und der Verarbeite-Stromkommandos-Funktion 406 implementiert werden.
  • Für die Standbildverarbeitung sendet das Anwendungsprogramm ein Bildaufnahmekommando an die Verarbeite-Zustands- und Statuskommandos-Funktion 400. Diese Funktion weist die Verarbeite-Standbild- und Massenkommandos-Funktion 404 an, das Kommando an die Kamera zu senden und riegelt zukünftige Videolaufbildkommandos ab, so daß diese nicht durchgeführt werden, bis die Standbildverarbeitung abgeschlossen ist. Wenn die Standbilddaten durch die Kamera zurückgegeben werden, werden sie von dem USBD 310 in den Standbild- und Massenübertragungsspeicher 408 geladen. Bei Empfang einer Anforderung aus dem Anwendungsprogramm weist die Verarbeite-Standbild- und Massenkommandos-Funktion 404 die Übertragung der Daten an den Anwendungsprogrammraum an und gibt einen Status an die Verarbeite-Zustands- und Statuskommandos-Funktion 400 zurück, welche denselben an das Anwendungsprogramm zurückgibt.
  • Bei der Videostromverarbeitung oder Videolaufbildverarbeitung sendet das Anwendungsprogramm Videostromkommandos an die Verarbeite-Zustands- und Statuskommandos-Funktion 400. Diese Funktion weist die Verarbeite-Stromkommandos-Funktion 406 an, diese Kommandos an die Kamera zu senden. Wenn ein Videoeinzelbild aus der Kamera empfangen wird, wird es in den Stromspeicher 410 von dem USBD 310 geladen. Die Verarbeite-Stromkommandos-Funktion 406 weist dann die Übertragung der Videoeinzelbilddaten an den Anwendungsprogrammraum zur Anzeige an den Benutzer an und gibt einen Status an die Verarbeite-Zustands- und Statuskommandos-Funktion 400 zurück, welche ggf. einen Status an das Anwendungsprogramm zurückgeben kann.
  • 7A und 7B sind Ablaufdiagramme der Schritte zum Aufnehmen und Wiedergewinnen eines Standbildes aus der Digitalkamera nach einem Ausführungsbeispiel der vorliegenden Erfindung. Diese Schritte werden ausgeführt, wenn die Kamera mit dem Computersystem in sowohl dem Standbild- als auch dem Videostrombetriebsmodus gekoppelt ist. Das aufgenommene Standbild kann aus der Flash-Speicherkarte oder dem internen RAM der Kamera kopiert werden. Nach dem Startschritt 500 sendet ein Anwendungsprogramm ein Bildaufnahmekommando an den Kameragerätetreiber beim Schritt 502, was den Treiber anweist, die Kamera zu veranlassen, ein Bild aufzunehmen. Der Treiber überprüft das Kommando und stellt fest, daß es eine Bildaufnahmeanforderung ist. Beim Schritt 504 initiiert der Kameragerätetreiber dann die gesamte Sequenz der Kommandos zum vollständigen Aufnehmen und Wiedergewinnen des Bildes. Zunächst stellt der Kameragerätetreiber fest, ob sich die Kamera in dem Videostrombetriebsmodus befindet. Wenn die Kamera in dem Videostrommodus ist, nimmt sie kontinuierlich ein Bild auf und macht das aufgenommene Bild für ein Hinaufladen zu dem Computer verfügbar. Wenn sich die Kamera gerade im Strommodus befindet, dann zeichnet der Kameragerätetreiber den aktuellen Stromzustand auf und sendet ein Stop-Strom-Kommando an die Kamera beim Schritt 506.
  • Sobald der aktuelle Zustand gesichert ist, sendet der Kameragerätetreiber ein Bildaufnahmekommando über den USB an die Kamera beim Schritt 508. Der Kameragerätetreiber wartet auf den erfolgreichen Abschluß des Bildaufnahmekommandos beim Schritt 510. Der Treiber gibt einen Fehler an das Anwendungsprogramm zurück, sofern das Kommando fehlschlug. Sofern das Kommando erfolgreich ist, wurde das Bild durch die Kamera aufgenommen und ist jetzt im internen RAM der Kamera gespeichert. Der Kameragerätetreiber sendet dann ein Berichte-Bildgröße-Kommando an die Kamera beim Schritt 512. Dieses Kommando ist eine Anforderung, die Größe des aufgenommenen Bildes in Bytes zu erlangen. Beim Schritt 514 wartet der Kameragerätetreiber auf den erfolgreichen Abschluß des Berichte-Bildgröße-Kommandos. Sofern ein Fehler berichtet wird, so gibt der Kameragerätetreiber einen Fehler an das Anwendungsprogramm zurück. Anderenfalls fährt die Verarbeitung bei 7B über den Verbinder 7B fort.
  • Sobald der Kameragerätetreiber weiß, wie groß das Bild ist, muß er die USBD-Schicht vorbereiten, eine Massenübertragung der angegebenen Größe zu gewinnen. Beim Schritt 516 in 7B sendet der Kameragerätetreiber ein Empfange-Massenübertragung-Kommando an den USBD, um diejenige Anzahl von Bytes von Bilddaten zu empfangen, die in Erwiderung des Berichte-Bildgröße-Kommandos zurückgegeben wurde. Die empfangenen Daten werden in dem Standbild- und Massenübertragungsspeicherbereich des Treibers gespeichert. Als Ergebnis dieses Kommandos ist der USBD bereit und wartet darauf, irgendwelche Massendaten zu empfangen, die die Kamera über den USB sendet. Jedoch wird die Kamera solange nicht mit dem Senden der Daten beginnen, bis sie ein Kommando zum Hinaufladen des aufgenommenen Bildes aus dem Treiber empfängt. Der Kameragerätetreiber sendet das Lade-aufgenommenes-Bild-hinauf-Kommando an die Kamera beim Schritt 518. Der Kameragerätetreiber wartet auf den erfolgreichen Abschluß des Kommandos beim Schritt 520. Sofern das Kommando fehlgeht, so wird dann das zuvor an die USBD-Ebene gesendete Empfange-Massenübertragung-Kommando abgebrochen und ein Fehlerstatus wird an das Anwendungsprogramm zurückgegeben. Wenn das Kommando erfolgreich abgeschlossen wird, bedeutet dies nur, daß die Kamera die Anforderung des Treibers zum Hinaufladen des aufgenommenen Bildes empfangen hat. Es bedeutet nicht, daß das Hinaufladen abgeschlossen ist. Das Lade-aufgenommenes-Bild-hinauf-Kommando initiiert die Übertragung des aufgenommenen Bildes. Beim Schritt 522 speichert der USBD aus der Kamera über den USB empfangene Bilddaten in den flag-geschützten Standbild- und Massenübertragungsspeicher auf dem Host-Computersystem. Beim Schritt 524 wartet der Kameragerätetreiber darauf, daß das aufgenommene Bild vollständig gesendet ist, und auf den erfolgreichen Abschluß des Kommandos zum Hinaufladen des aufgenommenen Bildes. Sofern ein Fehler auftritt, wird ein Fehlerstatus an das Anwendungsprogramm zurückgegeben.
  • Bevor das Bildaufnahmekommando abgeschlossen wird, überprüft der Kameragerätetreiber den zuvor aufgezeichneten Zustand der Kamera im Schritt 526. Sofern beim Schritt 528 die Kamera zuvor eine Videosignalausgabe (streaming) ausführte, so sendet dann der Kameragerätetreiber ein Starte-Strom-Kommando an die Kamera, um die Videolaufbildoperationen wieder aufzunehmen. Wenn die Übertragung ohne Fehler abgeschlossen wird, wird ein Erfolgsstatus an das Anwendungsprogramm bei 530 zurückgegeben, und die Verarbeitung endet beim Endeschritt 532. Dies schließt die Verarbeitung des Bildaufnahmekommandos ab. Die Kamera kann jetzt die Ausgabe von Videobildern wieder aufnehmen. Das Bild ist jetzt in einem flaggeschützten Standbild- und Massenübertragungsspeicher auf dem Host-Computersystem zur Verwendung durch das Anwendungsprogramm verfügbar. Das Anwendungsprogramm muß jetzt anfordern, daß das aufgenommene Bild in den Anwendungsprogrammspeicherraum kopiert wird. Es führt dies normalerweise aus, indem die Aufnahmebildgröße angefordert wird, Speicher zum Halten des Bildes zugewiesen wird und dann gefordert wird, daß das Bild kopiert wird. Man beachte, daß deshalb, weil das Bild bereits aus der Kamera zu dem Computersystem hinaufgeladen ist, wenn der Kameragerätetreiber das Erlange-Größe-des-aufgenommenen-Bildes-Kommando aus dem Anwendungsprogramm empfängt, er keine Kommandos an die Kamera zu senden braucht. Er gibt einfach die Größe zurück, die die Kamera zuvor berichtet hat. Wenn in ähnlicher Weise der Kameragerätetreiber das Bildhinaufladekommando aus dem Anwendungsprogramm empfängt, braucht er keine Kommandos an die Kamera zu senden. Er kopiert einfach das Bild aus dem Standbild- und Massenübertragungsspeicher innerhalb des Kameragerätetreiberraums, wo es zuvor gespeichert worden ist, an den Speicherraum des Anwendungsprogramms.
  • Während diese Erfindung unter Bezugnahme auf veranschaulichende Ausführungsbeispiele beschrieben worden ist, soll die Beschreibung nicht in einem einschränkenden Sinne verstanden werden. Verschiedene Modifikationen der veranschaulichenden Ausführungsbeispiele ebenso wie andere Ausführungsbeispiele der Erfindung, welche Fachleuten in den Sinn kommen, an welche sich die Erfindung richtet, werden als innerhalb des Geistes und Umfangs der Erfindung liegend angesehen.

Claims (7)

  1. Verfahren zum Betreiben eines Bildverarbeitungssystems in einem dualen Betriebsmodus, in dem ein Standbild während der Durchführung von digitalen Videostromoperationen einer mit einem Computersystem verbunden Digitalkamera aufgenommen wird, wobei: die digitalen Videostromoperationen der Digitalkamera ausgesetzt werden (506); ein Standbild von der Digitalkamera aufgenommen wird (508, 510); das Standbild als digitale Standbilddaten in einem Speicher in der Digitalkamera gespeichert wird; die digitalen Standbilddaten aus der Digitalkamera an das Computersystem übertragen werden (512518); die digitalen Standbilddaten in einem ersten Speicher des Computersystem gespeichert (522) und digitale Videostromdaten in einem zweiten Speicher des Computersystems gespeichert werden; und die digitalen Videostromoperationen der Digitalkamera wieder aufgenommen werden (526, 528); wobei die obigen Schritte als unteilbare Operation, welche nicht unterbrechbar ist, ausgeführt werden.
  2. Das Verfahren nach Anspruch 1, wobei das Aussetzen (506) der Videostromoperationen das Sichern eines aktuellen Zustands der Videostromoperationen und das Senden eines Stoppe-Strom-Kommandos aus dem Computersystem an die Digitalkamera umfaßt.
  3. Das Verfahren nach Anspruch 2, wobei das Wiederaufnehmen der Videostromoperationen das Überprüfen des gesicherten aktuellen Zustands der Videostromoperationen und, wenn der gesicherte aktuelle Zustand ein Video-Strömen anzeigt, das Senden eines Starte-Strom-Kommandos aus dem Computersystem an die Digitalkamera umfaßt.
  4. Das Verfahren nach Anspruch 1, wobei das Aufnehmen des Standbildes durch die Digitalkamera ferner das Senden (508) eines Bildaufnahmekommandos aus dem Computersystem an die Digitalkamera umfaßt.
  5. Das Verfahren nach Anspruch 1, wobei das Übertragen des Standbildes umfaßt: Gewinnen einer Größe des aufgenommenen Standbildes (512); Anfordern (516, 518) der Übertragung des aufgenommenen Standbildes in Übereinstimmung mit der Größe des aufgenommenen Standbildes; Empfangen des aufgenommenen Standbildes aus der Digitalkamera und Speichern (522) des aufgenommenen Standbildes im Speicher in dem Computersystem.
  6. Das Verfahren nach Anspruch 5, wobei das Computersystem einen Kameragerätetreiber und einen Busschnittstellentreiber aufweist und die Übertragung des aufgenommenen Standbildes das Senden (516) eines Massenübertragungskommandos aus dem Kameragerätetreiber an den Busschnittstellentreiber zum Empfangen von Daten aus der Digitalkamera und das Senden (518) eines Kommandos zum Hinaufladen des aufgenommenen Bildes an die Digitalkamera zum Initiieren des Sendens des aufgenommenen Bildes umfaßt.
  7. Das Verfahren nach Anspruch 6, wobei der Busschnittstellentreiber ein Treiber des universellen seriellen Busses ist und das Computersystem mit der Digitalkamera über einen universellen seriellen Bus gekoppelt ist.
DE19982811T 1998-02-06 1999-01-22 Verfahren und Einrichtung zur Standbildaufnahme während Videolaufbildoperationen einer Angekoppelten Digitalkamera Expired - Fee Related DE19982811B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/019,965 US6833863B1 (en) 1998-02-06 1998-02-06 Method and apparatus for still image capture during video streaming operations of a tethered digital camera
US09/019,965 1998-02-06
PCT/US1999/001337 WO1999040723A1 (en) 1998-02-06 1999-01-22 Method and apparatus for still image capture during video streaming operations of a tethered digital camera

Publications (2)

Publication Number Publication Date
DE19982811T1 DE19982811T1 (de) 2001-03-22
DE19982811B4 true DE19982811B4 (de) 2006-04-06

Family

ID=21796034

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19982811T Expired - Fee Related DE19982811B4 (de) 1998-02-06 1999-01-22 Verfahren und Einrichtung zur Standbildaufnahme während Videolaufbildoperationen einer Angekoppelten Digitalkamera

Country Status (10)

Country Link
US (1) US6833863B1 (de)
JP (1) JP2002503065A (de)
KR (1) KR100419158B1 (de)
CN (1) CN1166195C (de)
AU (1) AU2334399A (de)
DE (1) DE19982811B4 (de)
GB (1) GB2349291B (de)
MY (1) MY116783A (de)
TW (1) TW401686B (de)
WO (1) WO1999040723A1 (de)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6295379B1 (en) * 1997-09-29 2001-09-25 Intel Corporation DPCM image compression with plural quantization table levels
EP1222808B1 (de) * 1999-10-13 2005-03-23 Eastman Kodak Company Setzen von prioritäten für bilddateienübertragung von einer digitalen kamera nach einem hostrechner
JP2001339675A (ja) * 2000-05-25 2001-12-07 Sony Corp 情報処理装置および情報処理方法
EP1845701A1 (de) * 2001-01-31 2007-10-17 FUJIFILM Corporation Digitale Kamera und Verfahren zur deren Steuerung
KR100392558B1 (ko) * 2001-05-14 2003-08-21 주식회사 성진씨앤씨 복수 개의 유에스비 카메라를 이용한 피씨 기반의 디지털영상 저장 장치 시스템
JP4240973B2 (ja) * 2002-09-26 2009-03-18 ソニー株式会社 画像処理システム、画像処理装置および方法、記録媒体、並びにプログラム
US20040109059A1 (en) * 2002-11-12 2004-06-10 Kevin Kawakita Hybrid joint photographer's experts group (JPEG) /moving picture experts group (MPEG) specialized security video camera
US7388605B2 (en) * 2002-11-12 2008-06-17 Hewlett-Packard Development Company, L.P. Still image capturing of user-selected portions of image frames
KR100873437B1 (ko) * 2002-11-28 2008-12-11 삼성전자주식회사 Pip화면을 이용한 듀얼모드 신호처리장치
JP2004201282A (ja) * 2002-12-06 2004-07-15 Casio Comput Co Ltd 撮影装置及び撮影方法
JP2005070738A (ja) * 2003-08-04 2005-03-17 Casio Comput Co Ltd 撮像装置、撮像方法及びプログラム
EP2247071B1 (de) 2003-12-08 2013-09-25 QUALCOMM Incorporated Hochgeschwindigkeits-Datenschnittstelle mit verbesserter Verknüpfungssynchronisation
US7791639B2 (en) * 2003-12-17 2010-09-07 Canon Kabushiki Kaisha Control apparatus, video processing apparatus, and control method thereof
JP5055684B2 (ja) * 2004-05-13 2012-10-24 ソニー株式会社 画像フォルダ切替装置
US8630305B2 (en) 2004-06-04 2014-01-14 Qualcomm Incorporated High data rate interface apparatus and method
US20060055781A1 (en) * 2004-09-13 2006-03-16 Samsung Techwin Co., Ltd. Method of processing video data from video presenter
JP4568078B2 (ja) * 2004-10-20 2010-10-27 三洋電機株式会社 サーバ
JP5038148B2 (ja) * 2004-11-24 2012-10-03 クゥアルコム・インコーポレイテッド 巡回冗長検査を実行するためのシステム及び方法
EP1742457B1 (de) * 2005-07-08 2022-03-09 STMicroelectronics (Research & Development) Limited Digitale Bildaufnahmevorrichtung mit Bildformatumwandlungsfähigkeiten und Verfahren dafür
US7602422B2 (en) * 2005-07-08 2009-10-13 Seiko Epson Corporation Serial camera interface
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
TWM299424U (en) * 2006-02-22 2006-10-11 Genesys Logic Inc Web camera
US7893990B1 (en) * 2006-07-31 2011-02-22 Cisco Technology, Inc. Digital video camera with retractable data connector and resident software application
KR100797532B1 (ko) * 2006-09-26 2008-01-24 주식회사 대우일렉트로닉스 텔레비전의 정지화면 획득방법
KR100797533B1 (ko) * 2006-09-26 2008-01-24 주식회사 대우일렉트로닉스 개인용 녹화기의 정지화면 획득방법
CN100584031C (zh) * 2006-12-22 2010-01-20 群康科技(深圳)有限公司 液晶显示器
CN100440930C (zh) * 2006-12-30 2008-12-03 北京中星微电子有限公司 一种摄像头系统和在摄像头视频流中获取静态图像的方法
US8407605B2 (en) 2009-04-03 2013-03-26 Social Communications Company Application sharing
US7769806B2 (en) 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8397168B2 (en) 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
WO2009055744A1 (en) * 2007-10-26 2009-04-30 Pure Digital Technologies Charging and use scheme for a hand-held electronics device
JP5368547B2 (ja) 2008-04-05 2013-12-18 ソーシャル・コミュニケーションズ・カンパニー 共有仮想エリアコミュニケーション環境ベースの装置および方法
US8866920B2 (en) 2008-05-20 2014-10-21 Pelican Imaging Corporation Capturing and processing of images using monolithic camera array with heterogeneous imagers
US11792538B2 (en) 2008-05-20 2023-10-17 Adeia Imaging Llc Capturing and processing of images including occlusions focused on an image sensor by a lens stack array
US9853922B2 (en) 2012-02-24 2017-12-26 Sococo, Inc. Virtual area communications
US9319357B2 (en) 2009-01-15 2016-04-19 Social Communications Company Context based virtual area creation
US20100231735A1 (en) * 2009-03-13 2010-09-16 Nokia Corporation Methods, Apparatuses, and Computer Program Products for Facilitating Concurrent Video Recording and Still Image Capture
USD627380S1 (en) 2009-10-08 2010-11-16 Cisco Technology, Inc. Digital video camera with a connector
EP2502115A4 (de) 2009-11-20 2013-11-06 Pelican Imaging Corp Aufnahme und verarbeitung von bildern mittels eines monolithischen kameraarrays mit heterogenem bildwandler
CN101738827B (zh) * 2009-12-24 2012-07-04 北京优纳科技有限公司 一种usb数字工业相机
CN101738828B (zh) * 2009-12-24 2011-06-08 北京优纳科技有限公司 一种ccd高清智能工业相机
CN101980089B (zh) * 2010-09-02 2012-05-23 南京南自信息技术有限公司 一种高速球型摄像机云台的控制装置
US8878950B2 (en) 2010-12-14 2014-11-04 Pelican Imaging Corporation Systems and methods for synthesizing high resolution images using super-resolution processes
CN102625033A (zh) * 2011-01-27 2012-08-01 爱国者数码科技有限公司 分体式数码相机装置
IN2014CN02708A (de) 2011-09-28 2015-08-07 Pelican Imaging Corp
WO2013181026A1 (en) 2012-06-02 2013-12-05 Social Communications Company Interfacing with a spatial virtual communications environment
US20140002674A1 (en) 2012-06-30 2014-01-02 Pelican Imaging Corporation Systems and Methods for Manufacturing Camera Modules Using Active Alignment of Lens Stack Arrays and Sensors
WO2014031795A1 (en) 2012-08-21 2014-02-27 Pelican Imaging Corporation Systems and methods for parallax detection and correction in images captured using array cameras
US8866912B2 (en) 2013-03-10 2014-10-21 Pelican Imaging Corporation System and methods for calibration of an array camera using a single captured image
US9389765B2 (en) 2013-03-12 2016-07-12 Google Inc. Generating an image stream
US9633442B2 (en) 2013-03-15 2017-04-25 Fotonation Cayman Limited Array cameras including an array camera module augmented with a separate camera
US10187433B2 (en) 2013-03-15 2019-01-22 Swyme Ip Bv Methods and systems for dynamic adjustment of session parameters for effective video collaboration among heterogenous devices
EP2973476A4 (de) 2013-03-15 2017-01-18 Pelican Imaging Corporation Systeme und verfahren zur stereobildgebung mit kameraarrays
US10122993B2 (en) 2013-03-15 2018-11-06 Fotonation Limited Autofocus system for a conventional camera that uses depth information from an array camera
US9497429B2 (en) 2013-03-15 2016-11-15 Pelican Imaging Corporation Extended color processing on pelican array cameras
WO2015081279A1 (en) 2013-11-26 2015-06-04 Pelican Imaging Corporation Array camera configurations incorporating multiple constituent array cameras
US9912743B2 (en) * 2014-02-28 2018-03-06 Skycapital Investors, Llc Real-time collection and distribution of information for an event organized according to sub-events
WO2015183824A1 (en) * 2014-05-26 2015-12-03 Pelican Imaging Corporation Autofocus system for a conventional camera that uses depth information from an array camera
US20160085840A1 (en) * 2014-09-22 2016-03-24 Microsoft Corporation Universal Interaction for Capturing Content to Persistent Storage
JP2017531976A (ja) 2014-09-29 2017-10-26 フォトネイション ケイマン リミテッド アレイカメラを動的に較正するためのシステム及び方法
US10437023B2 (en) * 2016-03-28 2019-10-08 Apple Inc. Folded lens system with three refractive lenses
CN109949903B (zh) * 2019-03-26 2023-05-16 南京长城智慧医疗科技有限公司 医学影像静止画面捕捉方法及系统
MX2022003020A (es) 2019-09-17 2022-06-14 Boston Polarimetrics Inc Sistemas y metodos para modelado de superficie usando se?ales de polarizacion.
DE112020004813B4 (de) 2019-10-07 2023-02-09 Boston Polarimetrics, Inc. System zur Erweiterung von Sensorsystemen und Bildgebungssystemen mit Polarisation
CN114787648B (zh) 2019-11-30 2023-11-10 波士顿偏振测定公司 用于使用偏振提示进行透明对象分段的系统和方法
US11195303B2 (en) 2020-01-29 2021-12-07 Boston Polarimetrics, Inc. Systems and methods for characterizing object pose detection and measurement systems
JP2023511747A (ja) 2020-01-30 2023-03-22 イントリンジック イノベーション エルエルシー 偏光画像を含む異なる撮像モダリティで統計モデルを訓練するためのデータを合成するためのシステムおよび方法
US11953700B2 (en) 2020-05-27 2024-04-09 Intrinsic Innovation Llc Multi-aperture polarization optical systems using beam splitters
EP4158321A1 (de) * 2020-05-29 2023-04-05 Quidel Corporation System und verfahren zur fernbeurteilung eines probentests für krankheitsdiagnose
WO2021243254A2 (en) 2020-05-29 2021-12-02 Quidel Corporation System and methods for remote assessment of a sample assay for disease diagnostics
US11954886B2 (en) 2021-04-15 2024-04-09 Intrinsic Innovation Llc Systems and methods for six-degree of freedom pose estimation of deformable objects
US11290658B1 (en) 2021-04-15 2022-03-29 Boston Polarimetrics, Inc. Systems and methods for camera exposure control
US11689813B2 (en) 2021-07-01 2023-06-27 Intrinsic Innovation Llc Systems and methods for high dynamic range imaging using crossed polarizers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0583908A2 (de) * 1992-08-04 1994-02-23 International Business Machines Corporation Bilderfassungsgerät
US5402170A (en) * 1991-12-11 1995-03-28 Eastman Kodak Company Hand-manipulated electronic camera tethered to a personal computer
US5568192A (en) * 1995-08-30 1996-10-22 Intel Corporation Method and apparatus for processing digital video camera signals
US5574934A (en) * 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
JPH09200722A (ja) * 1996-01-22 1997-07-31 Canon Inc 画像入力装置および方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5382974A (en) * 1991-04-18 1995-01-17 Fuji Photo Film Company, Limited Movie camera having still picture photographing function and method of photographing still picture therewith
GB9303998D0 (en) * 1993-02-26 1993-04-14 Chater Ian Introduction system
JPH06315105A (ja) * 1993-04-28 1994-11-08 Nikon Corp カメラ装置
US5745161A (en) * 1993-08-30 1998-04-28 Canon Kabushiki Kaisha Video conference system
JPH0779449A (ja) * 1993-09-06 1995-03-20 Sony Corp Vtr装置
US5490247A (en) * 1993-11-24 1996-02-06 Intel Corporation Video subsystem for computer-based conferencing system
JP3745067B2 (ja) * 1996-02-20 2006-02-15 キヤノン株式会社 撮像装置及びその制御方法
JPH09312791A (ja) * 1996-05-21 1997-12-02 Hitachi Ltd 電子カメラおよび電子カメラシステム
US5841471A (en) * 1996-09-12 1998-11-24 Eastman Kodak Company Timing control for a digitally interfaced camera using variable line readout intervals
US6005613A (en) * 1996-09-12 1999-12-21 Eastman Kodak Company Multi-mode digital camera with computer interface using data packets combining image and mode data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5402170A (en) * 1991-12-11 1995-03-28 Eastman Kodak Company Hand-manipulated electronic camera tethered to a personal computer
EP0583908A2 (de) * 1992-08-04 1994-02-23 International Business Machines Corporation Bilderfassungsgerät
US5574934A (en) * 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
US5568192A (en) * 1995-08-30 1996-10-22 Intel Corporation Method and apparatus for processing digital video camera signals
JPH09200722A (ja) * 1996-01-22 1997-07-31 Canon Inc 画像入力装置および方法

Also Published As

Publication number Publication date
KR20010040748A (ko) 2001-05-15
DE19982811T1 (de) 2001-03-22
JP2002503065A (ja) 2002-01-29
US6833863B1 (en) 2004-12-21
CN1296697A (zh) 2001-05-23
GB2349291A (en) 2000-10-25
TW401686B (en) 2000-08-11
AU2334399A (en) 1999-08-23
WO1999040723A1 (en) 1999-08-12
GB2349291B (en) 2002-03-20
MY116783A (en) 2004-03-31
CN1166195C (zh) 2004-09-08
GB0019249D0 (en) 2000-09-27
KR100419158B1 (ko) 2004-02-19

Similar Documents

Publication Publication Date Title
DE19982811B4 (de) Verfahren und Einrichtung zur Standbildaufnahme während Videolaufbildoperationen einer Angekoppelten Digitalkamera
JP3567155B2 (ja) 全及び減小解像度画像の多形式記憶装置を備えた電子式静止画像化装置
DE10084276B4 (de) Ein verbesserter Lichtsensor mit einem erhöhten Dynamikbereich
KR100321898B1 (ko) 비디오 및 스틸 동작을 위한 이중 모드 디지털 카메라
DE602004009591T2 (de) Differenz-codierung durch verwendung eines 3d-graphikprozessors
US7193652B2 (en) Dynamic range video recording and playback system and method
DE69912663T2 (de) Bildverarbeitungsvorrichtung und -Verfahren, Speichermedium, und Bilddatengruppenformat
DE60016032T2 (de) Videoschnittarbeitsflussverfahren und -system
DE69532956T2 (de) Vorrichtung zur erzeugung einer szene aus linienobjekten
DE69838653T2 (de) Verfahren und Vorrichtung zum Komprimieren und Codieren von ein Farbbild darstellende Bilddaten
US7580060B2 (en) Electronic camera that reduces processing time by performing different processes in parallel
DE69924827T2 (de) Verfahren und Vorrichtung zur Verarbeitung von Bilddaten
DE10229093A1 (de) Bildmarkierung für die Nachverarbeitung
DE3010988A1 (de) Digitales videoverarbeitungssystem
DE19919600A1 (de) Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist
DE4340196C2 (de) Kamera mit automatischer Datenkompressionsfaktor-Auswahl
DE102004011165B4 (de) Verfahren und Vorrichtung zum Verarbeiten von Bilddaten
DE4012673A1 (de) Elektronische stehbildkamera zum konvertieren und aufnehmen von stehbildsignalen in einer vielzahl von stroemen
DE69736347T2 (de) Digitale Photographievorrichtung mit einer Bildverarbeitungsvorrichtung
DE69933810T2 (de) Elektronische Kamera mit Bildvorschaufunktion
DE69934563T2 (de) Digitale Kamera und Bildverarbeitungsverfahren
DE69936751T2 (de) Verfahren zur Bildaufzeichnung und Bildaufnahmegerät
DE19758204C2 (de) Digitale Einzelbildkamera mit fortschreitendem Bildsensor
DE4132600A1 (de) Video-codec
WO2005032119A1 (de) Verfahren zum speichern eines bildes mit vorschaubild

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110802