-
[Technisches Gebiet]
-
Die vorliegende Offenbarung betrifft eine Signalverarbeitungseinrichtung, ein Signalverarbeitungsverfahren und ein Programm und insbesondere eine Signalverarbeitungseinrichtung, ein Signalverarbeitungsverfahren und ein Programm, die es ermöglichen, die Funktionalität weiter zu verbessern.
-
[Stand der Technik]
-
Üblicherweise wird in einem iTOF(indirect Time Of Flight - indirekte Laufzeit)-Sensor, durch den eine Verschiebung der Phase basierend auf einer Laufzeit von Licht detektiert wird, um eine Entfernungsmessung durchzuführen, das MIPI(Mobile Industry Processor Interface)-Format zur Übertragung von Phasendaten an eine Vorrichtung in einer späteren Stufe, wie etwa einen Anwendungsprozessor, verwendet.
-
Zum Beispiel offenbart PTL 1 eine Entfernungsmessungseinrichtung, in der ein Schnittstellenschaltkreis, der der MIPI entspricht, für einen Kommunikationsschnittstellenabschnitt zum Ausgeben berechneter Entfernungsmessungsdaten an einen externen Host-IC verwendet wird.
-
[Zitatliste]
-
[Patentliteratur]
-
[PTL 1] Japanisches Patent, Offenlegungs-Nr.
2020-148682
-
[Kurzdarstellung]
-
[Technisches Problem]
-
Insbesondere gibt es Fortschritte bezüglich einer Verbesserung der Funktionalität eines Entfernungsmessungssystems einschließlich eines iTOF-Sensors und es wird angenommen, dass nicht nur eine Übertragung solcher Phasendaten, wie zuvor beschrieben, sondern auch eine Übertragung von Tiefendaten, OPD(optischer Detektor)-Daten und so weiter verlangt wird. Da jedoch das herkömmliche MIPI-Format keine Übertragung von Tiefendaten, OPD-Daten oder dergleichen unterstützt, ist es erforderlich, die Funktionalität auf eine solche Weise zu verbessern, dass eine Übertragung solcher Daten, wie zuvor beschrieben, möglich wird.
-
Die vorliegende Offenbarung erfolgte in Anbetracht einer solchen Situation, wie zuvor beschrieben, und es ist eine Aufgabe der vorliegenden Offenbarung, zu ermöglichen, eine weitere Verbesserung der Funktionalität zu erzielen.
-
[Lösung des Problems]
-
Eine Signalverarbeitungseinrichtung gemäß einem Aspekt der vorliegenden Offenbarung beinhaltet einen Tiefendatenverarbeitungsabschnitt, der einen Signalprozess für Phasendaten ausführt, die von einem iTOF-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist, und einen Übertragungsverarbeitungsabschnitt, der die Tiefendaten in einem vorbestimmten Ausgabeformat überträgt.
-
Ein Signalverarbeitungsverfahren oder ein Programm gemäß einem Aspekt der vorliegenden Offenbarung beinhaltet Ausführen eines Signalprozesses für Phasendaten, die von einem iTOF-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist, und Übertragen der Tiefendaten in einem vorbestimmten Ausgabeformat.
-
Bei einem Aspekt der vorliegenden Offenbarung wird ein Signalprozess für Phasendaten ausgeführt, die von einem iTOF-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist, und werden die Tiefendaten in einem vorbestimmten Ausgabeformat übertragen.
-
[Kurze Beschreibung der Zeichnungen]
-
- [1] 1 ist ein Diagramm, das ein herkömmliches MIPI-Format darstellt.
- [2] 2 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Ausführungsform eines Entfernungsmessungssystem darstellt, auf das die vorliegende Technologie angewendet wird.
- [3] 3 ist ein Diagramm, das ein Beispiel für ein Ausgabeformat zum Ausgeben von Tiefendaten und OPD-Daten von einem Signalverarbeitungsabschnitt darstellt.
- [4] 4 ist ein Diagramm, das ein Beispiel für ein Tiefenpixelformat und ein OPD-Pixelformat darstellt.
- [5] 5 ist ein Flussdiagramm, das einen Signalprozess des Signalverarbeitungsabschnitts darstellt.
- [6] 6 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Ausführungsform eines Computers darstellt, auf den die vorliegende Technologie angewandt wird.
-
[Beschreibung von Ausführungsformen]
-
Nachfolgend werden spezielle Ausführungsformen, auf die die vorliegende Technologie angewandt wird, ausführlich unter Bezugnahme auf die Zeichnungen beschrieben.
-
<Herkömmliches MIPI-Format>
-
1 stellt ein herkömmliches MIPI-Format dar.
-
Wie in 1 dargestellt, ist das herkömmliche MIPI-Format, das zum Ausgeben von Phasendaten von einem iTOF-Sensor verwendet wird, derart vorgegeben, dass zwei Sätze von vier Phasendatenelementen (RAW), was insgesamt acht Phasendatenelemente ergibt, auf einen Rahmen der MIPI abgebildet werden. Jedoch unterstützt ein solches herkömmliches MIPI-Format keine Abbildung mehrerer unterschiedlicher Datenelemente, wie etwa von Tiefendaten und OPD-Daten, auf das MIPI-Format desselben Rahmens.
-
<Beispiel für eine Konfiguration des Entfernungsmessungssystems>
-
2 ist ein Blockdiagramm, das ein Beispiel für eine Konfiguration einer Ausführungsform eines Entfernungsmessungssystem 11 darstellt, auf das die vorliegende Technologie angewendet wird.
-
Wie in 2 dargestellt, beinhaltet das Entfernungsmessungssystem 11 einen iTOF-Sensor 12, eine Signalverarbeitungseinrichtung 13 und einen Anwendungsprozessor 14.
-
Der iTOF-Sensor 12 führt eine Entfernungsmessung durch Bestrahlen eines Zielobjekts, das ein Ziel einer Entfernungsmessung ist, mit einem gepulsten Laserstrahl und Detektieren einer Phasenverschiebung eines Pulses in reflektiertem Licht des Laserstrahls durch und liefert Phasendaten, die die Phase angeben, an die Signalverarbeitungseinrichtung 13. Zum Beispiel kann der iTOF-Sensor 12 die Phasendaten an die Signalverarbeitungseinrichtung 13 gemäß dem MIPI-Format übertragen, das in 1 dargestellt ist.
-
Die Signalverarbeitungseinrichtung 13 ist zum Beispiel ein LSI(Large Scale Integration)-Tiefenhardwarebeschleuniger, der zur ausschließlichen Verwendung zum Anwenden eines Signalprozesses auf die Phasendaten gestaltet ist, die von dem iTOF-Sensor 12 bereitgestellt werden. Ferner überträgt die Signalverarbeitungseinrichtung 13 die Phasendaten, die von dem iTOF-Sensor 12 bereitgestellt werden, oder Tiefendaten und OPD-Daten, die als ein Ergebnis des Signalprozesses für die Phasendaten erhalten werden, an den Anwendungsprozessor 14.
-
Der Anwendungsprozessor 14 führt verschiedene Anwendungen unter Verwendung der Daten aus, die von der Signalverarbeitungseinrichtung 13 bereitgestellt werden. Ferner beinhaltet der Anwendungsprozessor 14 einen Schnittstellenschaltkreis (MIPI-Rx-Schnittstelle), der der MIPI zum Empfangen der Daten entspricht, die von der Signalverarbeitungseinrichtung 13 an diesen übertragen werden.
-
Wie in der Figur dargestellt, beinhaltet die Signalverarbeitungseinrichtung 13 einen ENB-Separator 21, einen OPD-Berechnungsabschnitt 22, einen Tiefendatenverarbeitungsabschnitt 23, einen Speicherungsabschnitt 24, einen Datentypausgabeabschnitt 25, einen ENB-Datenausgabeabschnitt 26, einen OPD-Datenausgabeabschnitt 27, einen Tiefendatenausgabeabschnitt 28, einen ersten Auswahlabschnitt 29, einen zweiten Auswahlabschnitt 30, eine MIPI-Übertragungsschnittstelle 31 und eine Ausgabesteuerung 32. Der Speicherungsabschnitt 24 beinhaltet einen ENB-Datenabspeicherungsabschnitt 41, einen OPD-Datenabspeicherungsabschnitt 42 und einen Tiefendatenabspeicherungsabschnitt 43. Die Ausgabesteuerung 32 weist einen Horizontalzähler 51 und einen Vertikalzähler 52 auf.
-
Phasendaten, die von dem iTOF-Sensor 12 an die Signalverarbeitungseinrichtung 13 geliefert werden, werden in den ENB-Separator 21 und den zweiten Auswahlabschnitt 30 eingegeben.
-
Der ENB-Separator 21 extrahiert eingebettete Daten, die in den Phasendaten eingebettet sind, die von dem iTOF-Sensor 12 geliefert werden, und speichert die extrahierten Daten in dem ENB-Datenabspeicherungsabschnitt 41 des Speicherungsabschnitts 24 ab. Dann liefert der ENB-Separator 21 die Phasendaten, die erhalten werden, nachdem die eingebetteten Daten extrahiert wurden, an den OPD-Berechnungsabschnitt 22.
-
Der OPD-Berechnungsabschnitt 22 berechnet aus den Phasendaten, die von dem ENB-Separator 21 an diesen geliefert werden, OPD-Daten, die eine detektierte Lichtmenge angeben, die zur Ausführungsform einer Belichtungsautomatik (AE: Automatic Exposure) in einer späteren Stufe erforderlich ist, und speichert die berechneten OPD-Daten in dem OPD-Datenabspeicherungsabschnitt 42 des Speicherungsabschnitts 24 ab. Dann liefert der OPD-Berechnungsabschnitt 22 die Phasendaten, die von dem ENB-Separator 21 an diesen geliefert werden, an den Tiefendatenverarbeitungsabschnitt 23.
-
Der Tiefendatenverarbeitungsabschnitt 23 führt einen Tiefensignalprozess für die Phasendaten aus, die von dem OPD-Berechnungsabschnitt 22 bereitgestellt werden, um Tiefendaten zu erlangen, die die Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist. Zum Beispiel wird der Tiefendatenverarbeitungsabschnitt 23 durch Hardware implementiert, die zur ausschließlichen Verwendung für einen Signalprozess zum Erlangen von Tiefendaten gestaltet ist, und er kann den Tiefensignalprozess mit einer höheren Geschwindigkeit ausführen. Dann speichert der Tiefendatenverarbeitungsabschnitt 23 die als ein Verarbeitungsergebnis des Tiefensignalprozesses erlangten Tiefendaten in dem Tiefendatenabspeicherungsabschnitt 43 des Speicherungsabschnitts 24 ab.
-
Der Speicherungsabschnitt 24 beinhaltet zum Beispiel einen SRAM (Static Random Access Memory - statischer Direktzugriffsspeicher) und speichert verschiedene Arten von Daten, wie etwa eingebettete Daten, OPD-Daten und Tiefendaten, ab und speichert die Daten temporär.
-
Der Datentypausgabeabschnitt 25 gibt einen Datentyp (DT), der einen Datentyp von sowohl den eingebetteten Daten, den OPD-Daten als auch den Tiefendaten angibt, an den ersten Auswahlabschnitt 29 gemäß einem im Voraus eingestellten Parameter mit einem Timing gemäß einem Steuersignal der Ausgabesteuerung 32 aus.
-
Der ENB-Datenausgabeabschnitt 26 liest eingebettete Daten aus, die in dem ENB-Datenabspeicherungsabschnitt 41 des Speicherungsabschnitts 24 abgespeichert sind, und gibt die ausgelesenen Daten an den ersten Auswahlabschnitt 29 mit einem Timing gemäß einem Steuersignal der Ausgabesteuerung 32 aus.
-
Der OPD-Datenausgabeabschnitt 27 liest OPD-Daten aus, die in dem OPD-Datenabspeicherungsabschnitt 42 des Speicherungsabschnitts 24 abgespeichert sind, und gibt die ausgelesenen Daten an den ersten Auswahlabschnitt 29 mit einem Timing gemäß einem Steuersignal der Ausgabesteuerung 32 aus.
-
Der Tiefendatenausgabeabschnitt 28 liest Tiefendaten aus, die in dem Tiefendatenabspeicherungsabschnitt 43 des Speicherungsabschnitts 24 abgespeichert sind, und gibt die ausgelesenen Daten an den ersten Auswahlabschnitt 29 mit einem Timing gemäß einem Steuersignal der Ausgabesteuerung 32 aus.
-
Der erste Auswahlabschnitt 29 wählt beliebige des Datentyps, der eingebetteten Daten, der OPD-Daten und der Tiefendaten gemäß einem Steuersignal der Ausgabesteuerung 32 aus und gibt die ausgewählten Daten an den zweiten Auswahlabschnitt 30 aus. Es ist anzumerken, dass der Datentyp, die eingebetteten Daten, die OPD-Daten und die Tiefendaten nachfolgend nach Bedarf auch als Internerzeugungsdaten bezeichnet werden.
-
Der zweite Auswahlabschnitt 30 wählt entweder die Phasendaten, die von dem iTOF-Sensor 12 an die Signalverarbeitungseinrichtung 13 geliefert werden, oder die Internerzeugungsdaten, die über den ersten Auswahlabschnitt 29 an diesen geliefert werden, aus und gibt die ausgewählten Daten an die MIPI-Übertragungsschnittstelle 31 aus. Zum Beispiel kann der zweite Auswahlabschnitt 30 Daten auswählen, die von einer Anwendung benötigt werden, die durch den Anwendungsprozessor 14 ausgeführt wird.
-
Die MIPI-Übertragungsschnittstelle 31 liefert die Phasendaten oder die Internerzeugungsdaten, die über den zweiten Auswahlabschnitt 30 an diese geliefert werden, an den Anwendungsprozessor 14 in der späteren Stufe in einem solchen Ausgabeformat, dass die Daten gemäß dem MIPI-Format abgebildet werden.
-
Die Ausgabesteuerung 32 zählt, durch den Horizontalzähler 51 von dieser, die Anzahl an Pixeln in der Horizontalrichtung in den Daten in dem MIPI-Format und zählt, durch den Vertikalzähler 52 von dieser, die Anzahl an Pixeln in der Vertikalrichtung in den Daten in dem MIPI-Format. Dann liefert die Ausgabesteuerung 32 Steuersignale mit Timings gemäß den Zählwerten in der Horizontalrichtung und der Vertikalrichtung an den Datentypausgabeabschnitt 25, den ENB-Datenausgabeabschnitt 26, den OPD-Datenausgabeabschnitt 27 und den Tiefendatenausgabeabschnitt 28. Ferner liefert die Ausgabesteuerung 32 Steuersignale zum Steuern einer Auswahl durch den ersten Auswahlabschnitt 29 und den zweiten Auswahlabschnitt 30 an den ersten Auswahlabschnitt 29 bzw. den zweiten Auswahlabschnitt 30.
-
Die Signalverarbeitungseinrichtung 13 ist auf eine solche Weise, wie zuvor beschrieben, konfiguriert und kann eine Abbildung mehrerer unterschiedlicher Datenelemente, wie etwa von Tiefendaten und OPD-Daten, auf das MIPI-Format desselben Rahmens durchführen. Das heißt, dass die Signalverarbeitungseinrichtung 13 die Internerzeugungsdaten (Tiefendaten, OPD-Daten und eingebettete Daten) in einem solchen Ausgabeformat, wie in 3 dargestellt, übertragen kann.
-
In dem in 3 dargestellten Ausgabeformat ist ein Rahmenstart FS oben hinzugefügt, werden Tiefendaten, OPD-Daten und eingebettete Daten genutzt und ist ein Rahmenende FE an dem Schlussende hinzugefügt.
-
Die Tiefendaten beinhalten Daten für 480 Zeilen bei ihrem Maximum, wobei Daten jedes Pixels aus XYZC-Werten konfiguriert sind, und haben eine Datenmenge von 7680 Byte bei ihrem Maximum (= 12 Byte × 640 Pixel bei ihrem Maximum). Ferner werden vor den Tiefendaten ein Paket-Header PH und ein Datentyp DT (UD) genutzt und anschließend an die Tiefendaten wird ein Paket-Footer PF genutzt. Zum Beispiel beinhalten die Tiefendaten Daten von 640 × 480 Pixeln bei ihrem Maximum.
-
Die OPD-Daten beinhalten Daten von 242 Zeilen bei ihrem Maximum; vor den OPD-Daten werden ein Paket-Header PH und ein Datentyp DT (UD) genutzt und anschließend an die OPD-Daten wird ein Paket-Footer PF genutzt. Zum Beispiel beinhalten die OPD-Daten 242 Zeilen (= (120 Zeilen bei ihrem Maximum + 1 Linie) × 2 fmod), was 160 × 121 Pixel × 2 fmod bei ihrem Maximum ist.
-
Die eingebetteten Daten beinhalten Daten von 36 Zeilen bei ihrem Maximum und ein Paket-Header PH und ein Datentyp DT (EBD) werden vor den eingebetteten Daten genutzt und ein Paket-Footer PF wird anschließend an die eingebetteten Daten genutzt. Zum Beispiel beinhalten die eingebetteten Daten Daten von 36 Zeilen (= 4 Zeilen bei ihrem Maximum (Eingabe) × 8 Phase + 4 Zeilen bei ihrem Maximum (intern)).
-
4 stellt ein Beispiel für ein Tiefenpixelformat und ein OPD-Pixelformat dar.
-
In dem Tiefenpixelformat werden XYZC-Werte, die Tiefendaten konfigurieren, gemäß einem solchen XYZC-Pixelformat eingesetzt, wie in der Figur dargestellt.
-
In dem OPD-Pixelformat, wie in der Figur dargestellt, werden Datenelemente gemäß einem AE-OPD-Pixelformat außer der letzten Zeile genutzt und in der letzten Zeile werden Datenelemente gemäß einer letzten AE-OPD-Zeile genutzt. Es versteht sich, dass außer der letzten AE-OPD-Zeile alle Zeilen bis zu dem Zeilenende reserviert sind.
-
<Beispiel für eine Verarbeitung in dem Signalprozess>
-
Ein Signalprozess der Signalverarbeitungseinrichtung 13, der Internerzeugungsdaten in einem solchen Ausgabeformat, wie in 3 dargestellt, ausgibt, ist unter Bezugnahme auf ein Flussdiagramm beschrieben, das in 5 dargestellt ist.
-
In Schritt S11 fügt die MIPI-Übertragungsschnittstelle 31 zuerst einen Rahmenstart FS des Ausgabeformats gemäß einem Rahmenstart FS hinzu, der von dem iTOF-Sensor 12 in diese eingegeben wird. Dann löscht die Ausgabesteuerung 32 die Zählwerte des Horizontalzählers 51 und des Vertikalzählers 52.
-
In Schritt S12 extrahiert der ENB-Separator 21 eingebettete Daten, die in Phasendaten eingebettet sind, die von dem iTOF-Sensor 12 an diesen geliefert werden, und speichert die extrahierten Daten in dem ENB-Datenabspeicherungsabschnitt 41 des Speicherungsabschnitts 24 ab.
-
In Schritt S13 berechnet der OPD-Berechnungsabschnitt 22 OPD-Daten aus den Phasendaten, die über den ENB-Separator 21 an diesen geliefert werden, und speichert die berechneten Daten in dem OPD-Datenabspeicherungsabschnitt 42 des Speicherungsabschnitts 24 ab.
-
In Schritt S14 führt der Tiefendatenverarbeitungsabschnitt 23 einen Tiefensignalprozess unter Verwendung der Phasendaten durch, die über den OPD-Berechnungsabschnitt 22 an diesen geliefert werden, und speichert Tiefendaten, die als ein Ergebnis des Prozesses erlangt werden, in dem Tiefendatenabspeicherungsabschnitt 43 des Speicherungsabschnitts 24 ab.
-
In Schritt S15 fügt die MIPI-Übertragungsschnittstelle 31 einen Paket-Header PH oben zu einem Paket hinzu und fügt der Datentypausgabeabschnitt 25 einen Datentyp DT (UD) hinzu. Der Tiefendatenausgabeabschnitt 28 liest Tiefendaten für ein Paket aus dem Tiefendatenabspeicherungsabschnitt 43 des Speicherungsabschnitts 24 gemäß dem Zählwert des Horizontalzählers 51 der Ausgabesteuerung 32 aus und liefert die ausgelesenen Daten über den ersten Auswahlabschnitt 29 und den zweiten Auswahlabschnitt 30 an die MIPI-Übertragungsschnittstelle 31. Die MIPI-Übertragungsschnittstelle 31 gibt den Paket-Header PH, den Datentyp DT (UD), die Tiefendaten für ein Paket und den Paket-Footer PF aus. Dann wird dieser Prozess wiederholt für die Anzahl an Malen entsprechend der Anzahl an erforderlichen Paketen gemäß dem Zählwert des Vertikalzählers 52 der Ausgabesteuerung 32 durchgeführt.
-
In Schritt S16 fügt die MIPI-Übertragungsschnittstelle 31 einen Paket-Header PH oben zu dem Paket hinzu und fügt der Datentypausgabeabschnitt 25 einen Datentyp DT (UD) hinzu. Der OPD-Datenausgabeabschnitt 27 liest OPD-Daten für ein Paket aus dem OPD-Datenabspeicherungsabschnitt 42 des Speicherungsabschnitts 24 gemäß dem Zählwert des Horizontalzählers 51 der Ausgabesteuerung 32 aus und liefert die ausgelesenen Daten über den ersten Auswahlabschnitt 29 und den zweiten Auswahlabschnitt 30 an die MIPI-Übertragungsschnittstelle 31. Die MIPI-Übertragungsschnittstelle 31 gibt den Paket-Header PH, den Datentyp DT (UD), die OPD-Daten für ein Paket und den Paket-Footer PF aus. Dann wird dieser Prozess wiederholt für die Anzahl an Malen entsprechend der Anzahl an erforderlichen Paketen gemäß dem Zählwert des Vertikalzählers 52 der Ausgabesteuerung 32 durchgeführt.
-
In Schritt S17 fügt die MIPI-Übertragungsschnittstelle 31 einen Paket-Header PH oben zu dem Paket hinzu und fügt der Datentypausgabeabschnitt 25 einen Datentyp DT (EBD) hinzu. Der ENB-Datenausgabeabschnitt 26 liest ENB-Daten für ein Paket aus dem ENB-Datenabspeicherungsabschnitt 41 des Speicherungsabschnitts 24 gemäß dem Zählwert des Horizontalzählers 51 der Ausgabesteuerung 32 aus und liefert die ausgelesenen Daten über den ersten Auswahlabschnitt 29 und den zweiten Auswahlabschnitt 30 an die MIPI-Übertragungsschnittstelle 31. Die MIPI-Übertragungsschnittstelle 31 gibt den Paket-Header PH, den Datentyp DT (EBD), die ENB-Daten für ein Paket und den Paket-Footer PF aus. Dann wird dieser Prozess wiederholt für die Anzahl an Malen entsprechend der Anzahl an erforderlichen Paketen gemäß dem Zählwert des Vertikalzählers 52 der Ausgabesteuerung 32 durchgeführt.
-
In Schritt S18 fügt die MIPI-Übertragungsschnittstelle 31 ein Rahmenende FE zu der letzten hinzu, womit das Ausgeben eines Rahmens beendet wird.
-
Da die Signalverarbeitungseinrichtung 13 einen solchen Signalprozess, wie zuvor beschrieben, ausführt, ausführt, können Tiefendaten und OPD-Daten in einem Ausgabeformat, in dem sie auf das MIPI-Format abgebildet werden, an den Anwendungsprozessor 14 übertragen werden. Insbesondere kann die Signalverarbeitungseinrichtung 13 den Rahmenstart in dem MIPI-Format, das von dem iTOF-Sensor 12 in diese eingegeben wird, als einen Auslöser verwenden, um unter Verwendung des Zählwertes des Horizontalzählers 51 mehrere unterschiedliche Datenelemente, wie etwa Phasendaten, eingebettete Daten, Tiefendaten und OPD-Daten, in denselben Rahmen des MIPI-Formats abzubilden und die resultierenden Daten in der späteren Stufe an den Anwendungsprozessor 14 zu übertragen.
-
Da die Signalverarbeitungseinrichtung 13 Tiefendaten und OPD-Daten auf eine solche Weise erhält, kann die Funktionalität des Entfernungsmessungssystems 11 als Ganzes weiter verbessert werden. Mit anderen Worten ist das Entfernungsmessungssystem 11 derart konfiguriert, dass der Anwendungsprozessor 14 in der späteren Stufe den Tiefensignalprozess nicht durchführt, während die Signalverarbeitungseinrichtung 13 den Tiefensignalprozess mit einer hohen Geschwindigkeit ausführen kann. Dies ermöglicht es, zum Beispiel eine Reduzierung der Rahmenverzögerung zu erzielen.
-
Da die Signalverarbeitungseinrichtung 13 durch den zweiten Auswahlabschnitt 30 von dieser eine Auswahl von entweder Phasendaten oder Internerzeugungsdaten durchführen kann, ist es ferner auch möglich, zum Beispiel Phasendaten in dem herkömmlichen MIPI-Format zu übertragen. Es ist anzumerken, dass als eine Alternative zu der Konfiguration, bei der der iTOF-Sensor 12 und die Signalverarbeitungseinrichtung 13 unabhängig voneinander bereitgestellt sind, es zum Beispiel durch Einbinden des Schaltkreises der Signalverarbeitungseinrichtung 13 in einen Logikabschnitt des iTOF-Sensors 12 möglich ist, sie in einem Chip zu bilden, und es auch möglich ist, Tiefendaten und OPD-Daten in dem Ausgabeformat der vorliegenden Ausführungsform von dem iTOF-Sensor 12 des einen Chips auszugeben.
-
<Konfigurationsbeispiel eines Computers>
-
6 ist ein Blockdiagramm, das ein Beispiel für eine Hardwarekonfiguration eines Computers darstellt, der die zuvor beschriebene Reihe von Prozessen durch ein Programm ausführt.
-
In dem Computer sind eine CPU (Central Processing Unit - zentrale Verarbeitungseinheit) 101, ein ROM (Read Only Memory - Nurlesespeicher) 102, ein RAM (Random Access Memory - Direktzugriffsspeicher) 103 und ein EEPROM (Electronically Erasable and Programmable Read Only Memory - elektronisch löschbarer und programmierbarer Nurlesespeicher) 104 miteinander durch einen Bus 105 miteinander verbunden. Eine Eingabe/Ausgabe-Schnittstelle 106 ist ferner mit dem Bus 105 verbunden und ist mit der Außenwelt verbunden.
-
In dem auf eine wie zuvor beschriebene Weise konfigurierten Computer lädt die CPU 101 ein zum Beispiel in dem ROM 102 und dem EEPROM 104 gespeichertes Programm über den Bus 105 in den RAM 103 und führt dieses aus, um die zuvor beschriebene Reihe von Prozessen durchzuführen. Ferner kann das durch den Computer (die CPU 101) auszuführende Programm im Voraus in den ROM 102 geschrieben werden oder kann von außen über die Eingabe/Ausgabe-Schnittstelle 106 in den EEPROM 104 installiert oder aktualisiert werden.
-
Hier werden in der vorliegenden Schrift Prozesse, die gemäß einem Programm durch den Computer ausgeführt werden, möglicherweise nicht in zeitlicher Abfolge gemäß der Reihenfolge durchgeführt, die in dem Flussdiagramm beschrieben ist. Das heißt, dass die Prozesse, die gemäß einem Programm durch den Computer ausgeführt werden, auch Prozesse beinhalten, die parallel oder einzeln ausgeführt werden (zum Beispiel parallele Prozesse oder Prozesse durch ein Objekt).
-
Ferner kann das Programm durch einen einzigen Computer (Prozessor) verarbeitet werden oder kann auf mehrere Computer verteilt und durch diese verarbeitet werden. Zudem kann das Programm an einen Computer an einem fernen Ort transferiert und durch diesen ausgeführt werden.
-
Ferner bedeutet in der vorliegenden Schrift der Ausdruck System ein Satz aus mehreren Komponenten (Vorrichtungen, Modulen (Teilen) oder dergleichen) und es spielt keine Rolle, ob alle Komponenten in demselben Gehäuse enthalten sind oder nicht. Entsprechend sind mehrere Vorrichtungen, die in separaten Gehäusen untergebracht sind und durch ein Netz miteinander verbunden sind, sowie eine einzige Vorrichtung, die mehrere Module beinhaltet, die in einem einzigen Gehäuse untergebracht sind, Systeme.
-
Ferner kann zum Beispiel eine Konfiguration, die zuvor als eine einzige Vorrichtung (oder Verarbeitungseinheit) beschrieben wurde, ansonsten als mehrere Vorrichtungen (oder Verarbeitungseinheiten) konfiguriert werden. Umgekehrt können Konfigurationen, die zuvor als mehrere Vorrichtungen(oder Verarbeitungseinheiten) beschrieben wurden, gemeinsam als eine einzige Vorrichtung (oder Verarbeitungseinheit) konfiguriert sein. Ferner kann zu der Konfiguration jeder Vorrichtung (oder jeder Verarbeitungseinheit) eine Konfiguration außer jenen zuvor beschriebenen natürlich hinzugefügt werden. Solange die Konfiguration oder Aktion des gesamten Systems im Wesentlichen gleich ist, kann zudem ein Teil der Konfiguration einer gewissen Vorrichtung (oder Verarbeitungseinheit) in der Konfiguration einer anderen Vorrichtung (oder einer anderen Verarbeitungseinheit) enthalten sein.
-
Ferner kann zum Beispiel die vorliegende Technologie eine Konfiguration für Cloud-Computing annehmen, durch die eine einzige Funktion zwischen mehreren Vorrichtungen über ein Netz geteilt und durch diese kooperativ verarbeitet wird.
-
Ferner kann zum Beispiel das zuvor beschriebene Programm durch eine beliebige Vorrichtung ausgeführt werden. In diesem Fall reicht es aus, falls die Vorrichtung eine erforderliche Funktion (funktionalen Block oder dergleichen) aufweist und erforderliche Informationen erhalten kann.
-
Ferner kann zum Beispiel jeder zuvor in Verbindung mit dem Flussdiagramm beschriebener Schritt nicht nur durch eine einzige Vorrichtung ausgeführt werden, sondern auch durch mehrere Vorrichtungen geteilt und ausgeführt werden. Zudem können, falls ein Schritt mehrere Prozesse beinhaltet, die mehreren Prozesse, die in dem einen Schritt enthalten sind, nicht nur durch eine einzige Vorrichtung ausgeführt werden, sondern auch durch mehrere Vorrichtungen geteilt und ausgeführt werden. Mit anderen Worten ist es auch möglich, mehrere Prozesse, die in einem Schritt enthalten sind, als Prozesse in mehreren Schritten auszuführen. Umgekehrt ist es auch möglich, Prozesse, die als mehrere Schritte beschrieben sind, gemeinsam als einen einzigen Schritt auszuführen.
-
Es ist anzumerken, dass das durch den Computer auszuführende Programm derart sein kann, dass die Prozesse in den Schritten, die das Programm beschreiben, in zeitlicher Abfolge gemäß der Reihenfolge ausgeführt werden, die in der vorliegenden Schrift beschrieben ist, oder alternativ dazu parallel oder einzeln mit einem erforderlichen Timing, wie etwa dann, wenn sie aufgerufen werden, ausgeführt werden. Kurz gesagt können, solange keine Inkonsistenz vorliegt, die Prozesse in den Schritten in einer Abfolge ausgeführt werden, die von der zuvor beschriebenen Abfolge abweicht. Ferner können die Prozesse in den Schritten, die dieses Programm beschreiben, parallel zu Prozessen eines anderen Programms ausgeführt werden oder können in Kombination mit Prozessen eines anderen Programms ausgeführt werden.
-
Es ist anzumerken, dass die in der vorliegenden Schrift beschriebenen mehreren Technologien jeweils unabhängig und allein ausgeführt werden können, solange keine Inkonsistenz vorliegt. Natürlich können frei ausgewählte der mehreren Technologien in Kombination ausgeführt werden. Zum Beispiel ist es auch möglich, einen Teil oder die Gesamtheit der Technologie, die in Verbindung mit beliebigen der Ausführungsformen beschrieben ist, in Kombination mit einem Teil oder der Gesamtheit der Technologie auszuführen, die in Verbindung mit einer anderen der Ausführungsformen beschrieben ist. Ferner ist es auch möglich, einen Teil oder die Gesamtheit einer oder mehrerer frei ausgewählter der zuvor beschriebenen Technologien zusammen mit einer anderen Technologie auszuführen, die zuvor nicht beschrieben wurde.
-
<Kombinationsbeispiele der Konfiguration>
-
Es wird angemerkt, dass die vorliegende Technologie auch die folgenden Konfigurationen annehmen kann.
- (1) Eine Signalverarbeitungseinrichtung, die Folgendes beinhaltet:
- einen Tiefendatenverarbeitungsabschnitt, der einen Signalprozess für Phasendaten ausführt, die von einem iTOF(indirekte Laufzeit)-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist; und
- einen Übertragungsverarbeitungsabschnitt, der die Tiefendaten in einem vorbestimmten Ausgabeformat überträgt.
- (2) Die Signalverarbeitungseinrichtung nach (1) oben, wobei
der Tiefendatenverarbeitungsabschnitt durch Hardware implementiert ist, die zur ausschließlichen Verwendung für den Signalprozess zum Erlangen der Tiefendaten gestaltet ist.
- (3) Die Signalverarbeitungseinrichtung nach (1) oder (2) oben, wobei das Ausgabeformat einem MIPI(Mobile Industry Processor Interface)-Format entspricht.
- (4) Die Signalverarbeitungseinrichtung nach einem von (1) bis (3) oben, die ferner Folgendes beinhaltet:
- einen OPD-Berechnungsabschnitt, der OPD(optischer Detektor)-Daten, die eine detektierte Lichtmenge angeben, die zur Ausführung einer Belichtungsautomatik erforderlich ist, aus den Phasendaten berechnet, wobei
- der Übertragungsverarbeitungsabschnitt die OPD-Daten in dem Ausgabeformat überträgt.
- (5) Die Signalverarbeitungseinrichtung nach einem von (1) bis (4) oben, die ferner Folgendes beinhaltet:
einen Eingebettete-Daten-Separator, der eingebettete Daten extrahiert, die in den Phasendaten eingebettet sind, wobei
der Übertragungsverarbeitungsabschnitt die eingebetteten Daten in dem Ausgabeformat überträgt.
- (6) Die Signalverarbeitungseinrichtung nach einem von (1) bis (5) oben, die ferner Folgendes beinhaltet:
- einen Auswahlabschnitt, der entweder die Phasendaten, die von dem iTOF-Sensor bereitgestellt werden, oder die Tiefendaten, die durch den Tiefendatenverarbeitungsabschnitt erlangt werden, auswählt und die ausgewählten Daten an den Übertragungsverarbeitungsabschnitt liefert.
- (7) Ein Signalverarbeitungsverfahren, das durch eine Signalverarbeitungseinrichtung durchgeführt wird, die einen Signalprozess durchführt, wobei das Signalverarbeitungsverfahren Folgendes beinhaltet:
- Ausführen eines Signalprozesses für Phasendaten, die von einem iTOF(indirekte Laufzeit)-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist; und
- Übertragen der Tiefendaten in einem vorbestimmten Ausgabeformat.
- (8) Ein Programm zum Bewirken davon, dass ein Computer einer Signalverarbeitungseinrichtung, die einen Signalprozess durchführt, einen Signalprozess ausführt, der Folgendes beinhaltet:
- Ausführen eines Signalprozesses für Phasendaten, die von einem iTOF(indirekte Laufzeit)-Sensor bereitgestellt werden, um Tiefendaten zu erlangen, die eine Tiefe zu einem Zielobjekt angeben, das ein Ziel einer Entfernungsmessung ist; und
- Übertragen der Tiefendaten in einem vorbestimmten Ausgabeformat.
-
Es versteht sich, das die Ausführungsform nicht auf die zuvor beschriebenen Ausführungsformen begrenzt ist und die Ausführungsformen auf verschiedene Weisen verändert werden können, ohne von dem Gegenstand der vorliegenden Offenbarung abzuweichen. Ferner sind die in der vorliegenden Schrift beschriebenen vorteilhaften Effekte lediglich veranschaulichend und sind nicht beschränkend und andere vorteilhafte Effekte können erzielt werden.
-
[Bezugszeichenliste]
-
- 11
- Entfernungsmessungssystem
- 12
- iTOF-Sensor
- 13
- Signalverarbeitungseinrichtung
- 14
- Anwendungsprozessor
- 21
- ENB-Separator
- 22
- OPD-Berechnungsabschnitt
- 23
- Tiefendatenverarbeitungsabschnitt
- 24
- Speicherungsabschnitt
- 25
- Datentypausgabeabschnitt
- 26
- ENB-Datenausgabeabschnitt
- 27
- OPD-Datenausgabeabschnitt
- 28
- Tiefendatenausgabeabschnitt
- 29
- Erster Auswahlabschnitt
- 30
- Zweiter Auswahlabschnitt
- 31
- MIPI-Übertragungsschnittstelle
- 32
- Ausgabesteuerung
- 41
- ENB-Datenabspeicherungsabschnitt
- 42
- OPD-Datenabspeicherungsabschnitt
- 43
- Tiefendatenabspeicherungsabschnitt
- 51
- Horizontalzähler
- 52
- Vertikalzähler
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-