-
HINTERGRUND
DER ERFINDUNG
-
Technischer Bereich der
Erfindung
-
Die
vorliegende Erfindung betrifft eine zwischen einen Bildprozessor
und einen Bildsensor geschaltete Schnittstellenvorrichtung und ein
entsprechendes Schnittstellenverfahren und insbesondere eine Schnittstellenvorrichtung
und ein Schnittstellenverfahren zum Umwandeln des Ausgangssignals
eines Bildsensors in Bildverarbeitungsdaten zur Verarbeitung durch
einen Bildprozessor unter Verwendung des vom Bildsensor ausgegebenen
Ausgangssignals ohne Veränderung
der Konstruktion des Bildprozessors entsprechend dem Ausgangssignal
des Bildsensors eines Bildverarbeitungssystems, wie einer digitalen
Kamera, wodurch der Zeitaufwand und die hohen Kosten verringert
werden, die zum verschiedenartigen Umkonstruieren des Bildprozessors
entsprechend den von nach Herstellern und Produktmodellen unterschiedlichen
Bildsensoren ausgegebenen Ausgangssignalen erforderlich sind.
-
Beschreibung
der verwandten Technik
-
Im
Allgemeinen erhält
eine Vorrichtung oder ein System mit einem Bildverarbeitungssystem,
wie eine digitale Kamera, analoge Bilddaten eines von einem Bildsensor
durch eine Linse erfaßten
Bilds, wandelt die analogen Bilddaten in digitale Daten um und erzeugt
jedem Rahmen entsprechende Synchronisationssignale, um die digitalen
Daten an den Bildprozessor zu übertragen.
Auf der Grundlage der Synchronisationssignale empfängt die
Bildveraxbeitungseinheit Pixeldaten vom Bildsensor, wandelt die Pixeldaten
unter Verwendung einer Bildkompressionscodierung, beispielsweise
der JPEG- oder der MPEG-Codierung,
in formatierte Daten um, um codierte Bilddaten zu erzeugen, und überträgt die codierten
Bilddaten, die durch die Bildkompressionscodierung codiert wurden, über eine
Hauptschnittstelle an einen Speicher oder eine Anzeigevorrichtung
der digitalen Kamera.
-
Der
für die
Vorrichtung oder das System verwendete Bildsensor einschließlich der
Bildverarbeitungseinheit ist entweder ein mit ladungsträgergekoppelten
Schaltungen arbeitender Bildsensor (CCD-Bildsensor) oder ein mit komplementären Metalloxidhalbleitern
arbeitender Bildsensor (CMOS-Bildsensor), die ein optisches Signal
in ein elektrisches Signal umwandeln.
-
Der
CCD-Bildsensor umfaßt
mehrere optische Dioden, die mit mehreren, auf einem Siliciumplättchen angeordneten
Kleinstmetallelektroden zur Umwandlung optischer Energie in elektrische
Energie beim Empfang von Licht durch die optischen Dioden gekoppelt
sind. Die Photodioden, die so angeordnet sind, daß sie den
jeweiligen Bildpixeln entsprechen, erzeugen eine Ladung, die unter
Verwendung einer hohen Potentialdifferenz über eine Vertikalübertragungs-CCD
und eine Horizontalübertragungs-CCD
an einen Verstärker übertra gen
wird. Obwohl der Stromverbrauch der Vorrichtung bzw. des Systems
durch die Verwendung des CCD-Bildsensors zunimmt, hat das von dem
Bildsensor erzeugte Signal ein hohes Signal-Rausch-Verhältnis (SR-Verhältnis),
und die Vorrichtung bzw. das System hat die Eigenschaft, daß das Signal
gleichmäßig verstärkt wird.
-
Der
CMOS-Bildsensor umfaßt
eine Photodiode und einen Verstärker,
die auf jedem Bildpixel angeordnet sind. Obwohl der Stromverbrauch
des CMOS-Bildsensors geringer als der des CCD-Bildsensors ist und er kleiner als der CCD-Bildsensor
ist, verschlechtert sich die Bildqualität.
-
Da
es verschiedene Arten von CCD-Bildsensoren und CMOS-Bildsensoren gibt,
unterscheiden sich die Schnittstelle und die Merkmale eines Bildprozessors
je nach der Art der Bildsensoren und den Herstellern der Bildsensoren
von denen anderer Bildprozessoren. Dementsprechend sollte der Bildprozessor
für einen
bestimmten Bildsensor konstruiert und hergestellt werden und muß für einen
weiteren, bestimmten Bildsensor umkonstruiert werden, der den bestimmten
Bildsensor ersetzt, wenn der bestimmte Bildsensor aufgrund eines
Mangels an dem bestimmten Bildsensor nicht verfügbar ist, um die von einem
anderen bestimmten Bildsensor mit anderen Merkmalen als denen des
bestimmten Bildsensors ausgegebenen Daten zu verarbeiten.
-
In
der japanischen Patentveröffentlichung Nr.
JP 2003046878A ist eine Takterzeugungsvorrichtung offenbart, die
unterschiedliche Arten von Taktsignalen erzeugt, die entsprechend
den CCD-Bildsensoren für
entsprechende der Pixeldaten von den CCD-Bildsensoren verwendet
werden. Gemäß der vorstehend
erwähnten
Patentveröffentlichung
werden die Taktsignale entsprechend jeweiligen CCD-Bildsensoren
erzeugt, die unterschiedliche Arten von Taktsignalen erzeugten,
um die Pixeldaten entsprechend den Taktsignalen zu verarbeiten.
Es sind jedoch Taktsignale sowie andere Daten- und Synchronisationssignale
zu verarbeiten, und die meisten der Taktsignale, der anderen Daten
und der Synchronisationssignale unterscheiden sich nach den Herstellern
und Produktmodellen der Bildsensoren voneinander. Die in der vorstehend
erwähnten Patentveröffentlichung
gezeigte Takterzeugungsvorrichtung ist hinsichtlich der Entsprechung
zu verschiedenen Arten von Bildsensoren eingeschränkt. Überdies muß ein
Bildverarbeitungssystem, für
das die Takterzeugungsvorrichtung verwendet wird, entsprechend dem
für das
Bildverarbeitungssystem verwendeten Bildsensor umkonstruiert werden.
-
1 zeigt den Aufbau eines
herkömmlichen
Bildsignalverarbeitungssystems einer Digitalkamera. Wie in 1 gezeigt, wird ein von
einem Bildsensor 11 durch eine Linse 10 erfaßtes Bild
unter Verwendung eines im Bildsensor 11 angeordneten A/D-Wandlers
in ein Bildsignal umgewandelt, das an einen Bildprozessor 12 gesendet
wird. Wenn der Bildsensor 11 keinen Bildprozessor 12 enthält, wird das
Bildsignal vom Bildsensor 11 als Bayer-Farbfilteranordnungsmuster
an den Bildprozessor 12 gesendet.
-
Der
Bildprozessor 12 verarbeitet das Bildsignal unter Verwendung
einer Farbfilteranordnungsmusterinterpolation, einer Farbmatrixumwandlung, einer
Farbkorrektur und von Farbverbesserungsfunktionen. Die als Synchronisationssignale
jedes Bildrahmens verwendeten Signale umfassen ein vertikales Synchronisationssignal
vsync, das einen Anfangspunkt des Bildrahmens repräsentiert,
ein horizontales Synchronisationssignal hsync, das einen aktiven
Status jeder Bildzeile des Bildrahmens repräsentiert, und ein Pixeltaktsignal
pixel_clock, das die Synchronisation der Pixeldaten repräsentiert.
Das Bildsignal wird als dem Bild entsprechende Pixeldaten pixel_data
an den Bildprozessor gesendet.
-
Die
im Bildprozessor 12 verarbeiteten Bilddaten werden in formatierte
Daten im Format CCIR 656 oder CCIR 601 (YUV-Raumdaten) umgewandelt,
und die formatierten Daten werden als durch einen Bildcodierungsprozeß zu verarbeitendes
Signal des Typs YUV 4 : 2 : 2 oder des Typs YUV 4 : 2 : 0 an eine
Bildcodierungseinheit (eine MPEG- oder JPEG-Codiereinheit ) 13 gesendet.
-
Die
codierten Bilddaten (codierte Rahmendaten) werden in einem Rahmenpuffer 14 gespeichert
und über
eine Hauptschnittstelle 15, wie eine Digitalkamera oder
einen Personal Computer, an eine Speichervorrichtung, wie eine Digitalkamera oder
einen Personal Computer, oder eine Anzeigevorrichtung gesendet.
-
Bei
den meisten Bildsensoren enthält
das Ausgangssignal des Bildsensors das vertikale Synchronisationssignal
vsync, das horizontale Synchronisationssignal hsync, das Pixeltaktsignal
pixel_clock und bidirektionale Eingangs- und Ausgangssignale, die
den Bildsensor 11 steuern. Diese Signale werden zur Kommunikation
zwischen dem Bildsensor 11 und dem Bildprozessor 12 der
Vorrichtung bzw. des Systems, wie einer digitalen Kamera, verwendet.
-
7 ist eine Ansicht, die
die vom Bildsensor entsprechend Herstellern und Produktmodellen verarbeitete
Datenspezifikation zeigt. Gemäß 7 unterscheiden sich die
Standards der verarbeiteten Daten nach Hersteller und Produktmodell
des Bildsensors voneinander.
-
2 ist ein Blockdiagramm,
das eine Struktur zeigt, die bei dem in 1 gezeigten herkömmlichen Bildsignalverarbeitungssystem
Signale vom Bildsensor 11 an den Bildprozessor 12 sendet.
Die Signale einschließlich
des vertikalen Synchronisationssignals vsync, des horizontalen Synchronisationssignals
hsync, des Pixeltaktsignals pixel_clock und der bidirektionalen
Eingangs- und Ausgangssignale unterscheiden sich je nach Hersteller
und Produktmodell des Bildsensors 11 voneinander.
-
Wenn
der Bildprozessor 12 im Bildsensor 11 enthalten
ist, besteht der Ausgang des Bildsensors 11 in den verarbeiteten,
formatierten Daten, wie Daten im Format CCIR 656 oder CCIR 601 (YUV-Raumdaten). In diesem
Fall wird der Bildprozessor 12 als Konverter verwendet,
der die formatierten Daten in Eingangsdaten umwandelt, die in die
Bildcodiereinrichtung 13 eingegeben werden. Mehrere interne
Register, die im Bildsensor 11 angeordnet sind, sind unter
Verwendung eines Reihenkommunikationsverfahrens über zwei oder drei Drähte so mit
Pixelsensoren gekoppelt, daß die
Bilddaten in die internen Register des Bildsensors 11 geschrieben
oder aus diesen gelesen werden. Da sich die Merkmale des Bilds abhängig von
der Art und Weise, in der die Bilddaten in die internen Register
des Bildsensors 11 geschrieben werden, verändern, ist
die Bestimmung der in die internen Register des Bildsensors 11 geschriebenen Bilddaten
ein sehr wesentlicher Faktor bei der Steuerung der Eigenschaften
des Bilds.
-
Wie
vorsehend beschrieben, ändern
sich die Unterschiede zwischen den vertikalen Synchronisationssignalen
vsync, den horizontalen Synchronisationssignalen hsync und den Pixeltaktsignalen pixel_clock,
die die Synchronisationssignale des Bildrahmens sind, die Größe der Pixelanordnung pixel_array,
die Anzahl der Bayer-Farbfilteranordnungsmuster
und die Unterschiede zwischen den seriellen Kommunikationsverfahren
zur Steuerung der Bildsensoren 11 mit den Herstellern.
Dementsprechend muß der
Bildprozessor 12 der Vorrichtung bzw. des Systems, wie
einer digitalen Kamera, für den
spezifischen Bildsensor umkonstruiert werden.
-
Wenn
der für
die vorstehend beschriebene Vorrichtung zu verwendende Bildsensor 11 ausgetauscht
werden muß,
muß der
Bildprozessor 12 entsprechend den veränderten Signalen umkonstruiert werden,
die zwischen dem Bildsensor 11 und dem Bildprozessor übertragen
werden, obwohl der Bildverarbeitungsalgorithmus nicht wesentlich
verändert wird.
Da die meisten Bildverarbeitungssysteme in einer integrierten Schaltung
größeren Maßstabs (einer LSI)
ausgebildet sind, sind mit dem Umkonstruieren und der Herstellung
des Bildprozessors 12 erhebliche Kosten und ein erheblicher
Zeitaufwand verbunden.
-
Aus
der
US 5 907 359 A ist
eine hochintegrierte Bildsensorvorrichtung zur Erzeugung einer digitalen
Ausgabe bekannt. Ein Bildsensor wird von einem Treiber angesteuert
und gibt analoge Signale in einen Signalprozessor ein, der die analogen
Signale hinsichtlich ihrer Amplitude skaliert. Die skalierten Signale
werden ins digitale gewandelt und über eine Schnittstelle an einen
Bus ausgegeben.
-
Aus
der
US 5 040 068 ist
eine elektronische Abbildungsvorrichtung mit wechselbaren Aufnahmeeinheiten
bekannt. Die Aufnahmeeinheiten weisen jeweils eine Codiereinrichtung
14 auf,
die ein Identifizierungssignal entsprechend der Kennlinie des in
der Aufnahmeeinheit jeweils enthaltenen Bildsensors liefert. Das
Identifizierungssignal wird einem Steuerungsprozessor zugeführt, der
seinerseits die Analog/Digital-Wandlung der vom jeweiligen Sensor
erzeugten Daten steuert.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Aufgabe
der Erfindung ist es, eine Schnittstellenvorrichtung und ein Schnittstellenverfahren anzubieten,
die die einfache und flexible Anbindung unterschiedlicher Bildsensoren
erlaubt.
-
Diese
Aufgabe wird mit den Merkmalen der unabhängiger Patentansprüche gelöst. Die
abhängigen
Patentansprüche
sind auf bevorzugte Ausführungsformen
der Erfindung gerichtet.
-
Die
zwischen dem Bildsensor und dem Bildprozessor in dem Bildverarbeitungssystem
angeordnete Schnittstellenvorrichtung umfaßt einen Bildsensor, der ein
Bild erfaßt,
einen Bildprozessor, der das erfaßte Bild verarbeitet, um Bilddaten
auszugeben, und eine zwischen dem Bildsensor und dem Bildprozessor
angeschlossene Sensorschnittstelle. Die Sensorschnittstelle umfaßt ein Sensortypenregister, in
dem den Bildsensor betreffende Informationen gespeichert sind, einen
Mikrocomputer, in dem die Informationen im Sensortypenregister zum
Steuern des Bildsensors gespeichert sind, und einem Sensorsignalprozessor,
der dem vom Bildsensor erfaßten Bild
entsprechende Signale empfängt,
sie in modifizierte Signale umwandelt, die der Bildprozessor zur Ausgabe
der Bilddaten entsprechend den im Sensortypenregister gespeicherten
Informationen verarbeitet, und die modifizierten Signale an den
Bildprozessor sendet.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfassen die Signale
ein vertikales Synchronisationssignal, ein horizontales Synchronisationssignal,
ein Pixeltaktsignal und Pixeldaten: Gemäß einem weiteren Aspekt der
vorliegenden Erfindung umfassen die im Sensorentypenregister gespeicherten
Informationen die Polarität
des vertikalen Synchronisationssignals, des horizontalen Synchronisationssignals
und des Pixeltaktsignals betreffende Informationen, den Modus für die Bildsignalverarbeitung
(ISP) betreffende Informationen und Mustersignalinformationen für den Bildprozessor,
die horizontale Größe des erfaßten Bilds
betreffende Informationen und die vertikale Größe des erfaßten Bilds betreffende Informationen.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfaßt das Sensortypenregister ein
Sensorsignalregister, ein Register für die horizontale Größe und ein
Register für
die vertikale Größe.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung sind im Sensorsignalregister
die die Polarität
betreffenden Informationen und die den Modus für die Bildsignalverarbeitung
(ISP) betreffenden Informationen gespeichert, im Register für die horizontale
Größe sind
die die horizontale Größe betreffenden
Informationen gespeichert, und im Register für die vertikale Größe sind
die die vertikale Größe betreffenden
Informationen gespeichert.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfaßt der Sensorsignalprozessor einen
ersten Multiplexer, der die Polarität des vom Bildsensor übertragenen
vertikalen Synchronisationssignals entsprechend den im Sensorentypenregister
gespeicherten, die Polarität
des vertikalen Synchronisationssignals betreffenden Informationen
umkehrt oder nicht umkehrt, einen zweiten Multiplexer, der entsprechend
den den Modus für
die Bildsignalverarbeitung durch den Bildprozessor betreffenden Informationen
den Ausgang des ersten Multiplexers oder ein niedriges Statussignal
an den Bildprozessor ausgibt, einen dritten Multiplexer, der die
Polarität des
vom Bildsensor übertragenen
horizontalen Synchronisationssignals ent sprechend den im Sensortypenregister
gespeicherten, die Polarität
des horizontalen Synchronisationssignals betreffenden Informationen
umkehrt oder nicht umkehrt, einen vierten Multiplexer, der entsprechend
den den Modus für
die Bildsignalverarbeitung (ISP) durch den Bildprozessor betreffenden
Informationen den Ausgang des dritten Multiplexers oder ein niedriges
Statussignal an den Bildprozessor ausgibt, einen fünften Multiplexer,
der die Polarität
des von dem Bildsensor übertragenen Pixeltaktsignals
entsprechend den im Sensortypenregister gespeicherten, die Polarität des Pixeltaktsignals
betreffenden Informationen umkehrt oder nicht umkehrt, einem sechsten
Multiplexer, den entsprechend den den Modus für die Bildsignalverarbeitung (ISP)
durch den Bildprozessor betreffenden Informationen den Ausgang des
fünften
Multiplexers oder ein niedriges Statussignal an den Bildprozessor
ausgibt, und einen siebten Multiplexer, der entsprechend den den
Modus für
die Bildsignalverarbeitung (ISP) durch den Bildprozessor betreffenden
Informationen das Pixeldatensignal oder das niedrige Statussignal
an den Bildprozessor ausgibt.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung kommuniziert der Mikrocomputer unter
Verwendung eines zwischen dem Mikrocomputer und dem Bildsensor übertragenen
Mehrzweck-Eingangs-
und Ausgangssignals mit dem Bildsensor.
-
Zur
Realisierung der vorstehend aufgeführten und/oder weiterer Aspekte
der vorliegenden Erfindung umfaßt
ein Schnittstellenverfahren zum Verbinden eines Bildsensors und
eines Bildprozessors eines Bildverarbeitungssystems das Speichern
von den Bildsensor betreffenden Informationen in einem Sensortypenregister,
das Empfangen von Signalen von dem Bildsensor, das Umwandeln der
von dem Bildsensor ausgegebenen Signale in Bilddaten entsprechend
den im Sensortypenregister gespeicherten Informationen und das Übertragen
der umgewandelten Bilddaten an den Bildprozessor.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfassen die Signale
ein vertikales Synchronisationssignal, ein horizontales Synchronisationssignal,
ein Pixeltaktsignal und Pixeldaten.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfassen die im Sensortypenregister
gespeicherten Informationen die Polarität des vertikalen Synchronisationssignals,
des horizontalen Synchronisationssignals und des Pixeltaktsignals
betreffende Informationen, den Modus für die Bildsignalverarbeitung
(ISP) betreffende Informationen und Mustersignalinformationen für den Bildprozessor,
die horizontale Größe des erfaßten Bilds
betreffende Informationen und die vertikale Größe des erfaßten Bilds betreffende Informationen.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfaßt das Sensortypenregister ein
Sensorsignalregister, ein Register für die horizontale Größe und ein
Register für
die vertikale Größe.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfaßt die Speicherung der den Bildsensor
betreffenden Informationen im Sensortypenregister das Speichern
der Polaritätsinformationen
und der den Modus für
die Bildsignalverarbeitung (ISP) betreffenden Informationen im Sensorsignalregister,
das Speichen der die horizontale Größe betreffenden Informationen
im Register für
die horizontale Größe und das
Speichern der die vertikale Größe betreffenden
Informationen im Register für
die vertikale Größe.
-
Gemäß einem
weiteren Aspekt der vorliegenden Erfindung umfaßt das Umwandeln der vom Bildsensor
ausgegebenen Signale in Bilddaten entsprechend den im Sensortypenregister
gespeicherten Informationen die Umkehrung oder die Unterlassung
einer Umkehrung der Polarität
des vom Bildsensor gesendeten vertikalen Syn chronisationssignals entsprechend
den im Sensortypenregister gespeicherten, die Polarität des vertikalen
Synchronisationssignals betreffenden Informationen, das Ausgeben
des invertierten oder nicht invertierten vertikalen Synchronisationssignals
oder eines niedrigen Statussignals an den Bildprozessor entsprechend
den den Modus für
die Bildsignalverarbeitung (ISP) durch den Bildprozessor betreffenden
Informationen, die Umkehrung oder die Unterlassung einer Umkehrung
der Polarität
des vom Bildsensor gesendeten horizontalen Synchronisationssignals
entsprechend den im Sensortypenregister gespeicherten, die Polarität des horizontalen
Synchronisationssignals betreffenden Informationen, das Ausgeben
des invertierten oder nicht invertierten horizontalen Synchronisationssignals
oder eines niedrigen Statussignals an den Bildprozessor entsprechend
den den Modus für
die Bildsignalverarbeitung (ISP) durch den Bildprozessor betreffenden
Informationen, die Umkehrung oder die Unterlassung einer Umkehrung
der Polarität
des vom Bildsensor gesendeten Pixeltaktsignals entsprechend den
im Sensortypenregister gespeicherten, die Polarität des Pixeltaktsignals
betreffenden Informationen, das Ausgeben des invertierten oder nicht invertierten
Pixeltaktsignals oder eines niedrigen Statussignals an den Bildprozessor
entsprechend den den Modus für
die Bildsignalverarbeitung (ISP) durch den Bildprozessor betreffenden
Informationen und das Ausgeben des Pixeldatensignals oder des niedrigen
Statussignals an den Bildprozessor entsprechend den den Modus für die Bildsignalverarbeitung (ISP)
durch den Bildprozessor betreffenden Informationen.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Diese
und weitere Vorteile der Erfindung gehen aus der folgenden Beschreibung
der bevorzugten Ausführungsformen
im Zusam menhang mit den beiliegenden Zeichnungen hervor und sind
durch sie leichter zu erkennen. Es zeigen:
-
1 den Aufbau eines herkömmlichen Bildsignalverarbeitungssystems;
-
2 ein Bockdiagramm, das
eine Struktur zeigt, die bei dem in 1 gezeigten,
herkömmlichen Bildsignalverarbeitungssystem
Signale von einem Bildsensor an einen Bildprozessor überträgt;
-
3 eine bei einem Bildsignalverarbeitungssystem
gemäß einer
Ausführungsform
der vorliegenden Erfindung zwischen einem Bildsensor und einem Bildprozessor
angeschlossene Sensorschnittstelle;
-
die 4A, 4B und 4C den
Aufbau von Sensortypenregistern des in 3 gezeigten Bildsignalverarbeitungssystems;
-
5 den inneren Aufbau der
in 3 gezeigten Sensorschnittstelle;
-
6 den Aufbau des in 3 gezeigten Bildprozessors;
und
-
7 eine Ansicht, die die
vom Bildsensor entsprechend dem Hersteller und dem Produktmodell
verarbeitete Datenspezifikation zeigt.
-
GENAUE BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Im
Folgenden wird im Einzelnen auf bevorzugte Ausführungsformen der vorliegenden
Erfindung Bezug genommen, von denen Beispiele in den beiliegenden
dargestellt sind, wobei übereinstimmende
Bezugszeichen durchgehend übereinstimmende
Elemente bezeichnen. Die Ausführungsformen
werden nachstehend beschrieben, um die vorliegende Erfindung unter
Bezugnahme auf die Figuren zu erläutern.
-
3 zeigt eine bei einem Bildsignalverarbeitungssystem
gemäß einer
Ausführungsform
der vorliegenden Erfindung zwischen einem Bildsensor 301 und
einem Bildprozessor 303 angeschlossene Sensorschnittstelle 302.
-
Gemäß 3 ist die Sensorschnittstelle 302 zwischen
dem Bildsensor 301 und dem Bildprozessor 303 angeordnet.
Die Sensorschnittstelle umfaßt einen
Sensorsignalprozessor 304, ein Sensortypenregister 305,
und einen Mikrocomputer (Micom) 306.
-
Der
Bildprozessor 303 enthält
einen Mikroprozessor, der die Funktion der Verarbeitung eines Signals
ausführt,
und der Mikroprozessor des Bildprozessors 303 kann die
Funktionen des Mikrocomputers 306 ausführen. Obwohl 3 den Mikrocomputer 306 getrennt
vom Bildprozessor 303 zeigt, kann der Mikroprozessor des
Bildprozessors 303 mittels eines in einem im Bildprozessor 303 enthaltenen, speziellen
Prozessor oder Speicher gespeicherten Programms die Funktionen des
Mikrocomputers der Bildschnittstelle 302 ausführen, ohne
das für
die Sensorschnittstelle 302 ein spezieller Prozessor und
ein Speicher vorgesehen sein müßten, die
die Funktion des Mikrocomputers 306 ausführen.
-
Der
Bildsensor 301 erfaßt über eine
(nicht dargestellte) Linse ein Bild, um analoge Bilddaten zu erzeugen.
Die analogen Bilddaten werden von einem Analog-Digital-Wandler (A/D-Wandler)
in digitale Bilddaten umgewandelt, und ein jedem Rahmen entsprechendes
Synchronisationssignal wird erzeugt, das an den Bildprozessor 303 übertragen
wird. Der Bildprozessor 303 empfängt auf der Grundlage des Synchronisationssignals
die digitalen Daten vom Bildsensor 301 und wandelt die
digitalen Daten unter Verwendung eines Bildcodie rungsprozesses in
formatierte Daten (Bilddaten) zur Verarbeitung durch eine (nicht
dargestellte) Codierverarbeitungseinheit um. Die vom Bildsensor 301 ausgegebenen
Signale umfassen ein vertikales Synchronisationssignal vsync, das
den Anfangspunkt eines Bildrahmens repräsentiert, ein horizontales
Synchronisationssignal hsync, das einen Aktivitätsstatus jeder Bildzeile des Bildrahmens
repräsentiert,
ein Pixeldatensignal (digitales Datensignal) pixel_data, das von
jedem Bildpixel ausgegebene Daten repräsentiert, und ein Pixeltaktsignal
pixel_clk, das die Synchronisation des Pixeldatensignals pixel_data
repräsentiert.
-
Die
vom Bildsensor 301 ausgegebenen Signale einschließlich des
vertikalen Synchronisationssignals vsync, des horizontalen Synchronisationssignals
hsync und des Pixeltaktsignals pixel_clk werden mit dem Synchronisationssignal
synchronisiert und enthalten Informationen für die Synchronisation jedes
Rahmens, die angeben, daß jeder
Rahmen entweder niedrige oder hohe Signale oder ansteigende und
abfallende Kanten enthält.
Das Pixeldatensignal pixel_data enthält die von den jeweiligen Bildpixeln übertragenen
Daten.
-
Das
vertikale Synchronisationssignal vsync, das horizontale Synchronisationssignal
hsync und das Pixeltaktsignal pixel_clk vom Bildsensor 301 werden
in den Sensorsignalprozessor 304 der Sensorschnittstelle 302 eingegeben,
bevor sie in den Bildprozessor 303 eingegeben werden.
-
Der
Mikrocomputer 306 umfaßt
einen Prozessor und einen lesbaren und überschreibbaren Speicher, beispielsweise
einen RAM, in dem den Bildsensor 301 betreffende Informationen
und ein Programm gespeichert sind, das den Bildsensor 301 steuert,
der für
das Bildsignalverarbeitungssystem verwendet wird. Entsprechend dem
für das
Bildsignalverarbeitungssystem verwendeten Bildsensor 301 werden
die Informationen verändert,
die den Bildsensor 301 repräsentieren, der in dem Bildsignalverarbeitungssystem
montiert ist, und das Programm zur Steuerung des im Bildsignalverarbeitungssystem montierten
Bildsensors 301 wird ebenfalls verändert. Die innere Funktionsweise
jedes Bildpixels des Bildsensors 301 wird von einem Allzweck-Eingangs- und
Ausgangssignal (GPIO-Signal) gesteuert, das von dem Mikrocomputer 306 gesteuert
wird. Das GPIO-Signal enthält
zum Aufführen
eines Lese-Schreib-Vorgangs zwei oder drei Zeilensignale und ein
Synchronisationstaktsignal und ein Datensignal. Diese Signale sind
bidirektionale Signale, die von dem Mikrocomputer 306 gesteuert
werden können, damit
sie einem von unterschiedlichen Bildsensoren mit unterschiedlichen
Merkmalen adaptiv entsprechen.
-
Der
Mikrocomputer 306 schreibt die den Bildsensor 301 betreffenden
Informationen in das Sensortypenregister 305 (speichert
sie). Nach Maßgabe
der im Sensortypenregister 305 gespeicherten Informationen
verändert
der Sensorsignalprozessor 304 das vertikale Synchronisationssignal
vsync, das horizontale Synchronisationssignal hsync, das Pixeltaktsignal
pixel_clk und das Pixeldatensignal pixel_data, die mit dem Bildsensor 301 kompatibel sind,
der in dem Bildsignalverarbeitungssystem montiert ist. Wie in 3 gezeigt, werden das veränderte vertikale
Synchronisationssignal vsync_1, das veränderte horizontale Synchronisationssignal
hsync_1 und das veränderte
Pixeltaktsignal pixel_clk_1 sowie das veränderte Pixeldatensignal pixel_data_1
in den Bildprozessor eingegeben.
-
Ein
Mustersignal „pattern" informiert den Bildprozessor 303 hinsichtlich
eines der vom Bildsensor 301 ausgegebenen Mustertypen.
Wenn der Bildsensor 301 keinen speziellen Bildprozessor
enthält,
gibt das Mustersignal „pattern" an, daß die vom Sensortypenregister 305 an
den Bildprozessor 303 übertragenen
Signale dem Bay er-Muster entsprechen. Das Bayer-Muster umfaßt die folgenden
Muster.
-
- 00: rgrgrg...
gbgbgbg...
- 01: bgbgbg...
grgrgr...
- 10: gbgbg...
rgrgrg...
- 11: grgrgr...
bgbgbg...
-
In
einem anderen Fall, in dem der Bildsensor 301 einen speziellen
Bildprozessor enthält,
gibt das Mustersignal „pattern" an, daß die vom
Sensortypenregister 305 an den Bildprozessor 303 gesendeten Signale
ein YUV-Muster aufweisen. Das Mustersignal „pattern" enthält die das YUV-Muster betreffenden
Daten.
-
Im
Sensortypenregister 305 sind die das Mustersignal „pattern" betreffenden Informationen
in den in 4A dargestellten
Blöcken
[b1 : b0] gespeichert. Der Mikrocomputer 306 sendet die
im Sensortypenregister 305 gespeicherten Informationen
als Mustersignal „pattern" an den Bildprozessor 303.
Die im Sensortypenregister 305 gespeicherten, die Größe eines
Bilds betreffenden Informationen werden vom Sensortypenregister 305 an
den Bildprozessor 303 gesendet. Die die Größe eines
Bilds betreffenden Informationen umfassen ein die horizontale Größe betreffendes
Signal „width", das die die horizontale
Größe des Bilds
bereffenden Informationen repräsentiert,
und ein die vertikale Größe betreffende
Signal „height", das die die vertikale
Größe des Bilds
betreffenden Informationen repräsentiert.
-
Der
Bildprozessor 303 erzeugt für den Bildcodierungsprozeß durch
Verarbeiten des veränderten
vertikalen Synchronisationssignals vsync_1, des veränderten
horizontalen Synchronisationssignals hsync_1 und des veränderten
Pixeltaktsignals pixel_clk_1 sowie des veränderten Pixeldatensignals pixel_data_1
ein weiteres vertikales Synchronisationssignal vsync_2, ein weiteres
horizontales Synchronisationssignal hsync_2 sowie Leuchtdichten- und
Chrominanzsignale Ycbor und YUV als Eingänge für die Bildcodierungseinheit.
-
Die 4A, 4B und 4C zeigen
den Aufbau eines Sensorsignalregisters 401, eines Registers 402 für die horizontale
Größe und eines
Registers 403 für
die vertikale Größe des Sensortypenregisters 305 des
in 3 gezeigten Bildsignalverarbeitungssystems.
-
Wie
in den 4A, 4B und 4C gezeigt, sind in einem Block [b1 :
b0] des Sensorsignalregisters 401 ein Interpolationsmuster,
in einem Block b2 des Sensorsignalregisters 401 die Polarität des Pixeltakts pixel_clock,
in einem Block b3 des Sensorsignalregisters 401 die Polarität des vertikalen
Synchronisationssignals vsync, in einem Block b4 des Sensorsignalregisters 401 die
Polarität
des horizontalen Synchronisationssignals hsync und in einem Block
b5 des Sensorsignalregisters 401 ein Modus für die Bildsignalverarbeitung
(ISP) (der Betriebsmodus des Bildprozessors 303 oder einen
eingeschalteten oder ausgeschalteten Zustand des Bildprozessors 303 repräsentierende
Informationen) gespeichert. Im Register 402 für die horizontale
Größe sind
die die horizontale Größe des Bilds
betreffenden Informationen „width" gespeichert, und
in dem Register 403 für
die vertikale Größe sind
die die vertikale Größe des Bilds betreffenden
Informationen „height" gespeichert. Obwohl
die 4A, 4B und 4C den
vorstehend beschriebenen Aufbau des Sensorsignalregisters 401, des
Registers 402 für
die horizontale Größe und des Registers 403 für die vertikale
Größe zeigen,
ist die vorliegende Erfindung nicht darauf beschränkt.
-
5 zeigt den inneren Aufbau
der in 3 gezeigten Sensorschnittstelle 302.
Unter Bezugnahme auf 5 wird
nachstehend ein von der Sensorschnittstelle 302 ausgeführter Signalumwandlungsprozeß im Einzelnen
beschrieben.
-
Das
den Anfangspunkt des Rahmens des Bilds repräsentierende vertikale Synchronisationssignal
vsync wird, wie in 4A gezeigt,
von einem ersten Multiplexer 502 unter Verwendung der im Block
b3 des Sensorsignalregisters 401 des Sensortypenregisters 305 gespeicherten
Polarität
des vertikalen Synchronisationssignals vsync als erstes Steuersignal 501 invertiert
oder nicht invertiert, wodurch ein Signal i_vsync ausgegeben wird,
das entweder ein invertiertes (polaritätsinvertiertes) Signal oder
ein nicht invertiertes (nicht polaritätsinvertiertes) Signal des
vertikalen Synchronisationssignals vsync ist. Wenn das Steuersignal 501 ein
hohes Signal ist, wird das vertikale Synchronisationssignal vsync
beispielsweise umgangen oder nicht in das invertierte Signal umgeändert, und
wenn das Steuersignal 501 ein niedriges Signal ist, wird
das vertikale Synchronisationssignal vsync in das invertierte Signal
umgeändert. Das
Signal i_vsync wird umgangen, um als verändertes vertikales Synchronisationssignal
vsync_1 ausgegeben zu werden, oder es nimmt durch einen zweiten
Multiplexer 502 unter Verwendung des im Block b5 des Sensorsignalregisters 401 gemäß 4 gespeicherten ISP-Modussignals
als Steuersignal einen Zustand mit einem niedrigen Pegel an (wird
geerdet). Dies bedeutet, daß das
Signal i_vsync umgangen wird, um an den Bildprozessor 303 gesendet zu
werden, wenn sich das ISP-Modussignal
im eingeschalteten Zustand befindet, und daß das Signal i_vsync einen
Zustand auf niedrigem Pegel annimmt (geerdet wird), wenn sich das
ISP-Modussignal im ausgeschalteten Zustand befindet.
-
Das
den Aktivitätsstatus
jeder Zeile des Bilds in dem Rahmen repräsentierende, horizontale Synchronisationssignal
hsync wird von einem dritten Multiplexer 506 unter Verwendung
der im Block b4 des Sensorsignalregisters 401 gemäß 4A gespeicherten Polarität des horizontalen
Synchronisationssignals hsync als zweites Steuersignal 505 zu dem
invertierten (polaritätsinvertierten)
Signal oder dem nicht invertierten (nicht polaritätsinvertierten)
Signal invertiert oder nicht invertiert, wodurch ein Signal i_hsync
ausgegeben wird, das entweder das invertierte (polaritätsinvertierte)
Signal oder das nicht invertierte (nicht polaritätsinvertierte) Signal des horizontalen
Synchronisationssignals hsync ist. Wenn das zweite Steuersignal 505 das
hohe Signal ist, wird das horizontale Synchronisationssignal hsync
beispielsweise umgangen (gesendet), ohne invertiert zu werden, und
wenn das zweite Steuersignal 505 das niedrige Signal ist,
wird das horizontale Synchronisationssignal hsync invertiert. Das
Signal i_hsync wird umgangen (nicht invertiert), um als verändertes
horizontales Synchronisationssignal hsync_1 ausgegeben zu werden,
oder es wird von einem vierten Multiplexer 508 unter Verwendung
des im Block b5 des Sensorsignalregisters 401 gespeicherten
ISP-Modussteuersignals als Steuersignal in einen Zustand mit niedrigem
Pegel versetzt (geerdet). Dies bedeutet, daß das Signal i_hsync umgangen
wird, um an den Bildprozessor 303 gesendet zu werden, wenn sich
das ISP-Modussignal
im eingeschalteten Zustand befindet, und daß das Signal i_hsync in den Zustand
mit niedrigem Pegel versetzt (geerdet) wird, wenn sich das ISP-Modussignal
im ausgeschalteten Zustand befindet.
-
Das
die Synchronisation der Pixeldaten der Pixel des Bilds repräsentierende
Pixeltaktsignal pixel_clk wird von einem fünften Multiplexer 510 unter
Verwendung der im Block b2 des Sensorsignalregisters 401 gemäß 4A gespeicherten Polarität des Pixeltaktsignals
pixel_clk als drittes Steuersignal 511 zu dem invertierten
(polaritätsinvertierten)
oder dem nicht invertierten (nicht polaritätsinvertierten) Signal invertiert
oder nicht invertiert, wodurch ein Signal i_pixel_clk ausgegeben
wird, das entweder das invertierte (polaritätsinvertierte) Signal oder
das nicht invertierte (nicht polaritätsinvertierte) Signal des Pixeltaktsignals
pixel_clk ist. Wenn das dritte Steuersignal 511 das hohe
Signal ist, wird das Pixeltaktsignal pixel_clk beispielsweise umgangen
(gesendet), ohne invertiert zu werden, und wenn das dritte Steuersignal 505 das
niedrige Signal ist, wird das Pixeltaktsignal pixel_clk invertiert.
Das Signal i_pixel_clk wird umgangen (nicht invertiert), um als
verändertes
Pixeltaktsignal pixel_clk_1 ausgegeben zu werden, oder wird vom
sechsten Multiplexer 512 unter Verwendung des im Block
b5 des Sensorsignalregisters 401 gespeicherten ISP-Modussteuersignals
als drittes Steuersignal in einen Zustand mit niedrigem Pegel versetzt
(geerdet). Dies bedeutet, daß das
Signal i_pixel_clk umgangen wird, um an den Bildprozessor 303 gesendet
zu werden, wenn sich das ISP-Modussignal im eingeschalteten Zustand
befindet, und daß das
Signal i_pixel_clk in den Zustand mit niedrigem Pegel versetzt (geerdet)
wird, wenn sich das ISP-Modussignal im ausgeschalteten Zustand befindet.
-
Das
Pixeldatensignal pixel_data wird durch einen siebten Multiplexer 514 unter
Verwendung der im Block b5 des Sensorsignalregisters 401 gemäß 4A gespeicherten Polarität des Pixeldatensignals
pixel_data als viertes Steuersignal 511 zu dem invertierten
(polaritätsinvertierten)
Signal oder dem nicht invertierten (nicht polaritätsinvertierten)
Signal invertiert oder nicht invertiert, wodurch das ver änderte Pixeldatensignal
pixel_data_1 ausgegeben wird, das entweder das invertierte (polaritätsinvertierte)
Signal oder das nicht invertierte (nicht polaritätsinvertierte) des Pixeldatensignals
pixel_data ist. Dies bedeutet, daß das Pixeldatensignal pixel_data
umgangen wird, um an den Bildprozessor 303 gesendet zu werden,
wenn sich das ISP-Modussignal
im eingeschalteten Zustand befindet, und das Pixeldatensignal pixel_data
in den Zustand mit niedrigem Pegel versetzt (geerdet) wird, wenn
sich das ISP-Modussignal im ausgeschalteten Zustand befindet.
-
Ein
in dem in 4A gezeigten
Block [b0 : b1] des Sensorsignalregisters 401 des Sensortypenregisters 305 gespeicherter
Interpolationswert wird als Mustersignal „pattern" an den Bildprozessor 303 gesendet.
Das Mustersignal „pattern" ist das Bayer-Muster
des Bildsensors 301 und wird signifikant, wenn sich das
im Sensorsignalregister 401 gespeicherte ISP-Modussignal
im eingeschalteten Zustand befindet.
-
Das
die horizontale Größe betreffende
Signal „width" ist ein in dem in 4B gezeigten Block [b15
: b0] des Registers 402 für die horizontale Größe des Sensortypenregisters 305 gespeicherter,
an den Bildprozessor 303 zu sendender Wert, der die horizontale
Größe des Rahmens
repräsentiert,
in dem sich der Bildsensor 301 in einem aktivierten Zustand befindet.
-
Das
die vertikale Größe betreffende
Signal „height" ist ein in dem in 4C gezeigten Block [b15 :
b0] des Registers 403 für
die vertikale Größe des Sensortypenregisters 305 gespeicherter,
an den Bildprozessor 303 zu sendender Wert, der die vertikale Größe des Rahmens
repräsentiert,
in dem sich der Bildsensor 301 im aktivierten Zustand befindet.
-
Der
Mikrocomputer 306 speichert Werte, die den Eigenschaften
des Bildsensors 301 entsprechen, der derzeit für das Bildverarbeitungssystem verwendet
wird, im Sensortypenregister 305 und steuert den gerade
verwendeten Bildsensor 301 unter Verwendung einer bidirektionalen
Kommunikation über
das Mehrzweck-Eingangs- und Ausgangssignal (das GPIO-Signal).
-
6 zeigt den Aufbau des in 3 gezeigten Bildprozessors 303.
Unter Bezugnahme auf 6 wird
nachstehend ein vom Bildprozessor 303 ausgeführter Bildsignalverarbeitungsvorgang
im Einzelnen beschrieben.
-
Das
veränderte
vertikale Synchronisationssignal vsync_1, das veränderte horizontale
Synchronisationssignal hsync_1, das veränderte Pixeltaktsignal pixel_clk_1,
das veränderte
Mustersignal „pattern" und das veränderte Pixeldatensignal pixel_data,
die von der Sensorschnittstelle 203 ausgegeben werden,
werden an den Bildprozessor 303 gesendet. Das veränderte vertikale
Synchronisationssignal vsync_1, das veränderte horizontale Synchronisationssignal
hsync_1, das veränderte
Pixeltaktsignal pixel_clk_1, das Mustersignal „pattern" und das Pixeldatensignal pixel_data
werden zur Verwendung für
einen Interpolationsprozeß vorübergehend in
einem Zeilenpuffer 601 gespeichert.
-
Eine
Interpolationseinheit 602 wandelt die vom Zeilenpuffer 601 empfangenen
Pixeldaten mit dem Bayer-Muster in weitere Daten mit einem RGB-Muster
um. Die RGB-Muster-Daten werden von einem Farbprozessor 603 verarbeitet,
um in weitere Daten, wie YCbCr oder YUV-Signale umgewandelt zu werden,
die als weiteres Pixeldatensignal pixel_data2 an einen weiteren
Multiplexer 604 gesendet werden.
-
Der
Multiplexer 604 wählt
unter Verwendung des im Block b5 des Sensorsignalregisters 401 gemäß 4A gespeicherten ISP- Modussignals als Steuersignal
das Pixeldatensignal pixel_data aus. Das ausgewählte Pixeldatensignal pixel_data
wird an eine YCbCr/YUV-Formatiervorrichtung 605 gesendet.
Wenn sich das ISP-Modussignal
im eingeschalteten Zustand befindet, wird beispielsweise das vom Farbprozessor
verarbeitete weitere Pixeldatensignal pixel_data2 als Eingang der
YCbCr/YUV-Formatiervorrichtung 605 ausgewählt, und
wenn sich das ISP-Modussignal im ausgeschalteten Zustand befindet,
wird das vom Bildsensor 301 ausgegebene Pixeldatensignal
pixel_data als Eingang der YCbCr/YUV-Formatiervorrichtung 605 ausgewählt.
-
Die
YCbCr/YW-Formatiervorrichtung 605 erzeugt die endgültigen Ausgangssignale
des Bildprozessors 303. Wenn sich das ISP-Modussignal im eingeschalteten
Zustand befindet, empfängt
die YCbCr/YUV-Formatiervorrichtung 605 das veränderte vertikale
und das veränderte
horizontale Synchronisationssignal und das veränderte Pixeltaktsignal vsync_1,
hsync_1, pixel_clk_1 sowie das veränderte Pixeldatensignal pixel_data1
als Eingangssignale, und wenn sich das ISP-Modussignal im ausgeschalteten
Zustand befindet, empfängt
die YCbCr/YUV-Formatiervorrichtung 605 die Signale i_vsync,
i_hsync, i_pixel_clk und das nicht durch einen ISP-Verarbeitungsvorgang
verarbeitete Pixeldatensignal pixel_data als Eingangssignale. Zudem empfängt die
YCbCr/YW-Formatiervorrichtung 605 die im Sensortypenregister 305 gespeicherten,
die vertikale und die horizontale Größe repräsentierenden Signale „height" und „width" als Eingangssignale.
-
Die
YCbCr/YUV-Formatiervorrichtung 605 erzeugt ein modifiziertes
Pixeldatensignal pixel_data_3, wie ein YCbCr-Signal im Format 4
: 2 : 2 oder ein YCbCr-Signal im Format 4 : 2 : 0, die dem Typ CCIR 656 oder
CCIR 601 entsprechen, bzw. ein formatiertes MPEG- oder JPEG-Signal
und ein modifiziertes vertikales und ein modifiziertes horizontales Synchronisationssignal
vsync_2 und hsync_2 des Rahmens.
-
Wie
vorstehend beschrieben kann das erfindungsgemäße Bildverarbeitungssystem
durch die zwischen dem Bildsensor und dem Bildprozessor angeordnete
Schnittstellenvorrichtung und das zwischen ihnen ausgeführte Verfahren
adaptiv dem gerade für
das Bildverarbeitungssystem verwendeten Bildsensor entsprechen,
der einem von vielen hersteller- und produktmodellbedingt unterschiedlichen Typen
von Bildsensoren zugehört.
-
Gemäß einem
Aspekt der vorliegenden Erfindung kann der Bildprozessor durch die
zwischen dem Bildsensor und dem Bildprozessor angeordnete Schnittstellenvorrichtung
und das zwischen ihnen ausgeführte
Verfahren jedem der unterschiedlichen Typen von Bildsensoren entsprechen
und adaptiv die von dem Bildsensor ausgegebenen Signale verarbeiten,
wodurch jeder zusätzliche
Umkonstruktionsvorgang zum Umkonstruieren des Bildprozessors vermieden
wird, um ihn an den Bildsensor anzupassen, der für das Bildverarbeitungssystem
verwendet wird, und die Herstellungsdauer und die Herstellungskosten
des Bildverarbeitungssystems verringert werden.
-
Obwohl
einige bevorzugte Ausführungsformen
der vorliegenden Erfindung dargestellt und beschrieben wurden, ist
für Fachleute
ersichtlich, daß Veränderungen
an dieser Ausführungsform
vorgenommen werden können,
ohne vom Prinzip und Geist der Erfindung abzuweichen, deren Rahmen
in den Ansprüchen
und ihrem Äquivalent
definiert ist.