-
Stand der Technik
-
Die Erfindung geht aus von einer Vorrichtung oder einem Verfahren nach Gattung der unabhängigen Ansprüche. Gegenstand der vorliegenden Erfindung ist auch ein Computerprogramm.
-
Bildsensoren können für ihre einzelnen Lichtsensoren beispielsweise eine rechteckige, hexagonale oder schiefwinkelige Gitterstruktur aufweisen. (Siehe zweidimensionale Bravais-Gitter)
-
Offenbarung der Erfindung
-
Vor diesem Hintergrund werden mit dem hier vorgestellten Ansatz ein Verfahren zum Abtasten eines Lichsignals mit Hilfe von Lichtsensoren in einem Bildsensor, eine Vorrichtung, die dieses Verfahren verwendet, sowie schließlich ein entsprechendes Computerprogramm gemäß den Hauptansprüchen vorgestellt. Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen der im unabhängigen Anspruch angegebenen Vorrichtung möglich.
-
Gemäß einer Ausführungsform wird ein Verfahren zum Abtasten eines Lichtsignals vorgestellt, wobei der Bildsensor aus einer Mehrzahl hexagonaler Sensorelemente besteht, die auf einem hexagonalen Gitter angeordnet sind.
-
Dabei sind die Sensorelemente derart angeordnet sind, dass die jeweiligen Mittelpunkte je drei benachbarter Sensorelemente durch gedachte Verbindungslinien zu einem im Wesentlichen gleichseitigen Dreieck verbindbar sind.
-
Die einzelnen Lichtsensoren können mit unterschiedlichen Spektralfiltern ausgestattet sein, die z.B. zur Farbrekonstruktion herangezogen werden. Jeder Lichtsensor erzeugt je nach Filtertyp ein Sensorsignal (Messung) einer dem Spektralfilter zugeordneten Lichteigenschaft.
-
Die Lichtsensoren werden so in verschiedene Sensortypen unterschieden. Das Verfahren weist dabei folgende Schritte auf:
-
Auslesen des Bildsensors durch reihenweises oder spaltenweises auslesen der Lichstsensormessungen oder der Lichtsensorsignale;
-
Zwischenspeichern von beim Abtasten zumindest vier benachbarter Reihen oder Spalten der ausgelesener Sensorsignale; und
-
Erzeugen einer Mehrzahl von je einem Sensorelement zugeordneten Lichteigenschaften durch Interpolation der Sensorsignale zumindest eines weiteren Sensortyps.
-
Unter einem, Bildsensor, kann eine Anordnung verstanden werden, die aus einer Vielzahl verschiedener Lichtsensoren bestehen.
-
Unter einem Lichtsensor kann ein eine physikalische Vorrichtung verstanden werden welche die Photonen eines Lichtstroms in Abhängigkeit ihrer Eigenschaften nach in ein messbares Signal umwandelt.
-
Die Eigenschaften des Lichtstroms sind dabei Energie und Wellenlänge der Photonen, Anzahl der Photonen pro Zeiteinheit (Lichtstromstärke / Intensität) und Polarisationsausrichtung der Photonen des Lichtstroms.
-
Gemäß einer Ausführungsform wird ein Verfahren zum Abtasten eines Lichtsensors vorgestellt, wobei der Lichtsensor eine Gitterstruktur aus einer Mehrzahl hexagonaler Sensorelemente aufweist, wobei die Sensorelemente derart angeordnet sind, dass die jeweiligen Mittelpunkte je drei benachbarter Sensorelemente durch gedachte Verbindungslinien zu einem im Wesentlichen gleichseitigen Dreieck verbindbar sind, wobei das Verfahren folgende Schritte umfasst:
Auslesen des Lichtsensors durch reihenweises Abtasten der Sensorelemente;
Zwischenspeichern von beim Abtasten zumindest vier benachbarter Reihen ausgelesenen Sensorsignalen; und
Erzeugen einer Mehrzahl von je einem Sensorelement zugeordneten Bildelementen durch Interpolation von Sensorsignalen, beispielsweise zumindest zweien der im Schritt des Zwischenspeicherns zwischengespeicherten Sensorsignale. Dabei können die zur Interpolation verwendeten Sensorsignale von Sensorelementen eines ersten Sensortyps verwendet werden und das Sensorelement, für das die Bildelemente erzeugt werden, ein Sensorelement eines sich von dem ersten Sensortyp unterscheidenden zweiten Sensortyp darstellen. Gemäß einer Ausführungsform kann auch eine Interpolation zumindest einer Bildinformation der verwendeten Sensorsignale durchgeführt werden.
-
Unter dem Abtasten eines Lichtsensors, auch Bildsensor genannt, kann verstanden werden, dass von den Sensorelementen bereitgestellte Sensorsignale abgetastet werden. Das Auslesen des Lichtsensors kann somit derart ausgeführt werden, dass ein reihenweises Abtasten der von den Sensorelementen bereitgestellten Sensorsignale durchgeführt wird. Im Schritt des Erzeugens können Lichteigenschaften als Bildelemente erzeugt werden. Eine gegebenenfalls bei der Interpolation verwendete Bildinformation kann zumindest einem Sensorsignal entsprechen oder durch zumindest ein Sensorsignal repräsentiert sein.
-
Beispielsweise kann im Schritt des Erzeugens eine Lichteigenschaft für ein Sensorelement eines zweiten Sensortyps durch Interpolation zumindest zweier Sensorsignale eines Sensorelements eines ersten Sensortyps, beispielsweise einem Sensorelement mit einem anderen Spektralfilter, erzeugt werden. Bei den dabei verwendeten Sensorsignalen kann es um im Schritt des Zwischenspeicherns zwischengespeicherte Sensorsignale handeln.
-
Unter einem reihenweisen Abtasten kann ein zeilen- oder spaltenweises Abtasten verstanden werden. Unter einem Sensorelement, auch Lichtsensor genannt kann ein einem bestimmten Messkanal zum Messen einer bestimmten Lichteigenschaft zugeordnetes, lichtempfindliches Bauelement des Lichtsensors verstanden werden. Beispielsweise kann der Lichtsensor zumindest drei Messkanäle zum Messen zumindest drei verschiedener Lichteigenschaften, etwa der Farben Rot, Grün und Blau, aufweisen. Die Sensorelemente können beispielsweise zueinander benachbart angeordnet sein oder bezüglich des ihnen jeweils zugeordneten Messkanals alternierend in der Gitterstruktur angeordnet sein. Die Sensorelemente können auch als Lixel bezeichnet werden welche insbesondere nur durch den eindimensionalen Messwert der Lichteigenschaft des Sensortypes beinhalten. Unter einem Bildelement kann ein Pixel eines mittels des Lichtsensors zu generierenden Bildes verstanden werden, welches insbesondere eine mehrdimensionale Information tragen kann, z.B die Zahlencodierung der dem Lichtsignal zugesprochenen Farbe. Beispielsweise können die Bildelemente im Schritt des Erzeugens unter Verwendung eines hexagonalen oder rechteckigen Ausgaberasters erzeugt werden. Unter einer Bildinformation kann beispielsweise eine basierend auf einer Interpolation ermittelte Farb- oder Helligkeitsinformation verstanden werden.
-
Der hier vorgestellte Ansatz beruht auf der Erkenntnis, dass ein Lichtsensor mit einer Gitterstruktur aus einer Mehrzahl hexagonaler Sensorelemente durch reihenweises, insbesondere auch reihenweise räumlich phasenverschobenes Abtasten der Sensorelemente Nyquist-konform und ohne Überabtastung ausgelesen werden kann.
-
Dabei ist es insbesondere bei dieser Anordnung möglich den die charakteristische Ortsfrequenz des Tiefpassfilters derart auszulegen, das höhere Ortsfrequenzen noch durchgelassen werden, im Unterschied zu einem vergleichbaren rechteeckigen Gitter.
-
Gemäß einer Ausführungsform können im Schritt des Zwischenspeicherns die Sensorsignale in einem Ringspeicher zwischengespeichert werden. Dadurch kann die Zwischenspeicherung möglichst effizient erfolgen.
-
Gemäß einer weiteren Ausführungsform können im Schritt des Erzeugens die Bildelemente unter Verwendung eines hexagonalen Ausgaberasters erzeugt werden. Zusätzlich oder alternativ können die Bildelemente unter Verwendung eines rechteckigen Ausgaberasters erzeugt werden. Dadurch kann ein hochaufgelöstes, realitätsgetreues Bild erzeugt werden, welches insbesondere auf den typischen Bildausgabegeräten ohne weitere Konvertierung angezeigt werden kann.
-
Eine Ausführung der Lichtsensoren ist eine Teilung des Lichtsensors in der Art und Weise, dass das Auslesen in zwei oder mehr zeitlichen unabhängigen Teilschritten erfolgen kann. Die Lichtsensoren werden also zeitlich phasenverschoben abgetastet. Die Teilung der Lichtsensoren kann auch als Subpixel bezeichnet werden und beinhaltet einen räumlichen Teilabschnitt des Sensorelements. Durch diese Ausführung kann eine ideale zeitliche Abtastung des Lichtsignals durch zeitlich überlappende Integration realisiert werden.
-
Das Weiteren kann der Lichtsensor zumindest einen ersten Messkanal zum Messen einer ersten Lichteigenschaft, einen zweiten Messkanal zum Messen einer zweiten Lichteigenschaft und einen dritten Messkanal zum Messen einer dritten Lichteigenschaft aufweisen. Die Sensorelemente können je einem der drei Messkanäle zugeordnet sein und derart angeordnet sein, dass je ein zentrales Sensorelement von sechs benachbarten Sensorelementen umgeben ist. Hierbei kann das zentrale Sensorelement einem anderen Messkanal zugeordnet sein als die sechs benachbarten Sensorelemente. Beispielsweise können im Schritt des Auslesens die drei Messkanäle durch reihenweises Abtasten der Sensorelemente ausgelesen werden. Im Schritt des Erzeugens können die Bildelemente durch Interpolation zumindest einer dem zentralen Sensorelement zugeordneten zentralen Bildinformation unter Verwendung von Sensorsignalen von zumindest drei der sechs benachbarten Sensorelemente erzeugt werden. Dadurch kann die Interpolation möglichst effizient durchgeführt werden. Gemäß einer Ausführungsform kann das zentrale Sensorelement dem ersten Messkanal zugeordnet sein, wobei drei der sechs benachbarten Sensorelemente je dem zweiten Messkanal zugeordnet sein können und drei weitere der sechs benachbarten Sensorelemente je dem dritten Messkanal zugeordnet sein können. Dementsprechend kann im Schritt des Erzeugens die zentrale Bildinformation durch Mittelung von Sensorsignalen der drei je dem zweiten Messkanal zugeordneten benachbarten Sensorelemente oder, zusätzlich oder alternativ, durch gewichtete Mittelung von Sensorsignalen der drei je dem dritten Messkanal zugeordneten benachbarten Sensorelemente interpoliert werden. Dadurch kann die Effizienz der Interpolation weiter erhöht werden.
-
Gemäß einer Ausführungsform kann das zentrale Sensorelement dem ersten Messkanal zugeordnet sein, wobei drei der sechs benachbarten Sensorelemente je dem zweiten Messkanal zugeordnet sein können und drei weitere der sechs benachbarten Sensorelemente je dem dritten Messkanal zugeordnet sein können. Liegen die Sensorelemente auf einem Hexagonalem Grid können die Lichtsensoren ein gleichschenkeliges Dreieck bilden.
-
Dementsprechend kann im Schritt des Erzeugens die zentrale Bildinformation durch gleichgewichtete Mittelung von Sensorsignalen der drei je dem zweiten Messkanal zugeordneten benachbarten Sensorelemente oder, zusätzlich oder alternativ, durch gleichgewichtete gewichtete Mittelung von Sensorsignalen der drei je dem dritten Messkanal zugeordneten benachbarten Sensorelemente interpoliert werden. Dadurch kann die Effizienz der Interpolation weiter erhöht werden.
-
Es kann im Schritt des Erzeugens eine die erste Lichteigenschaft repräsentierende Bildinformation als die zentrale Bildinformation interpoliert werden. Dadurch kann die erste Lichteigenschaft durch Interpolation aus den die zweite oder dritte Lichteigenschaft repräsentierenden Sensorsignalen ermittelt werden.
-
Es kann im Schritt des Erzeugens eine aus den Lichteigenschaften auch Bildinformationen erzeugt werden, die nur durch komplexe Rekonstruktion aus den Lichteigenschaften ermittelt werden können (z.B. Polarisation, LED Flicker Verhalten usw, ...)
-
Dieses Verfahren kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware, beispielsweise in einem Steuergerät, implementiert sein.
-
Der hier vorgestellte Ansatz schafft ferner eine Vorrichtung, die ausgebildet ist, um die Schritte einer Variante eines hier vorgestellten Verfahrens in entsprechenden Einrichtungen durchzuführen, anzusteuern bzw. umzusetzen. Auch durch diese Ausführungsvariante der Erfindung in Form einer Vorrichtung kann die der Erfindung zugrunde liegende Aufgabe schnell und effizient gelöst werden.
-
Hierzu kann die Vorrichtung zumindest eine Recheneinheit zum Verarbeiten von Signalen oder Daten, zumindest eine Speichereinheit zum Speichern von Signalen oder Daten, zumindest eine Schnittstelle zu einem Sensor oder einem Aktor zum Einlesen von Sensorsignalen von dem Sensor oder zum Ausgeben von Daten- oder Steuersignalen an den Aktor und/oder zumindest eine Kommunikationsschnittstelle zum Einlesen oder Ausgeben von Daten aufweisen, die in ein Kommunikationsprotokoll eingebettet sind. Die Recheneinheit kann beispielsweise ein Signalprozessor, ein Mikrocontroller oder dergleichen sein, wobei die Speichereinheit ein Flash-Speicher, ein EPROM oder eine magnetische Speichereinheit sein kann. Die Kommunikationsschnittstelle kann ausgebildet sein, um Daten drahtlos und/oder leitungsgebunden einzulesen oder auszugeben, wobei eine Kommunikationsschnittstelle, die leitungsgebundene Daten einlesen oder ausgeben kann, diese Daten beispielsweise elektrisch oder optisch aus einer entsprechenden Datenübertragungsleitung einlesen oder in eine entsprechende Datenübertragungsleitung ausgeben kann.
-
Unter einer Vorrichtung kann vorliegend ein elektrisches Gerät verstanden werden, das Sensorsignale verarbeitet und in Abhängigkeit davon Steuer- und/oder Datensignale ausgibt. Die Vorrichtung kann eine Schnittstelle aufweisen, die hard- und/oder softwaremäßig ausgebildet sein kann. Bei einer hardwaremäßigen Ausbildung können die Schnittstellen beispielsweise Teil eines sogenannten System-ASICs sein, der verschiedenste Funktionen der Vorrichtung beinhaltet. Es ist jedoch auch möglich, dass die Schnittstellen eigene, integrierte Schaltkreise sind oder zumindest teilweise aus diskreten Bauelementen bestehen. Bei einer softwaremäßigen Ausbildung können die Schnittstellen Softwaremodule sein, die beispielsweise auf einem Mikrocontroller neben anderen Softwaremodulen vorhanden sind.
-
In einer vorteilhaften Ausgestaltung erfolgt durch die Vorrichtung eine Steuerung des Fahrzeugs. Hierzu kann die Vorrichtung beispielsweise auf Sensorsignale wie Beschleunigungs-, Druck-, Lenkwinkel- oder Umfeldsensorsignale zugreifen. Die Ansteuerung erfolgt über Aktoren wie Brems- oder Lenkaktoren oder ein Motorsteuergerät des Fahrzeugs.
-
Von Vorteil ist auch ein Computerprogrammprodukt oder Computerprogramm mit Programmcode, der auf einem maschinenlesbaren Träger oder Speichermedium wie einem Halbleiterspeicher, einem Festplattenspeicher oder einem optischen Speicher gespeichert sein kann und zur Durchführung, Umsetzung und/oder Ansteuerung der Schritte des Verfahrens nach einer der vorstehend beschriebenen Ausführungsformen verwendet wird, insbesondere wenn das Programmprodukt oder Programm auf einem Computer oder einer Vorrichtung ausgeführt wird.
-
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
-
1 eine schematische Darstellung eines Bayer-Farbfilterarrays auf einem Bildsensor;
-
2 eine schematische Darstellung eines Bayer-Farbfilterarrays aus 1;
-
3 eine schematische Darstellung von Abtastpunkten einer rechteckigen Sensoranordnung;
-
4 eine schematische Darstellung von Abtastpunkten einer hexagonalen Sensoranordnung;
-
5 eine schematische Darstellung eines Adressierungsschemas in einem RGB-Farbfilterarray;
-
6 eine schematische Darstellung eines Adressierungsschemas in einem RGB-Farbfilterarray aus 5;
-
7 eine schematische Darstellung eines RGB-Farbfilterarrays aus 5;
-
8 eine schematische Darstellung eines RGB-Farbfilterarrays aus 5;
-
9 eine schematische Darstellung eines RGB-Farbfilterarrays aus 5;
-
10 eine schematische Darstellung eines RGB-Farbfilterarrays aus 5;
-
11 eine schematische Darstellung rechteckiger Pixel als weitere mögliche Ausführung einer Form einer sensitiven Fläche;
-
12 eine schematische Darstellung rechteckiger Pixel als weitere mögliche Ausführung einer Form einer sensitiven Fläche;
-
13 eine schematische Darstellung eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
14 eine schematische Darstellung eines Lichtsensors aus 13;
-
15 eine schematische Darstellung einer Interpolation mittels eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
16 eine schematische Darstellung einer Tiefpasscharakteristik einer Soll-Abtastung sowie eines Belichtungsschemas zur idealen zeitlichen Abtastung mit zeitlicher Überlappung;
-
17 eine schematische Darstellung eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
18 eine schematische Darstellung eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
19 eine schematische Darstellung eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
20 eine schematische Darstellung eines Lichtsensors gemäß einem Ausführungsbeispiel;
-
21 eine schematische Darstellung einer Vorrichtung gemäß einem Ausführungsbeispiel; und
-
22 ein Ablaufdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel.
-
In der nachfolgenden Beschreibung günstiger Ausführungsbeispiele der vorliegenden Erfindung werden für die in den verschiedenen Figuren dargestellten und ähnlich wirkenden Elemente gleiche oder ähnliche Bezugszeichen verwendet, wobei auf eine wiederholte Beschreibung dieser Elemente verzichtet wird.
-
1 zeigt eine schematische Darstellung eines Bayer-Farbfilterarrays 100 auf einem Bildsensor. Gezeigt sind einzelne Lixel 102 zur Detektion je einer Farbe, hier Rot (R), Blau (B) oder Grün (G). Vier solcher Lixel 102 bilden je eine Farbfilterarray-Zelle 104.
-
2 zeigt eine schematische Darstellung eines Bayer-Farbfilterarrays 100 aus 1.
-
3 zeigt eine schematische Darstellung von Abtastpunkten 300 einer rechteckigen Sensoranordnung.
-
4 zeigt eine schematische Darstellung von Abtastpunkten 300 einer hexagonalen Sensoranordnung.
-
5 zeigt eine schematische Darstellung eines Adressierungsschemas in einem RGB-Farbfilterarray 500 mit einem schlangenähnlichen Bus 502, auch snake-like bus genannt.
-
6 zeigt eine schematische Darstellung eines Adressierungsschemas in einem RGB-Farbfilterarray 500 aus 5, der hier mit einem geradlinigen Bus 600 realisiert ist.
-
7 zeigt eine schematische Darstellung eines RGB-Farbfilterarrays 500 aus 5. Eine charakteristische Größe eines räumlichen Tiefpassfilters ist durch drei Kreise 700 gekennzeichnet. Jeder der drei Kreise 700 enthält alle drei Kanäle des RGB-Farbfilterarrays 500.
-
8 zeigt eine schematische Darstellung eines RGB-Farbfilterarrays 500 aus 5. Gezeigt ist ein nicht orthogonales Abtastgitter 800 für einen Kanal, hier den R-Kanal.
-
9 zeigt eine schematische Darstellung eines RGB-Farbfilterarrays
500 aus
5. Gezeigt ist ein Abstand r zwischen Abtastpunkten
900 des RGB-Farbfilterarrays
500, auch sample points genannt, sowie ein Abstand d zwischen den Zeilen des Abtastgitters. Das Abtastgitter ist gleichabständig. Beispielsweise ist
-
10 zeigt eine schematische Darstellung eines RGB-Farbfilterarrays 500 aus 5. Das RGB-Farbfilterarray 500 weist eine ideale, hexagonale Diodenfläche 1000 auf.
-
11 zeigt eine schematische Darstellung rechteckiger Pixel 1100 als weitere mögliche Ausführung einer Form einer sensitiven Fläche. Das Auslesen der Pixel 1100 erfolgt durch Zeilenphasenschub.
-
12 zeigt eine schematische Darstellung rechteckiger Pixel 1100 als weitere mögliche Ausführung einer Form einer sensitiven Fläche. Im Unterschied zu 11 erfolgt das Auslesen der Pixel 1100 hier durch Spaltenphasenschub.
-
13 zeigt eine schematische Darstellung eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel. Der Lichtsensor 1300 weist gemäß diesem Ausführungsbeispiel eine Gitterstruktur aus einer Mehrzahl von ersten Sensorelementen 1302 zum Messen einer ersten Lichteigenschaft, einer Mehrzahl von zweiten Sensorelementen 1304 zum Messen einer zweiten Lichteigenschaft sowie einer Mehrzahl von dritten Sensorelementen 1306 zum Messen einer dritten Lichteigenschaft auf. Die Sensorelemente 1302, 1304, 1306 sind je als Sechseck ausgeformt und derart benachbart zueinander angeordnet, dass die jeweiligen Mittelpunkte je drei benachbarter Sensorelemente durch gedachte Verbindungslinien zu einem im Wesentlichen gleichseitigen Dreieck verbunden sind. Gemäß diesem Ausführungsbeispiel ist der Lichtsensor 1300 als RGB-Sensor zum Detektieren der Farbe Rot als der ersten Lichteigenschaft, der Farbe Blau als der zweiten Lichteigenschaft und der Farbe Grün als der dritten Lichteigenschaft ausgebildet. Hierbei repräsentiert die Farbe Rot einen ersten Messkanal des Lichtsensors 1300, die Farbe Blau einen zweiten Messkanal des Lichtsensors 1300 und die Farbe Grün einen dritten Messkanal Lichtsensors 1300.
-
Die Sensorelemente 1302, 1304, 1306 sind zeilen- wie auch spaltenweise alternierend in der Gitterstruktur angeordnet.
-
Wie in 13 zu erkennen, sind die Sensorelemente 1302, 1304, 1306 derart angeordnet, dass je eines der Sensorelemente von sechs benachbarten Sensorelementen umgeben ist. Das jeweils umgebene Sensorelement kann auch als zentrales Sensorelement bezeichnet werden. In 13 sind beispielhaft fünf solcher Nachbarschaften durch große Sechsecke markiert. Gezeigt sind drei grünzentrierte Nachbarschaften 1308 mit je einem dritten Sensorelement 1306 als zentralem Sensorelement sowie drei ersten Sensorelementen 1302 und drei zweiten Sensorelementen 1304 als benachbarten Sensorelementen, eine rotzentrierte Nachbarschaft 1310 mit einem ersten Sensorelement 1302 als zentralem Sensorelement sowie drei zweiten Sensorelementen 1304 und drei dritten Sensorelementen 1306 als benachbarten Sensorelementen sowie eine blauzentrierte Nachbarschaft 1312 mit einem zweiten Sensorelement 1304 als zentralem Sensorelement sowie drei ersten Sensorelementen 1302 und drei dritten Sensorelementen 1306 als benachbarten Sensorelementen.
-
Der Lichtsensor 1300 ist an eine Vorrichtung 1320 angeschlossen, die ausgebildet ist, um den Lichtsensor 1300 durch reihenweises Abtasten der Sensorelemente 1302, 1304, 1306 auszulesen. Dabei ausgelesene Sensorsignale 1322 speichert die Vorrichtung 1320 in einem Zwischenspeicher, etwa einem Ringspeicher, mit einer Kapazität von zumindest vier benachbarten Reihen. Die Vorrichtung 1320 ist ferner ausgebildet, um unter Verwendung der zwischengespeicherten Sensorsignale 1322 eine Mehrzahl von je einem Sensorelement zugeordneten Bildelementen 1324 durch Interpolation zumindest einer Bildinformation zu erzeugen. Gemäß dem in 13 gezeigten Interpolationsschema in einer hexagonalen Gitterstruktur mit gleichseitigen Dreiecken erfolgt die Interpolation beispielsweise im Fall der drei rotzentrierten Nachbarschaften 1308 durch Mittelung von Rot auf Grün oder durch Mittelung von Blau auf Grün im gleichseitigen Dreieck.
-
14 zeigt eine schematische Darstellung eines Lichtsensors 1300 aus 13. Unterhalb des Lichtsensors 1300, hier ein Lichtsensorarray zum zeilenweisen Auslesen, ist ein Speicher 1400 zum Speichern der von den einzelnen Sensorelementen 1302, 1304, 1306 erzeugten Sensorsignalen 1322 dargestellt. Der Speicher 1400 ist als Vier-Zeilen-Ringspeicher ausgebildet und ermöglicht somit eine effiziente Interpolation aller möglichen Nachbarschaftszellen. Der Speicher 1400 ist beispielsweise als Komponente der vorangehend anhand von 13 beschriebenen Vorrichtung realisiert.
-
15 zeigt eine schematische Darstellung einer Interpolation mittels eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel, etwa eines vorangehend anhand der 13 und 14 beschriebenen Lichtsensors. Gezeigt ist eine Interpolation von Messwerten der Sensorelemente 1302, 1304, 1306 zu den Bildelementen 1324 auf unterschiedlichen Ausgaberastern 1500, 1502, auch Grids genannt. Hierbei repräsentiert ein erstes Ausgaberaster 1500 ein Pixelarray mit multidimensionalem Inhalt, etwa {r, g, b} oder {L, u, v}, in einem hexagonalen Gitter und ein zweites Ausgaberaster 1502 ein Pixelarray mit multidimensionalem Inhalt, etwa {r, g, b} oder {L, u, v}, in einem rechteckigen Gitter.
-
Der Speicher 1400 dient zum zeilenweisen Auslesen des Lichtsensors 1300 und umfasst einen Ringspeicher aus vier Zeilen in zwei Phasenlagen.
-
Gezeigt ist ferner eine Erzeugungseinheit 1504 der Vorrichtung 1320, die gemäß diesem Ausführungsbeispiel ausgebildet ist, um unter Verwendung der zwischengespeicherten Sensorsignale 1322 je nach Zustand des Speichers 1400, insbesondere je nach Phasenlage des Speichers 1400, und je nach Zentrierung der durch die Sensorelemente gebildeten Nachbarschaften eine komplexe Pixel- oder Farb(re)konstruktion durchzuführen.
-
16 zeigt eine schematische Darstellung einer Tiefpasscharakteristik 1600 einer Soll-Abtastung sowie eines Belichtungsschemas 1602 zur idealen zeitlichen Abtastung mit zeitlicher Überlappung.
-
17 zeigt eine schematische Darstellung eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel, etwa eines vorangehend anhand der 13 bis 15 beschriebenen Lichtsensors. Gemäß diesem Ausführungsbeispiel sind die Sensorelemente 1302, 1304, 1306 je in zwei Subpixel 1, 2 unterteilt. Hierbei ist die Vorrichtung ausgebildet, um den Lichtsensor 1300 durch zeitverschobenes, zeitlich überlappendes Abtasten der Subpixel 1, 2 in zwei Phasen auszulesen.
-
18 zeigt eine schematische Darstellung eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel. Im Unterschied zu 17 sind die Sensorelemente 1302, 1304, 1306 je in drei Subpixel 1, 2, 3 unterteilt. Entsprechend ist die Vorrichtung ausgebildet, um den Lichtsensor 1300 durch zeitverschobenes, zeitlich überlappendes Abtasten der Subpixel 1, 2, 3 in drei Phasen auszulesen.
-
19 zeigt eine schematische Darstellung eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel. Der Lichtsensor 1300 entspricht im Wesentlichen einem vorangehend anhand von 14 beschriebenen Lichtsensor und zeigt eine Speichererweiterung des Speichers 1400 für ein Ausleseschema mit zwei Zeitphasen. Durch das zeitlich phasenverschobene Auslesen des Lichtsensors 1300 kann der Lichtsensor 1300 flackerfrei ausgelesen werden.
-
20 zeigt eine schematische Darstellung eines Lichtsensors 1300 gemäß einem Ausführungsbeispiel. Im Unterschied zu 19 zeigt 20 eine Speichererweiterung des Speichers 1400 für ein Ausleseschema mit drei Zeitphasen.
-
21 zeigt eine schematische Darstellung einer Vorrichtung 1320 gemäß einem Ausführungsbeispiel, etwa einer Vorrichtung, wie sie vorangehend anhand der 13 bis 20 beschrieben ist. Die Vorrichtung 1320 umfasst eine Ausleseeinheit 2100 zum Auslesen des Lichtsensors durch reihenweises Abtasten der Sensorelemente. Der Speicher 1400 ist ausgebildet, um die beim Abtasten zumindest vier benachbarter Reihen des Lichtsensors ausgelesenen Sensorsignale 1322 zwischenzuspeichern. Der Speicher 1400 ist mit der Erzeugungseinheit 1504 verbunden, die ausgebildet ist, um die Bildelemente 1324, auch Lichteigenschaften genannt, durch Interpolation zumindest eines Sensorsignals, beispielsweise durch Interpolation einer Bildinformation unter Verwendung der zwischengespeicherten Sensorsignale 1322 zu erzeugen.
-
22 zeigt ein Ablaufdiagramm eines Verfahrens 2200 gemäß einem Ausführungsbeispiel. Das Verfahren 2200 zum Abtasten eines Lichtsensors kann beispielsweise im Zusammenhang mit einer vorangehend anhand von 21 beschriebenen Vorrichtung durchgeführt werden. Hierbei wird in einem Schritt 2210 der Lichtsensor durch reihenweises Abtasten der Sensorelemente ausgelesen. In einem weiteren Schritt 2220 werden die beim Abtasten zumindest vier benachbarter Reihen ausgelesenen Sensorsignale zwischengespeichert. Schließlich werden in einem Schritt 2230 die je einem Sensorelement zugeordneten Bildelemente durch Interpolation entsprechender Bildinformationen unter Verwendung der zwischengespeicherten Sensorsignale erzeugt.
-
Nachfolgend werden verschiedene Ausführungsbeispiele des hier vorgestellten Ansatzes anhand der 1 bis 22 nochmals mit anderen Worten beschrieben.
-
Mittels des hier beschriebenen Ansatzes wird beispielsweise ein Pixeldesign eines Farbbildsensors derart angepasst, dass drei spektrale Kanäle wie etwa Rot, Grün und Blau mit gleicher räumlicher Frequenz abgetastet werden können. Dazu sind die Pixel jeder zweiten Spalte oder Zeile um eine halbe Gitterkonstante verschoben. Im Endeffekt wird damit eine Nyquist-konforme Abtastung eines Farblichtsignals mit 66 Prozent der üblicherweise benötigten Lichtsensoren ermöglicht.
-
Moderne Bildsensoren funktionieren üblicherweise nach folgendem Prinzip. Eine Optik erzeugt ein Lichtbild auf einem flächigen Sensor, auch Bildsensor oder Imager genannt. Der Bildsensor tastet dieses Bild räumlich und zeitlich ab. Um auch spektrale Information erhalten zu können, etwa um eine Farbe zu rekonstruieren, ist vor den einzelnen Lichtsensoren ein regelmäßiges Muster an Farbfiltern angebracht. Dabei wirkt die Optik als räumlicher Tiefpassfilter.
-
Lichtsensoren bestehen heutzutage in der Regel aus einigen Millionen einzelner Sensorelemente, wobei jedes Sensorelement einen Abtastpunkt darstellt. Das regelmäßige Farbfiltermuster wird auch als Farbfilterarray oder Color Filter Array (CFA) bezeichnet. Um Farbe rekonstruieren zu können, wird der sichtbare Spektralbereich in drei Abschnitte unterteilt. Dabei sollte jeder Spektralkanal als unabhängiges, räumlich verschoben abgetastetes Signal behandelt werden. Der Tiefpassfilter der Optik sollte sich eigentlich nach der niedrigsten Frequenz der Sensorelemente richten. Um Verwirrungen zu vermeiden, werden nachfolgend die Sensorelemente eines Lichtsensors Lixel für Light Sensor Element genannt, in Anlehnung an ein Bildelement, das Pixel genannt wird.
-
Die Bildsensoren sind üblicherweise auf einem regulären Rechteck angeordnet, wie in den 1 und 2 gezeigt. Das Farbfilterarray 100 besteht dabei üblicherweise aus einem RGGB-Bayer-Filterarray.
-
Das RGGB-Farbfilterarray sieht für die einzelnen Spektralkanäle eine unterschiedliche räumliche Abtastfrequenz vor. So wird der G-Kanal mit zwei Lixeln pro CFA-Zelle abgetastet, während der R-Kanal und der B-Kanal nur mit einem Lixel pro CFA-Zelle abgetastet werden. Folglich müsste für eine korrekte Abtastung der Tiefpassfilter der Optik auf die im Vergleich hierzu niedrigere Frequenz des R- und B-Kanals eingestellt werden. Dies erzeugt folglich eine Überabtastung im G-Kanal. Dies stellt in gewisser Weise ein Dilemma bei der Abtastung dar und ist seit einigen Jahren auch in der Literatur bekannt. Es wurde auf verschiedene Art und Weise versucht, die unterschiedlichen räumlichen Grenzfrequenzen zwischen G-, R- und B-Kanal auszunutzen oder zu umgehen.
-
Im Bereich der Consumer-Elektronik wird meist keine Nyquist-konforme Abstimmung zwischen Optik und Imager hergestellt und die Bildqualität durch Post Processing virtuell verbessert.
-
Gemäß dem hier vorgestellten Ansatz werden die Abtastpunkte nun so angepasst, dass etwa ein Drei-Kanal-CFA Nyquist-konform abgetastet werden kann. Dazu wird die Phase der Abtastpunkte in jeder zweiten Zeile oder Spalte um eine halbe Abtastperiode verschoben, wie dies in den 3 und 4 gezeigt ist. Der Phasenversatz kann auch in den Spalten realisiert sein, was die Verwendung eines geradlinigen Busses erlaubt, wie in 6 gezeigt. Im Weiteren ist es durch die heutzutage verfügbare BSI-Technologie möglich, den Read- und Adressbus unter der fotosensitiven Schicht zu verlegen.
-
Nun können, wie in den 7 und 8 gezeigt, die drei Kanäle des CFA in regelmäßigen Abständen verteilt sein. Die eingezeichneten Kreise 700 verdeutlichen die charakteristische Größe des Tiefpassfilters, der erforderlich ist, um das Signal korrekt rekonstruieren zu können.
-
Das Abtastgitter pro Kanal entspricht nun einem gedrehten, gestauchten Viereck. Wichtig ist, dass jeder Kanal des CFA für sich selbst rekonstruiert wird. Solche nicht orthogonalen Abtastungen sind etwa in Jähne, Digitale Bildverarbeitung, kurz mit einem Hinweis auf die bekannte Mathematik aus der Festkörperphysik beschrieben. 8 zeigt das nicht orthogonale Gitter der Abtastung eines einzelnen Kanals.
-
Es ist vorteilhaft, wenn alle Abtastpunkte den gleichen Abstand zueinander haben, insbesondere im Zusammenhang mit monochromatischen Sensoren. Dies vereinfacht die Berechnung gewichteter Nachbarschaftsoperationen, wie sie etwa für die Rekonstruktion von Farbsignalen und für Bildverarbeitungsalgorithmen aller Art erforderlich sind. Hierzu wird, wie in
9 gezeigt, der Abstand der Zeilen so angepasst, dass gilt:
-
Hierbei steht d für den Zeilenabstand und r den Lixel-Abstand.
-
Diese Limitierung ist allerdings nicht zwingend erforderlich, vereinfacht aber die dahinter liegende Bildverarbeitung und erzeugt ein ideales hexagonales Gitter, auf dem jedes Sensorelement oder Lixel zu seinen sechs Nachbarn den gleichen Abstand hat. Idealerweise nähert sich die Form der fotosensitiven Fläche eines solchen Lichtsensors einem Hexagon an, wie in 5 dargestellt. Allerdings kann auch durch die Verwendung eines rechteckigen Filters, wie er beispielsweise in den 11 und 12 gezeigt ist, eine ausreichend gute Signalqualität erreicht werden.
-
Das hexagonale Gitter ist beispielsweise derart gewählt, dass sich die Gitterpunkte durch gleichseitige Dreiecke darstellen lassen. Dadurch ergibt sich ein besonders einfaches Rekonstruktionsschema für die einzelnen Kanäle des Lichtsensors. Hierbei ist festzustellen, dass eine 7er-Nachbarschaft immer aus dem Rand von sechs Sensorelementen besteht. Beispielsweise wird ein Kanal des Lichtsensors an der Stelle eines zentralen Sensorelements einer solchen Nachbarschaft trivial durch den Sensormesswert interpoliert.
-
Die Interpolation der verbleibenden zwei Kanäle ist eine 2D-Interpolation. Hierfür sind mindestens drei Stützpunkte erforderlich. Dieser Minimalsatz an weiteren Stützpunkten befindet sich nun direkt auf dem Rand der Nachbarschaft. Ist das Gitter derart gewählt, dass ein gleichseitiges Dreieck zugrunde liegt, so ist die Interpolation auf das zentrale Sensorelement eine gleichgewichtete Interpretation der drei Sensorelemente des nächsten Kanals. Diese Interpolation ist für jede Nachbarschaft für jeden der zwei jeweils fehlenden Kanäle des Lichtsensors möglich. Ein entsprechendes Schema ist in 13 gezeigt.
-
Physikalisch gesehen handelt es sich bei der Interpolation um eine Rekonstruktion eines kontinuierlichen Signals der Kanäle des Lichtsensors, gefolgt von einer erneuten Abtastung. Die erneute Abtastung und die Rekonstruktion sollten auf den angewendeten Tiefpassfilter abgestimmt sein.
-
Des Weiteren sollte für eine solche Interpolation die komplette Nachbarschaft zugänglich sein. Bei Betrachtung des Lichtsensor-Arrays wird deutlich, dass es zwei unterschiedliche Anordnungen von Nachbarschaften gibt und dass sich die Nachbarschaften überlappen. Um auf die Nachbarschaften ohne erneuten Ausleseaufwand zugreifen zu können, ist der Speicher 1400 ausgebildet, um mindestens vier abgetastete Zeilen bereitzuhalten. Damit ist es möglich, alle Nachbarschaftsmöglichkeiten ohne doppeltes Lesen zu rekonstruieren. Der Speicher 1400 ist insbesondere als Zeilen-Ring-Buffer realisiert und zeilenweise mit den jeweiligen Messwerten der Sensorelemente befüllbar, wie dies in 14 gezeigt ist.
-
Unter Kenntnis eines aktuellen Zustands, genauer einer aktuellen Phasenlage, des Zeilenspeichers 1400 wird nun die Pixelrekonstruktion ausgeführt. Dabei bestehen die oben genannten drei Möglichkeiten bezüglich des Zentrums einer Nachbarschaft.
-
Die Interpolation erlaubt es nun, für jedes Sensorelement ein Bildelement, auch Pixel genannt, zu erzeugen, das entweder alle drei Kanäle des Lichtsensors 1300 rekonstruiert beinhaltet oder schon eine andere weiterführende Merkmalsberechnung aus den drei Kanälen anfertigt, etwa eine Farbraumkonvertierung in den CIELUV- oder Lab-Farbraum, ein sogenanntes Tonemapping oder eine Gamma-Korrektur.
-
Des Weiteren ermöglicht die Interpolation, die Ausgangspixel entweder auf ein hexagonales Raster 1500 oder auf ein rechteckiges Raster 1502 zu transferieren. Mittels der Interpolation kann somit eine Überabtastung oder eine Unterabtastung realisiert werden. 15 zeigt dieses Vorgehen schematisch.
-
Gemäß einem weiteren Ausführungsbeispiel ist der Lichtsensor 1300 zeitlich phasenversetzt auslesbar. Die zeitliche Modulation von Licht ist heutzutage nicht mehr zu vernachlässigen und erzeugt bei üblichen Belichtungszeiten und Bitraten zeitliche Aliasing-Artefakte. Um dies zu vermeiden, sollte dasselbe Lichtsignal zeitlich überlappend und gegebenenfalls unterschiedlich gewichtet ausgelesen werden. Dies ermöglicht ein sogenanntes flackerfreies Sensordesign und verhindert zeitliche Aliasing-Effekte. Dies wird beispielsweise durch eine Teilung der Sensorelemente in Subpixel und das Auslesen der Sensorelemente in unterschiedlichen zeitlichen Phasen ermöglicht. 16 zeigt ein entsprechendes Schema im Zeitbereich.
-
Da ein zeitlicher Tiefpassfilter nur durch die Belichtungszeit zu erreichen ist, wird der zeitliche Versatz gemäß einem Ausführungsbeispiel durch eine räumliche Phaseneinteilung realisiert. Dabei wird durch den räumlichen Tiefpassfilter das Signal weiterhin räumlich korrekt rekonstruiert.
-
Ein typisches Ausleseschema besteht beispielsweise darin, die den Phasen zugeordneten Pixel zeitlich jeweils um die Hälfte überlappen zu lassen. Dabei kann auf eine Gewichtung verzichtet werden, da dies technisch schwer umsetzbar ist. Die Integrationszeit dient als sogenanntes Rechteck- oder Boxfilter im Frequenzraum.
-
Die 17 und 18 zeigen je nach gewählter Phasenanzahl die Möglichkeiten einer Aufteilung der hexagonalen Pixelstruktur. Eine ähnliche Aufteilung ist auch für runde oder rechteckige Pixelformen möglich.
-
Bei der Anwendung des vorstehenden zeitlichen Phasenschemas sollte jede Phase wie ein eigener Lichtsensor behandelt werden. Deswegen sollte die Speichereinheit entsprechend erweitert werden. Dies ist in den 19 und 20 gezeigt.
-
In diesen Fällen wird ferner die Pixelgenerierung um eine zeitliche Interpolation erweitert. Beispielsweise wird an dieser Stelle eine optimal gewichtete Mischung der Pixel der drei Phasenlagen genutzt, um jeweils für eine Nachbarschaft einen bestimmten Zeitpunkt zu rekonstruieren. Um die Bildrate und die Belichtungszeiten auf heute übliche Zahlenwerte zu bringen, werden die gewichteten Mittelungen beispielsweise entsprechend kaskadiert.
-
Die genannten Ausführungsbeispiele zur Realisierung des Lichtsensors 1300 stellen nur einige von vielen Möglichkeiten dar. Prinzipiell kann der Lichtsensor 1300 mindestens mit folgenden Farbfiltern für Licht im sichtbaren Bereich realisiert werden: Cyan, Magenta, Yellow, Red, Green, Blue, Clear.
-
Für ein System, das nur mit sichtbarem Licht arbeitet, sind alle Kombinationen von drei unterschiedlichen Farbfiltern sinnvoll, etwa R-C-G, R-C-B oder Yellow-Clear-Magenta. Im nicht sichtbaren Bereich können die Spektralfilter je nach Ausführungsbeispiel durch Infrarot-Bandpassfilter, Polarisationsfilter oder UV-Filter erweitert werden. Auch hier sind insbesondere im Zusammenhang mit den genannten Filtern noch weitere Kombinationen möglich.
-
Umfasst ein Ausführungsbeispiel eine „und/oder“-Verknüpfung zwischen einem ersten Merkmal und einem zweiten Merkmal, so ist dies so zu lesen, dass das Ausführungsbeispiel gemäß einer Ausführungsform sowohl das erste Merkmal als auch das zweite Merkmal und gemäß einer weiteren Ausführungsform entweder nur das erste Merkmal oder nur das zweite Merkmal aufweist.