-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft eine Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt zum Bestimmen, ob ein dreidimensionales Objekt, das vor einem Fahrzeug vorhanden ist, ein auf dem Boden befindliches bzw. bodenkontaktierendes Objekt ist, das mit dem Boden einer Straßenoberfläche in Kontakt ist, oder ein schwebendes bzw. treibendes Objekt, das über bzw. auf einer Straßenoberfläche schwebt.
-
HINTERGRUND
-
Eine Kollisionsvermeidungssteuerung wurde herkömmlicher Weise als ein Ausführungsbeispiel einer Fahrunterstützung durchgeführt, wobei die Kollisionsvermeidungssteuerung eine Steuerung zum Vermeiden einer Kollision mit einem dreidimensionalen Objekt ist, das vor einem Fahrzeug vorhanden ist, oder zum Reduzieren eines Aufpralls bzw. einer Einwirkung aufgrund der Kollision. Um eine geeignete Kollisionsvermeidungssteuerung durchzuführen, ist es wichtig, ein dreidimensionales Objekt mit einer hohen Genauigkeit zu erfassen, und in letzter Zeit wurden verschiedene Vorrichtungen zum Erfassen eines dreidimensionalen Objekts entwickelt. Zum Beispiel offenbart die japanische Patentanmeldungsoffenlegungsschrift (kokai) Nr.
JP 2013-161 434 A eine Vorrichtung zum Erfassen eines dreidimensionalen Objekts basierend auf einem Bild, das durch eine Stereokamera aufgenommen wird.
-
Die Druckschrift
JP 2009 093 332 A offenbart eine Vorrichtung zur Verarbeitung von Bildern in der Fahrzeugperipherie und ein Verfahren zur Darstellung von Situationen in der Fahrzeugperipherie zur Verarbeitung eines um ein Fahrzeug herum aufgenommenen Bildes. Gemäß der Druckschrift, wenn ein Fahrer mit Informationen über die Umgebung eines Fahrzeugs versorgt wird, wird ein Bild der Umgebung des Fahrzeugs durch eine fotografische Mittel erzeugt und wird eine horizontale Ebene höher als die Aufnahmeposition der fotografischen Mittel als Referenzebene festgelegt. Dann wird eine Koordinatenumwandlung bezüglich eines Bildes in einem Bereich oberhalb der Abbildungsposition durchgeführt, und es werden auf die Referenzebene projizierte Bilddaten aus der Vogelperspektive erzeugt.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Ein dreidimensionales Objekt wird grob in ein bodenkontaktierendes Objekt, das mit einem Boden einer Straßenoberfläche in Kontakt ist (üblicherweise ein anderes Fahrzeug, ein Fußgänger, ein Gebäude, ein Straßenbaum und Ähnliches) und ein schwebendes Objekt, das über bzw. auf einer Straßenoberfläche schwebt (üblicherweise eine Plastiktüte, ein Ballon und Ähnliches) klassifiziert.
-
Allgemein ist das schwebende Objekt leicht und hat kaum eine Einwirkung auf das Fahrzeug, wenn es mit diesem Fahrzeug kollidiert. Deshalb, wenn die Kollisionsvermeidungssteuerung auch für das schwebende Objekt durchgeführt wird, könnte ein Fahrer bezüglich dieser Steuerung verärgert sein. Folglich war es erwünscht, eine Technik (eine Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt) zu entwickeln, um mit einer hohen Genauigkeit zu bestimmen, ob ein dreidimensionales Objekt ein bodenkontaktierendes Objekt oder ein schwebendes Objekt ist.
-
Erfinder untersuchen eine Vorrichtung zum Bestimmen, dass ein dreidimensionales Objekt ein bodenkontaktierendes Objekt ist, wenn eine Höhe von einer Straßenoberfläche zu einem unteren Ende des dreidimensionalen Objekts (nachstehend als „Höhe des unteren Endes“ bezeichnet) kleiner oder gleich einem vorbestimmten Höhenschwellenwert ist, und Bestimmen, dass das dreidimensionale Objekt ein schwebendes Objekt ist, wenn die Höhe den Höhenschwellenwert überschreitet.
-
In einem Fall, wenn ein dreidimensionales Objekt erfasst wird, könnte unter Verwendung von solch einer Vorrichtung basierend auf einem aufgenommenen Bild, das durch eine Stereokamera beschafft wird, die an dem Fahrzeug angebracht ist, ein dreidimensionales Objekt aufgrund des nachstehend beschriebenen Grundes fälschlicher Weise als ein schwebendes Objekt bestimmt werden. Das heißt, wie in 6 gezeigt ist, gibt es einen Bereich (einen Verdeckungsbereich R) vor dem Fahrzeug, wobei der Bereich in dem aufgenommenen Bild der Kamera nicht enthalten ist. Dieser Bereich wird z. B. aufgrund einer Beschränkung eines Sichtwinkels der Kamera und/oder weil Abbildungsbereiche von Kameras durch eine Haube (Motorhaube) des Bezugsfahrzeugs blockiert werden, unvermeidlich erzeugt.
-
Wenn ein dreidimensionales Objekt A, das einen Boden einer Straßenoberfläche kontaktiert, in dem Verdeckungsbereich R vorhanden ist, ist ein Teil des dreidimensionalen Objekts A, wobei der Teil in dem Verdeckungsbereich R umfasst ist, nicht in dem Abbildungsbereich enthalten. Deshalb wird eine Position eines unteren Endes (Pa1) des dreidimensionalen Objekts A als ein Teil eines oberen Endes (Pa2) des Verdeckungsbereichs R erkannt. Als ein Ergebnis kann es einen Fall geben, in dem eine Höhe eines unteren Endes des dreidimensionalen Objekts A den Höhenschwellenwert überschreitet, obwohl das dreidimensionale Objekt A tatsächlich ein bodenkontaktierendes Objekt ist, und in diesem Fall könnte das dreidimensionale Objekt A fälschlicher Weise als ein schwebendes Objekt bestimmt werden.
-
Die vorliegende Erfindung wird vorgenommen, um das vorstehende Problem zu lösen. Das heißt, es ist eine der Aufgaben der vorliegenden Erfindung, eine Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt bereitzustellen, die dazu in der Lage ist, eine Bestimmung mit einer höheren Genauigkeit dahingehend vorzunehmen, ob ein dreidimensionales Objekt ein bodenkontaktierendes Objekt oder ein schwebendes Objekt ist.
-
Eine Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt gemäß der vorliegenden Erfindung (nachstehend wird diese Vorrichtung als eine „Vorrichtung der vorliegenden Erfindung“) ist an einem Fahrzeug angebracht.
-
Diese Vorrichtung der vorliegenden Erfindung umfasst;
- eine Abbildungseinrichtung (11, Schritt 1002) zum Aufnehmen eines Bildes eines Bereichs vor dem Fahrzeug mittels einer Stereokamera;
- eine Parallaxeninformationsberechnungseinrichtung (Schritt 1006) zum Berechnen, basierend auf einem aufgenommenen Bild, das durch die Abbildungseinrichtung (11) aufgenommen wird, von Parallaxeninformationen, die eine Parallaxe von jedem von Pixeln, die das aufgenommene Bild bilden, umfassen;
- eine Dreidimensionalobjekterfassungseinrichtung (Schritt 1012) zum Erfassen eines dreidimensionalen Objekts in dem aufgenommenen Bild basierend auf den Parallaxeninformationen;
- eine Einrichtung für eine vorübergehende Bestimmung (Schritte 1018, 1032);
- zum Berechnen, basierend auf den Parallaxeninformationen, einer Höhe (h) eines unteren Endes, die eine Höhe von einer Straßenoberfläche zu einem unteren Ende des erfassten dreidimensionalen Objekts ist; und
- zum Vornehmen einer vorübergehenden Bestimmung, jedes Mal, wenn ein vorbestimmtes Berechnungsintervall abläuft, um vorübergehend zu bestimmen, dass das dreidimensionale Objekt ein bodenkontaktierendes Objekt ist, das einen Boden einer Straßenoberfläche kontaktiert, wenn die Höhe (h) des unteren Endes kleiner oder gleich einem vorbestimmten Schwellenwert ist, und vorübergehend zu bestimmen, dass das dreidimensionale Objekt ein schwebendes Objekt ist, das auf der Straßenoberfläche schwebt, wenn die Höhe (h) des unteren Endes den vorbestimmten Schwellenwert überschreitet; und
- eine Einrichtung für eine finale Bestimmung (Schritte 1022, 1026, 1038, 1048) zum Vornehmen einer finalen Bestimmung, jedes Mal, wenn das vorbestimmte Berechnungsintervall abläuft, um final zu bestimmen, ob das dreidimensionale Objekt ein bodenkontaktierendes Objekt oder ein schwebendes Objekt ist,
wobei, - die Einrichtung für eine finale Bestimmung dazu konfiguriert ist;
- final zu Bestimmen (Schritt 1038), dass das dreidimensionale Objekt ein bodenkontaktierendes Objekt ist, zu einem momentanen Berechnungszeitpunkt, wenn bestimmt ist, dass das dreidimensionale Objekt ein bodenkontaktierendes Objekt ist, in zumindest einer der vorübergehenden Bestimmung zu einem momentanen Berechnungszeitpunkt und der finalen Bestimmung zu einem vorhergehenden Berechnungszeitpunkt; und
- final zu Bestimmen (Schritt 1048), dass das dreidimensionale Objekt ein schwebendes Objekt ist, zu einem momentanen Berechnungszeitpunkt, wenn bestimmt ist, dass das dreidimensionale Objekt ein schwebendes Objekt ist, in sowohl der vorübergehenden Bestimmung zu einem momentanen Berechnungszeitpunkt als auch der finalen Bestimmung zu einem vorhergehenden Berechnungszeitpunkt.
-
Auch in einem Fall, in dem ein dreidimensionales Objekt, das tatsächlich das bodenkontaktierende Objekt ist, vorübergehend als das schwebende Objekt bestimmt wird, aufgrund eines Eintritts in einen Verdeckungsbereich R, ist es extrem wahrscheinlich, dass das dreidimensionale Objekt final als das bodenkontaktierende Objekt bestimmt wurde, vor dem Eintritt in den Verdeckungsbereich R. Deshalb bestimmt die Vorrichtung der vorliegenden Erfindung, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, basierend nicht nur auf einem Ergebnis einer vorübergehenden Bestimmung (d. h. einer Bestimmung basierend auf einer Höhe eines unteren Endes des dreidimensionalen Objekts) zu dem momentanen Berechnungszeitpunkt, sondern ebenso basierend auf einem Ergebnis einer finalen Bestimmung zu dem vorhergehenden Berechnungszeitpunkt. Das heißt, es wird final bestimmt, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, zu dem momentanen Berechnungszeitpunkt, wenn bestimmt ist, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, in zumindest einer „der vorübergehenden Bestimmung zu dem momentanen Berechnungszeitpunkt“ und „der finalen Bestimmung zu dem vorhergehenden Berechnungszeitpunkt“. Deshalb, gemäß der Vorrichtung der vorliegenden Erfindung, kann eine Möglichkeit, dass eine finale Bestimmung, dass das dreidimensionale Objekt das schwebende Objekt ist, fälschlicher Weise vorgenommen wird, signifikant reduziert werden. Als ein Ergebnis kann eine Bestimmung, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, mit einer höheren Genauigkeit vorgenommen werden.
-
Nun, gemäß der vorstehenden Konfiguration, wenn ein dreidimensionales Objekt gerade einmal zu einem bestimmten Berechnungszeitpunkt, seit der vorübergehenden Bestimmung, vorübergehend als das bodenkontaktierende Objekt bestimmt wird, und die finale Bestimmung für dieses dreidimensionale Objekt gestartet ist, wird dieses Objekt final als das bodenkontaktierende Objekt zu diesem Berechnungszeitpunkt bestimmt. In diesem Fall, auch wenn ein vorübergehendes Bestimmungsergebnis, dass dieses dreidimensionale Objekt das schwebende Objekt ist, danach fortgesetzt wird, wird ein finales Bestimmungsergebnis, das dieses dreidimensionale Objekt das bodenkontaktierende Objekt ist, sich fortsetzen. Wenn z. B. ein dreidimensionales Objekt, das tatsächlich das schwebende Objekt ist, vorübergehend aus irgendeinem Grund auf eine Straßenoberfläche fällt (z. B. aufgrund von Wind, dem eigenen Gewicht und Ähnlichem), so dass dieses vorübergehend als das bodenkontaktierende Objekt bestimmt wird, obwohl das vorübergehende Bestimmungsergebnis, dass das dreidimensionale Objekt das schwebende Objekt ist, sich danach fortsetzt, wird das finale Bestimmungsergebnis, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, sich fortsetzen. Folglich, in einem Fall, wenn das dreidimensionale Objekt, das tatsächlich das schwebende Objekt ist, final als das bodenkontaktierende Objekt aus irgendeinem Grund bestimmt wird, ist es vorzuziehen, dieses finale Bestimmungsergebnis auf das schwebende Objekt zurückzusetzen.
-
Deshalb ist in einem anderen Aspekt der Vorrichtung der vorliegenden Erfindung,
die Einrichtung für eine finale Bestimmung dazu konfiguriert, ein finales Bestimmungsergebnis des dreidimensionalen Objekts von einem bodenkontaktierenden Objekt zu einem schwebenden Objekt zu ändern (Schritt 1048), wenn ein vorübergehendes Bestimmungsergebnis, dass das dreidimensionale Objekt ein schwebendes Objekt ist, sich für eine vorbestimmte Reset-Zeit bzw. Rücksetz-Zeit, die länger als das Berechnungsintervall ist, fortsetzt (Schritt 1046: Ja), in einem Fall, wenn vorübergehend bestimmt ist, dass das dreidimensionale Objekt, das final als ein bodenkontaktierendes Objekt zu einem vorhergehenden Berechnungszeitpunkt bestimmt wurde, zu einem momentanen Berechnungszeitpunkt ein schwebendes Objekt ist (Schritt 1042: Ja).
-
Gemäß dieser Konfiguration, auch wenn ein dreidimensionales Objekt, das tatsächlich das schwebende Objekt ist, vorübergehend auf eine Straßenoberfläche fällt und dadurch fälschlicher Weise als ein bodenkontaktierendes Objekt bestimmt wird, wird das finale Bestimmungsergebnis dieses dreidimensionalen Objekts von dem bodenkontaktierenden Objekt zu dem schwebenden Objekt geändert, wenn das vorübergehende Bestimmungsergebnis, das dieses dreidimensionale Objekt das schwebende Objekt ist, sich für die vorbestimmte Rücksetz-Zeit fortsetzt. Deshalb kann eine Möglichkeit, dass eine falsche Bestimmung, dass das dreidimensionale Objekt, das tatsächlich das schwebende Objekt ist, das bodenkontaktierende Objekt ist, fortgesetzt vorgenommen wird, signifikant reduziert werden. Als ein Ergebnis kann eine Bestimmung, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, mit einer höheren Genauigkeit vorgenommen werden.
-
In der vorstehenden Beschreibung sind Bezugszeichen, die in den folgenden Beschreibungen bezüglich Ausführungsbeispielen verwendet werden, in Klammern zu den Elementen der vorliegenden Erfindung hinzugefügt, um das Verständnis der vorliegenden Erfindung zu unterstützen. Jedoch sollten diese Bezugszeichen nicht zum Beschränken des Umfangs der Erfindung verwendet werden.
-
Figurenliste
-
- 1 ist ein schematisches Konfigurationsdiagramm einer Bodenkontaktbestimmungsvorrichtung eines dreidimensionalen Objekts (nachstehend als eine „Ausführungsbeispielvorrichtung“ bezeichnet) gemäß einem Ausführungsbeispiel der vorliegenden Erfindung und einer Kollisionsvermeidungssteuerungsvorrichtung, die mit der Ausführungsbeispielvorrichtung verbunden ist.
- 2A ist eine Draufsicht eines Parallaxenwahlkennfelds.
- 2B ist eine perspektivische Ansicht des Parallaxenwahlkennfelds.
- 3 ist ein Diagramm, das ein Parallaxenwahlkennfeld zeigt, bei dem eine Eigenschaft für jeden Block eingestellt ist.
- 4 ist ein Diagramm, das das Parallaxenwahlkennfeld zeigt, bei dem Dreidimensionalobjektblöcke gekoppelt sind.
- 5 ist ein Graph, der eine Beziehung zwischen einer Entfernung in einer Tiefenrichtung (z-Richtung) und einer Entfernung in einer Höhenrichtung (y-Richtung) von jedem von Straßenoberflächenparallaxenpunkten zeigt, wenn eine Position eines Fahrzeugs als eine Referenz eingestellt ist, und ist ein Diagramm, das eine Straßenoberflächengradientenformel zeigt, die durch ein Annähern einer Gruppe von Punkten auf dem Graph durch eine quadratische Funktion beschafft wird.
- 6 ist ein Diagramm, das einen Verdeckungsbereich zeigt, der erzeugt wird, weil Abbildungsbereiche von linken und rechten Kameras durch eine Haube des Fahrzeugs blockiert sind, und eine Differenz zwischen „einer tatsächlichen Position eines unteren Endes eines dreidimensionalen Objekts, das ein bodenkontaktierendes Objekts ist“ und „einer Position eines unteren Endes, die durch die Ausführungsbeispielvorrichtung berechnet wird“ zeigt, in einem Fall, wenn das dreidimensionale Objekt in dem Verdeckungsbereich vorhanden ist.
- 7 ist ein Diagramm, das zum Beschreiben eines Verfahrens zum Verfolgen eines Dreidimensionalobjektblocks verwendet wird.
- 8 ist ein Diagramm, das eine positionelle Beziehung zwischen dem dreidimensionalen Objekt (dem bodenkontaktierenden Objekt) und dem Fahrzeug in einer n-1-ten Periode und einer n-ten Periode zeigt, wenn sich das Fahrzeug dem dreidimensionalen Objekt, das sich in einer +z-Richtung mit Bezug auf das Fahrzeug befindet, nähert.
- 9 ist ein Diagramm, das eine positionelle Beziehung zwischen dem dreidimensionalen Objekt und dem Fahrzeug in einer ersten bis zehnten Periode zeigt, wenn sich das Fahrzeug dem dreidimensionalen Objekt, das sich in einer +z-Richtung mit Bezug auf das Fahrzeug befindet, nähert.
- 10 ist ein Ablaufdiagramm (Teil 1), das eine Routine zeigt, die durch eine CPU der Bodenkontaktbestimmungs-ECU der Ausführungsbeispielvorrichtung durchgeführt wird (nachstehend als „CPU der Ausführungsbeispielvorrichtung“ bezeichnet).
- 11 ist ein Ablaufdiagramm (Teil 2), das die Routine zeigt, die durch die CPU der Ausführungsbeispielvorrichtung durchgeführt wird.
-
BESCHREIBUNG DES AUSFÜHRUNGSBEISPIELS
-
1 ist ein schematisches Konfigurationsdiagramm einer Bodenkontaktbestimmungsvorrichtung eines dreidimensionalen Objekts (nachstehend als eine „Ausführungsbeispielvorrichtung“ bezeichnet) gemäß einem Ausführungsbeispiel der vorliegenden Erfindung und einer Kollisionsvermeidungssteuerungsvorrichtung, die mit der Ausführungsbeispielvorrichtung verbunden ist. Die Ausführungsbeispielvorrichtung und die Kollisionsvermeidungssteuerungsvorrichtung sind an einem Fahrzeug angebracht. Nachstehend wird das Fahrzeug, an dem die Ausführungsbeispielvorrichtung angebracht ist, als ein „Bezugsfahrzeug“ bezeichnet, um es von anderen Fahrzeugen zu unterscheiden. Die Ausführungsbeispielvorrichtung bestimmt, ob ein dreidimensionales Objekt, das vor dem Bezugsfahrzeug vorhanden ist, ein bodenkontaktierendes Objekt, das einen Boden einer Straßenoberfläche kontaktiert, oder ein schwebendes Objekt, das auf einer Straßenoberfläche schwebt, ist. Das bodenkontaktierende Objekt ist ein Objekt, dessen unteres Ende dem Aussehen nach mit der Straßenoberfläche kontinuierlich ist. Das bodenkontaktierende Objekt ist üblicherweise ein anderes Fahrzeug, ein Fußgänger, ein Gebäude, ein Straßenbaum und Ähnliches. Das schwebende Objekt ist ein Objekt, dessen unteres Ende dem Aussehen nach nicht auf der Straßenoberfläche ist. Das schwebende Objekt ist üblicherweise eine Plastiktüte, ein Ballon und Ähnliches.
-
Die Ausführungsbeispielvorrichtung umfasst eine Bodenkontaktbestimmungs-ECU 10, einen Kamerasensor 11 und einen Fahrzeugzustandssensor 12, der mit der Bodenkontaktbestimmungs-ECU 10 verbunden ist. Die Kollisionsvermeidungssteuerungsvorrichtung umfasst eine Kollisionsvermeidungs-ECU 20 und eine Kollisionsvermeidungssteuerungsvorrichtung 21, die mit der Kollisionsvermeidungs-ECU 20 verbunden ist. Die Bodenkontaktbestimmungs-ECU 10 ist mit der Kollisionsvermeidungs-ECU 20 auf solch eine Weise verbunden, dass diese über eine Kommunikations-/Sensorart eines CAN („Controller area network“, Steuerungsbereichsnetzwerk) gegenseitig Daten austauschen (kommunizieren) können. ECU ist eine Abkürzung von „Electric Control Unit“ (elektronische Steuerungseinheit) und umfasst einen Mikrocomputer als ein Hauptteil. Der Mikrocomputer umfasst eine CPU und Speichereinrichtungen, wie etwa einen ROM und einen RAM. Die CPU ist dazu konfiguriert, verschiedene Funktionen durch Ausführen von Anweisungen (d. h. Programmen oder Routinen), die in dem ROM gespeichert sind, zu realisieren/durchzuführen. Nachstehend wird die Bodenkontaktbestimmungs-ECU 10 einfach als „ECU 10“ bezeichnet und wird die Kollisionsvermeidungs-ECU 20 einfach als „ECU 20“ bezeichnet.
-
Der Kamerasensor 11 umfasst eine an dem Fahrzeug angebrachte Stereokameravorrichtung (deren Darstellung weggelassen wird) zum Aufnehmen eines Bildes in einem Frontbereich des Bezugsfahrzeugs. Die an dem Fahrzeug angebrachte Stereokameravorrichtung ist in einer Umgebung einer Mitte in einer Fahrzeugbreitenrichtung eines vorderen Kantenteils eines Daches des Bezugsfahrzeugs bereitgestellt und umfasst eine linke Kamera, die auf einer linken Seite von einer Fahrzeuglängsachse angeordnet ist, und eine rechte Kamera, die auf einer rechten Seite von der Fahrzeuglängsachse angeordnet ist. Die linke Kamera nimmt hauptsächlich ein Bild eines vorderen linken Seitenbereichs des Bezugsfahrzeugs jedes Mal auf, wenn eine vorbestimmte Zeit abläuft, um ein linkes Bildsignal, das ein aufgenommenes linkes Bild angibt, an die ECU 10 auszugeben. Ähnlich nimmt die rechte Kamera hauptsächlich ein Bild eines vorderen rechten Seitenbereichs des Bezugsfahrzeugs jedes Mal auf, wenn eine vorbestimmte Zeit abläuft, um ein rechtes Bildsignal, das ein aufgenommenes rechtes Bild angibt, an die ECU 10 auszugeben.
-
Der Fahrzeugzustandssensor 12 ist ein Sensor zum Beschaffen von Fahrzeugzustandsinformationen über einen Fahrzustand des Bezugsfahrzeugs. Der Fahrzeugzustandssensor 12 umfasst einen Fahrzeuggeschwindigkeitssensor zum Erfassen einer Geschwindigkeit des Bezugsfahrzeugs (d. h. einer Fahrzeuggeschwindigkeit). Der Fahrzeugzustandssensor 12 gibt die Fahrzeugzustandsinformationen (Fahrzeuggeschwindigkeit) jedes Mal, wenn die vorbestimmte Zeit abläuft, an die ECU 10 aus.
-
Die ECU 10 erzeugt ein Parallaxenbild basierend auf einem Signal eines linken Bildes und einem Signal eines rechten Bildes, die von dem Kamerasensor 11 ausgegeben werden. Die ECU 10 erfasst, basierend auf dem Parallaxenbild, ein dreidimensionales Objekt, das vor dem Bezugsfahrzeug vorhanden ist. Weiterhin berechnet die ECU 10 basierend auf dem Parallaxenbild eine Straßenoberflächengradientenformel, die einen Gradienten einer Straßenoberfläche, die vor dem Bezugsfahrzeug vorhanden ist, angibt. Die ECU 10 bestimmt, jedes Mal wenn die vorbestimmte Zeit abläuft (d. h. jedes Mal, wenn ein vorbestimmtes Berechnungsintervall abläuft), ob das erfasste dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, basierend auf einer Position eines unteren Endes des erfassten dreidimensionalen Objekts, der Straßenoberflächengradientenformel und einem Wert eines Bodenkontaktmarkers, der später beschrieben wird. Die ECU 10 überträgt das Bestimmungsergebnis an die ECU 20. Es sei angemerkt, dass die ECU 10 Zielobjektinformationen durch ein bekanntes Verfahren berechnet, wobei die Zielobjektinformationen eine Entfernung zwischen dem dreidimensionalen Objekt und dem Bezugsfahrzeug und eine Richtung/Orientierung des dreidimensionalen Objekts mit Bezug auf das Bezugsfahrzeug (d. h. positionelle Informationen des dreidimensionalen Objekts), eine relative Geschwindigkeit des dreidimensionalen Objekts mit Bezug auf das Bezugsfahrzeug und Ähnliches umfassen, und das Berechnungsergebnis an die ECU 20 zusammen mit einer ID überträgt, um das dreidimensionale Objekt zu identifizieren. Das heißt, die ECU 10 kann als die Zielobjektinformationsbeschaffungs-ECU 10 betrachtet werden.
-
Die ECU 20 bestimmt, die Kollisionsvermeidungssteuerung durchzuführen oder nicht, basierend auf dem Bestimmungsergebnis, das von der ECU 10 übertragen wird. Die Kollisionsvermeidungssteuerung ist hier eine Steuerung, um zumindest eine der folgenden Steuerungen durchzuführen, d. h. eine Warnsteuerung zum Erheben einer Warnung für einen Fahrer, eine automatischen Bremssteuerung zum automatischen Aufbringen einer Bremskraft auf das Bezugsfahrzeug, und eine automatischen Lenksteuerung zum automatischen Ändern eines Lenkwinkels des Lenkrads des Bezugsfahrzeugs. Jede dieser Steuerungen wird durchgeführt, wenn ein dreidimensionales Objekt (streng genommen ein bodenkontaktierendes Objekt) vor dem Bezugsfahrzeug vorhanden ist, mit einer Möglichkeit des Kollidierens mit dem Bezugsfahrzeug. Wenn ein finales Bestimmungsergebnis, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, von der ECU 10 beschafft wurde, berechnet die ECU 20 eine Zeit bis zur Kollision mit dem dreidimensionalen Objekt (eine Zeit, die erwartungsgemäß für das Bezugsfahrzeug erforderlich ist, um mit diesem dreidimensionalen Objekt zu kollidieren) von den Zielobjektinformationen, der Fahrzeuggeschwindigkeit des Bezugsfahrzeugs, und Ähnlichem. Deshalb, wenn die Zeit bis zur Kollision kleiner oder gleich einem vorbestimmten Zeitschwellenwert ist, bestimmt die ECU 20, dass das Bezugsfahrzeug mit diesem dreidimensionalen Objekt kollidieren kann, und überträgt an die Kollisionsvermeidungsvorrichtung 21 verschiedene Anforderungssignale zur Kollisionsvermeidung, die nachstehend beschrieben werden. Andererseits, wenn die Zeit bis zur Kollision zu dem dreidimensionalen Objekt den Zeitschwellenwert überschreitet, bestimmt die ECU 20, dass es keine Möglichkeit gibt, dass das Bezugsfahrzeug mit dem dreidimensionalen Objekt kollidiert und überträgt kein Anforderungssignal für eine Kollisionsvermeidung an die Kollisionsvermeidungsvorrichtung 21, obwohl die ECU 20 ein Bestimmungsergebnis von der ECU 10 beschafft, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist. Zusätzlich, wenn ein Bestimmungsergebnis von der ECU 10 beschafft wurde, dass das dreidimensionale Objekt das schwebende Objekt ist, bestimmt die ECU 20, dass dieses dreidimensionale Objekt kein Ziel der Kollisionsvermeidungssteuerung ist, und überträgt keine Anforderungssignale zur Kollisionsvermeidung an die Kollisionsvermeidungsvorrichtung 21.
-
Die Kollisionsvermeidungsvorrichtung 21 umfasst eine Warnvorrichtung, eine Bremsvorrichtung, einen Motortreiber und einen Lenkmotor, der mit dem Motortreiber verbunden ist. Die Anforderungssignale für eine Kollisionsvermeidung umfassen ein Warnanforderungssignal, ein Automatikbremsanforderungssignal und ein Automatiklenkanforderungssignal. Wenn das Warnanforderungssignal von der ECU 20 übertragen wird, betreibt die Kollisionsvermeidungsvorrichtung 21 die Warnvorrichtung, um eine Warnung für den Fahrer zu erheben (führt die Warnsteuerung durch). Zusätzlich, wenn das Automatikbremsanforderungssignal von der ECU 20 übertragen wird, steuert die Kollisionsvermeidungsvorrichtung 21 die Bremsvorrichtung an, um eine Beschleunigung des Bezugsfahrzeugs anzupassen (führt die automatische Bremssteuerung durch). Weiterhin, wenn das Automatiklenkanforderungssignal von der ECU 20 übertragen wird, steuert die Kollisionsvermeidungsvorrichtung 21 den Motortreiber an, um den Lenkmotor mit einem Drehmoment zu versorgen, und steuert dadurch jedes der gesteuerten Räder (führt die automatische Lenksteuerung durch).
-
Gemäß dieser Konfiguration wird die Kollisionsvermeidungssteuerung nicht durchgeführt, wenn bestimmt ist, dass das dreidimensionale Objekt das schwebende Objekt ist, und deshalb wird eine Ausführung von unnötigen Fahrunterstützungssteuerungen unterdrückt, was eine geeignetere Fahrunterstützungssteuerung ermöglicht.
-
(Details der Operation)
-
Als Nächstes werden Details einer Operation der Ausführungsbeispielvorrichtung beschrieben.
-
<Erzeugung eines Parallaxenbildes>
-
Die ECU 10 der Ausführungsbeispielvorrichtung erzeugt ein Parallaxenbild basierend auf dem Signal eines linken Bildes und dem Signal eines rechten Bildes, die von dem Kamerasensor 11 ausgegeben werden, unter Verwendung eines bekannten Verfahrens (z. B. „Semi-Global Matching“, semi-globaler Abgleich) jedes Mal, wenn die vorbestimmte Zeit (Berechnungsintervall) abläuft, während einer Periode (nachstehend ebenso als eine „Maschinen-An-Periode“ bezeichnet) von einem Zeitpunkt, zu dem ein nicht dargestellter Maschinenschalter (ein Zündschlüsselschalter) des Bezugsfahrzeugs in einen An-Zustand geändert wurde, zu einem Zeitpunkt, zu dem der Maschinenschalter in einen Aus-Zustand zu ändern ist. Jedes von Pixeln, die das Parallaxenbild bilden, ist mit Parallaxeninformationen, die eine Parallaxe von diesem umfassen, verknüpft. Nachstehend wird jedes der Pixel, die das Parallaxenbild bilden, als ein „Parallaxenpunkt“ bezeichnet.
-
<Einstellen einer Eigenschaft für jeden von Blöcken in einem Parallaxenwahlkennfeld >
-
2A zeigt eine Draufsicht eines Parallaxenwahlkennfelds 30 und
2B zeigt eine perspektivische Ansicht des Parallaxenwahlkennfelds 30. Das Parallaxenwahlkennfeld 30 ist in dem RAM der ECU 10 bereitgestellt. Wie in
2A und
2B gezeigt ist, umfasst das Parallaxenwahlkennfeld 30 eine Vielzahl von rechteckigen parallel-flachen Blöcken 32, die auf solch eine Weise angeordnet sind, dass jede Kante in einer seitlichen Richtung einer Position in der seitlichen Richtung (der Fahrzeugbreitenrichtung) des Parallaxenbildes entspricht, jede Kante in einer Längsrichtung einer Position in der Längsrichtung des Parallaxenbildes entspricht, und jede Kante in einer Tiefenrichtung einer Größenordnung einer Parallaxe entspricht. Wie bereits bekannt ist, wird eine Entfernung in der Tiefenrichtung (einer Fahrzeuglängsachsenrichtung) größer, wenn eine Größenordnung einer Parallaxe klein wird. Die ECU 10 stellt basierend auf dem Parallaxenbild eine der folgenden Eigenschaften bzw. der folgenden Attribute , d. h. ein dreidimensionales Objekt, eine Straßenoberfläche und eine Undeutlichkeit bzw. Unbestimmtheit, für jeden der Blöcke 32 des Parallaxenwahlkennfelds 30 ein, jedes Mal, wenn die vorbestimmte Zeit abläuft, während der Maschinen-An-Periode (siehe
3). Ein Verfahren zum Einstellen einer Eigenschaft ist bereits bekannt und somit wird nachstehend ein Beispiel kurz beschrieben. Für mehr Details, siehe die japanische Patentanmeldungsoffenlegungsschrift (kokai) Nr.
JP 2016-206 776 A (ungeprüfte US-Patentanmeldungsveröffentlichung Nr.
US 2016 / 0 305 785 A1 ).
-
Die ECU 10 votiert (klassifiziert) jeden der Parallaxenpunkte in dem Parallaxenbild zu einem entsprechenden Block 32 des Parallaxenwahlkennfelds 30 basierend auf einer Position von jedem der Parallaxenpunkte (einer Position in der seitlichen Richtung und einer Position in der Längsrichtung) und einer Größenordnung von jeder der Parallaxen von diesen. Danach berechnet die ECU 10 für jeden der Blöcke 32 des Parallaxenwahlkennfelds 30 einen Durchschnittswert der Parallaxen, eine Abweichung der Parallaxen, einen Durchschnittswert von Koordinaten der Parallaxenpunkte in der Längsrichtung des Parallaxenbildes und eine Abweichung von Koordinaten der Parallaxenpunkte in der Längsrichtung des Parallaxenbildes.
-
Wenn Parallaxenpunkt, die jeweils eine Parallaxe (Entfernung) mit einer ähnlichen Größenordnung aufweisen, in einem breiten Bereich in der Längsrichtung des Parallaxenbildes in einem Block 32 des Parallaxenwahlkennfelds 30 verteilt sind, bestimmt die ECU 30, dass eine Gruppe von diesen Parallaxenpunkten ein dreidimensionales Objekt angibt. In diesem Fall stellt die ECU 10 eine Eigenschaft des dreidimensionalen Objekts für diesen Block 32 ein (siehe 3). Nachstehend wird ein Block 32, für den eine Eigenschaft eines dreidimensionalen Objekts eingestellt wird, als ein „Dreidimensionalobjektblock 32a“ bezeichnet.
-
Andererseits, wenn Parallaxenpunkte, die jeweils eine Parallaxe (Entfernung) mit einer ähnlichen Größenordnung aufweisen, in einem engen Bereich in der Längsrichtung des Parallaxenbildes verteilt sind, und die Positionen dieser Parallaxenpunkte in der Längsrichtung des Parallaxenbildes sanft ansteigen, wenn sich die Parallaxe verringert (d. h., wenn eine Entfernung von dem Bezugsfahrzeug zunimmt), in einem Block 32 des Parallaxenwahlkennfelds 30, bestimmt die ECU 10, dass eine Gruppe von diesen Parallaxenpunkten eine Straßenoberfläche angibt. In diesem Fall stellt die ECU 10 eine Eigenschaft einer Straßenoberfläche für diesen Block 32 ein (siehe 3). Nachstehend wird ein Block 32, für den eine Eigenschaft einer Straßenoberfläche eingestellt ist, als ein „Straßenoberflächenblock 32b“ bezeichnet. Im Gegensatz dazu, stellt die ECU 10 eine Eigenschaft einer Undeutlichkeit für einen Block 32, für den keines der Eigenschaft des dreidimensionalen Objekts oder der Straßenoberfläche eingestellt ist, ein (siehe 3). Die ECU 10 speichert das Parallaxenwahlkennfeld 30, in der irgendeine der vorstehenden drei Eigenschaften für jeden der Blöcke 32 eingestellt ist, in dem RAM in der ECU 10. Das Parallaxenwahlkennfeld 30, das in dem RAM gespeichert ist, wird jedes Mal, wenn die vorbestimmte Zeit abläuft, aktualisiert.
-
<Transformation in eine dreidimensionale Koordinate>
-
Jedes Mal, wenn die vorbestimmte Zeit abläuft, während einer Maschinen-An-Periode, transformiert die ECU 10 einen Parallaxenpunkt, der als der Dreidimensionalobjektblock 32a klassifiziert ist (kann nachstehend als ein „Dreidimensionalobjektparallaxenpunkt“ bezeichnet werden), und einen Parallaxenpunkt, der als der Straßenoberflächenblock 32b klassifiziert ist (kann nachstehend als ein „Straßenoberflächenparallaxenpunkt“ bezeichnet werden), in eine dreidimensionale Koordinate (z, x, y) gemäß den folgenden Gleichungen (1) bis (3). Nachstehend bezeichnen z, x, y entsprechend eine Komponente in der Tiefenrichtung (der Fahrzeuglängsachsenrichtung), eine Komponente in der seitlichen Richtung (der Fahrzeugbreitenrichtung) und eine Komponente in einer Höhenrichtung. Es sei angemerkt, dass diese Höhenrichtung der Längsrichtung des Parallaxenbildes und des Parallaxenwahlkennfelds 30 entspricht. Zusätzlich, bezeichnet in den folgenden Gleichungen B eine Entfernung zwischen der linken Kamera und der rechten Kamera des Kamerasensors 11, bezeichnet f eine Brennweite dieser Kameras, bezeichnet d eine Parallaxe, die in Parallaxeninformationen enthalten ist, die mit einem Parallaxenpunkt verknüpft sind, und bezeichnen u, v entsprechend eine Komponente in der seitlichen Richtung und eine Komponente in der Längsrichtung einer Koordinate eines Parallaxenpunktes in dem Parallaxenbild.
-
Die ECU 10 gruppiert (sammelt) eine Gruppe der dreidimensionalen Koordinaten der Dreidimensionalobjektparallaxenpunkte aus den Parallaxenpunkten für jeden Dreidimensionalobjektblock 32a, um diese in dem RAM zu speichern. Die dreidimensionale Koordinate von jedem der Parallaxenpunkte, die in dem RAM gespeichert sind, wird jedes Mal, wenn eine vorbestimmte Zeit abläuft (jedes Mal, wenn ein Berechnungszeitpunkt erreicht wird), aktualisiert. Jedoch wird eine dreidimensionale Koordinate eines Dreidimensionalobjektparallaxenpunktes, der zu einem vorhergehenden Berechnungszeitpunkt aktualisiert wird, für einen Verfolgungsprozess eines dreidimensionalen Objekts verwendet, was nachstehend beschrieben wird, und deshalb wird diese dreidimensionale Koordinate separat in dem RAM der ECU 10 gespeichert, bis jede Verarbeitung zu einem momentanen Berechnungszeitpunkt beendet ist.
-
<Kopplung von Dreidimensionalobjektblöcken>
-
Wenn Dreidimensionalobjektblöcke32a in dem Parallaxenwahlkennfeld 30 nebeneinander liegen, bestimmt die ECU 10, ob diese dreidimensionalen Objekte ein kontinuierliches dreidimensionales Objekt bilden oder einzelne dreidimensionale Objekte sind. Diese Bestimmung wird jedes Mal vorgenommen, wenn die vorbestimmte Zeit abläuft, während der Maschinen-An-Periode. Speziell, wie in 3 gezeigt ist, wenn einer oder mehrere Dreidimensionalobjektblöcke32a unter acht Blöcken 32 vorhanden sind, die jeweils neben einem bestimmten Dreidimensionalobjektblock 32a liegen, berechnet die ECU 10 eine Entfernung auf einer z-x-Ebene zwischen „einem Dreidimensionalobjektparallaxenpunkt, der in einen Dreidimensionalobjektblock 32a klassifiziert ist“ und „einem Dreidimensionalobjektparallaxenpunkt, der in einen anderen Dreidimensionalobjektblock 32a klassifiziert ist“. Danach bestimmt die ECU 10, ob ein Minimalwert dieser Entfernung kleiner oder gleich einem vorbestimmten Kopplungsentfernungsschwellenwert ist. Wenn dieser Minimalwert kleiner oder gleich dem Kopplungsentfernungsschwellenwert ist, bestimmt die ECU 10, dass das dreidimensionale Objekt entsprechend dem einen Dreidimensionalobjektblock 32a und das dreidimensionale Objekt entsprechend dem anderen Dreidimensionalobjektblock 32a ein kontinuierliches dreidimensionales Objekt sind, und koppelt diese zwei Dreidimensionalobjektblöcke 32a. Andererseits, wenn der Minimalwert den Kopplungsentfernungsschwellenwert überschreitet, bestimmt die ECU 10, dass das dreidimensionale Objekt entsprechend dem einen Dreidimensionalobjektblock 32a und das dreidimensionale Objekt entsprechend dem anderen Dreidimensionalobjektblock 32a individuelle dreidimensionale Objekte sind und koppelt diese zwei Dreidimensionalobjektblöcke32a nicht.
-
Die ECU 10 führt die vorstehende Verarbeitung für alle Dreidimensionalobjektblöcke32a durch. Nachstehend werden die Dreidimensionalobjektblöcke32a, die jeweils miteinander gekoppelt sind, als „gekoppelter Dreidimensionalobjektblock 32a“ bezeichnet. 4 stellt ein Beispiel dar, bei dem die Kopplungsverarbeitung von dreidimensionalen Objekten für alle der gekoppelten Dreidimensionalobjektblöcke 32a, die in 3 gezeigt sind, durchgeführt wurde. In diesem Beispiel werden Dreidimensionalobjektblöcke 32a, die jeweils auf einer linken Seite des Parallaxenwahlkennfelds 30 nebeneinander liegen, gekoppelt, um einen gekoppelten Dreidimensionalobjektblock 32a1 zu bilden. Zusätzlich werden Dreidimensionalobjektblöcke 32a, die jeweils auf einer rechten Seite des Parallaxenwahlkennfelds 30 nebeneinander liegen, gekoppelt, um einen Dreidimensionalobjektblock 32a2 zu bilden. Wenn eine Vielzahl der Dreidimensionalobjektblöcke 32a miteinander gekoppelt sind, gruppiert die ECU 10 „eine Gruppe der dreidimensionalen Koordinaten der Dreidimensionalobjektparallaxenpunkte, wobei jede Gruppe von diesen für alle Dreidimensionalobjektblöcke 32a gruppiert wurde“, für alle gekoppelten Dreidimensionalobjektblöcke 32a, um diese in dem RAM der ECU 10 zu speichern. Mit anderen Worten erweitert die ECU 10 eine Gruppe der dreidimensionalen Koordinaten der Dreidimensionalobjektparallaxenpunkte von einer Gruppe für jeden Dreidimensionalobjektblock 32a zu einer Gruppe für jeden gekoppelten Dreidimensionalobjektblock 32a. Jede der gruppierten Gruppen der dreidimensionalen Koordinaten bildet ein dreidimensionales Objekt. Dadurch wird ein dreidimensionales Objekt, das vor dem Bezugsfahrzeug vorhanden ist, erfasst.
-
<Berechnung einer Straßenoberflächengradientenformel>
-
Die ECU 10 berechnet eine Straßenoberflächengradientenformel, die einen Gradienten einer Straßenoberfläche, die vor dem Bezugsfahrzeug vorhanden ist, angibt, unter Verwendung eines bekannten Verfahrens, jedes Mal, wenn die vorbestimmte Zeit abläuft, während der Maschinen-An-Periode. Speziell erzeugt die ECU 10, wie in 5 gezeigt ist, einen Graphen, der eine Beziehung zwischen einer Entfernung in der Tiefenrichtung (z-Richtung) und einer Entfernung in der Höhenrichtung (y-Richtung) von jedem der Straßenoberflächenparallaxenpunkte definiert, wenn eine Position des Bezugsfahrzeugs als eine Referenz eingestellt ist. In diesem Graphen stellt eine seitliche Achse die z-Richtung dar und stellt eine Längsachse die y-Richtung dar. Dieser Graph wird durch Zeichnen von z-Komponenten und y-Komponenten von Koordinaten von allen Straßenoberflächenparallaxenpunkten in dem Parallaxenwahlkennfeld 30 erzeugt. Nach einem Zeichnen der Straßenoberflächenparallaxenpunkte auf dem Graphen, nähert die ECU 10 unter Verwendung einer M-Schätzung des Verfahrens der kleinsten Quadrate eine Gruppe der Punkte auf dem Graphen durch eine quadratische Funktion (y=a·z2+b·z+c; a, b und c sind konstante Werte, die durch die M-Schätzung berechnet werden) an und berechnet diese angenäherte Formel als eine Straßenoberflächengradientenformel. Es sei angemerkt, dass, wie von der vorstehend erwähnten Beschreibung offensichtlich ist, eine Straßenoberflächengradientenformel eine Formel ist, die basierend auf einer z-Komponente (einer Komponente in der Tiefenrichtung) und einer y-Komponente (einer Komponente in der Höhenrichtung) einer Koordinate von jedem der Straßenoberflächenparallaxenpunkte bestimmt wird, und eine x-Komponente (eine Komponente in der seitlichen Richtung) nicht berücksichtigt wird. Das heißt eine Straßenoberflächengradientenformel wird unter einer Voraussetzung erzeugt, dass „Höhen auf einer Straßenoberfläche an Positionen in gleichen Entfernungen in der Tiefenrichtung, in der Seitenrichtung im Wesentlichen konstant sind“. Deshalb kann eine Konfiguration, bei der die x-Komponente nicht berechnet wird, wenn ein Straßenoberflächenparallaxenpunkt in eine dreidimensionale Koordinate transformiert wird, angewendet werden. Es sollte angemerkt werden, dass ein Verfahren zum Annähern einer Gruppe der Punkte auf dem Graphen nicht auf die M-Schätzung beschränkt ist, sondern z. B. eine L-Schätzung oder eine R-Schätzung verwendet werden kann, oder andere Verfahren als das Verfahren der kleinsten Quadrate verwendet werden können. Die ECU 10 speichert die berechnete Straßenoberflächengradientenformel in ihrem RAM.
-
<Vorübergehende Bestimmung, ob ein dreidimensionales Objekt zu dem momentanen Berechnungszeitpunkt das bodenkontaktierende Objekt ist oder nicht>
-
Die ECU 10 bestimmt vorübergehend, ob ein dreidimensionales Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, zu einem „momentanen Berechnungszeitpunkt“ jedes Mal, wenn die vorbestimmte Zeit während der Maschinen-An-Periode abläuft. Nachstehend wird diese Verarbeitung des vorübergehenden Bestimmens ebenso als eine „vorübergehende Bestimmung“ bezeichnet. Speziell berechnet die ECU 10 zuerst eine Koordinate (zL, xL, yL) einer Position eines unteren Endes des dreidimensionalen Objekts wie folgt. Das heißt, wenn der Dreidimensionalobjektblock 32a nicht mit irgendwelchen Blöcken 32 gekoppelt ist, berechnet die ECU 10 eine Koordinate (z, x, y) eines Dreidimensionalobjektparallaxenpunktes mit einer minimalen y-Koordinate unter Dreidimensionalobjektparallaxenpunkten, die in diesen Dreidimensionalobjektblock 32a klassifiziert sind, als eine Koordinate (zL, xL, yL) der Position des unteren Endes des dreidimensionalen Objekts. Andererseits, wenn der Dreidimensionalobjektblock 32a mit einem anderen benachbarten Dreidimensionalobjektblock oder anderen Dreidimensionalobjektblöcken 32a gekoppelt ist, berechnet die ECU 10 eine Koordinate (z, x, y) eines Dreidimensionalobjektparallaxenpunktes mit einer minimalen y-Koordinate unter allen Dreidimensionalobjektparallaxenpunkten, die in die gekoppelten Dreidimensionalobjektblöcke 32 klassifiziert sind, als eine Koordinate (zL, xL, yL) der Position des unteren Endes des dreidimensionalen Objekts. Es sollte angemerkt werden, dass, wenn eine Vielzahl von Dreidimensionalobjektparallaxenpunkten vorhanden ist, die jeweils die gleiche Höhe yL einer Position eines unteren Endes aufweisen, die ECU 10 einen unter diesen Dreidimensionalobjektparallaxenpunkten auswählt und eine Koordinate des ausgewählten Dreidimensionalobjektparallaxenpunktes als eine Koordinate der Position des unteren Endes des dreidimensionalen Objekts berechnet. In dem vorliegenden Ausführungsbeispiel wählt die ECU 10 unter der Vielzahl von Dreidimensionalobjektparallaxenpunkten, die jeweils eine gleiche Höhe yL der Position des unteren Endes aufweisen, einen Dreidimensionalobjektparallaxenpunkt, dessen Tiefe zL der Position des unteren Endes minimal ist, aus. Die ECU 10 speichert eine berechnete Koordinate der Position des unteren Endes des dreidimensionalen Objekts in dem RAM.
-
Als Nächstes berechnet die ECU 10 eine Höhe h der Position des unteren Endes des dreidimensionalen Objekts von einer Straßenoberfläche (nachstehend wird diese Höhe ebenso als eine „Höhe h eines unteren Endes“ bezeichnet). Die Höhe h des unteren Endes wird gemäß einer folgenden Gleichung (4) berechnet.
-
Das heißt die Höhe h des unteren Endes wird durch Subtrahieren, von der Höhe yL der Position des unteren Endes des dreidimensionalen Objekts, einer Höhe einer Straßenoberfläche an der Tiefe zL der Position des unteren Endes berechnet (d. h. ein Wert, der durch Einsetzen der Tiefe zL der Position des unteren Endes des dreidimensionalen Objekts in die Straßenoberflächengradientenformel y=a·z2+b·z+c erhalten wird). Nachfolgend bestimmt die ECU 10 für alle dreidimensionalen Objekte, die zu dem momentanen Berechnungszeitpunkt erfasst werden, ob die Höhe h des unteren Endes von diesen kleiner oder gleich einem vorbestimmten Schwellenwert ist oder nicht. Wenn die Höhe h des unteren Endes kleiner oder gleich dem Höhenschwellenwert ist, nimmt die ECU 10 eine vorübergehende Bestimmung vor, dass das dreidimensionale Objekt das bodenkontaktierende Objekt „zu dem momentanen Berechnungszeitpunkt“ ist. Wenn die Höhe h des unteren Endes den Höhenschwellenwert überschreitet, nimmt die ECU 10 eine vorübergehende Bestimmung vor, dass das dreidimensionale Objekt das schwebende Objekt „zu dem momentanen Berechnungszeitpunkt“ ist. Die ECU 10 speichert ein Ergebnis der vorübergehenden Bestimmung, welches ein Ergebnis der vorübergehenden Bestimmung ist, in dem RAM der ECU 10.
-
Es sei angemerkt, dass es einen Fall geben kann, in dem die Höhe h des unteren Endes einen Wert aufweist, der größer als Null ist, aufgrund eines Fehlers der Position des unteren Endes, eines Fehlers der Straßenoberflächengradientenformel oder Ähnlichem, obwohl das dreidimensionale Objekt tatsächlich mit dem Boden der Straßenoberfläche in Kontakt ist. Deshalb wird der Höhenschwellenwert auf einen Wert eingestellt, der leicht größer als Null ist, basierend auf einem Experiment, einer Simulation und Ähnlichem.
-
Weiterhin kann eine Koordinate einer Position eines unteren Endes eines gekoppelten Dreidimensionalobjektblocks 32a wie folgt berechnet werden. Das heißt, die ECU 10 kann eine Koordinate einer Position eines unteren Endes von jedem der Dreidimensionalobjektblöcke 32a, die den gekoppelten Dreidimensionalobjektblock 32a bilden, berechnen, und kann danach eine Koordinate eines Dreidimensionalobjektparallaxenpunktes mit einem minimalen yL unter diesen als eine Koordinate der Position des unteren Endes des gekoppelten Dreidimensionalobjektblocks 32a berechnen.
-
<Einstellen eines Bodenkontaktmarkers und Verfolgen eines dreidimensionalen Objekts>
-
Obwohl die ECU 10 dazu konfiguriert ist, ein dreidimensionales Objekt, das vor dem Bezugsfahrzeug vorhanden ist, basierend auf Signalen eines linken und rechten Bildes, die durch die linke und rechte Kamera aufgenommen werden, zu erfassen, gibt es einen Bereich vor dem Bezugsfahrzeug, der in den Abbildungsbereichen der linken und rechten Kamera nicht enthalten ist. Dieser Bereich wird z. B. aufgrund einer Beschränkung des Sichtwinkels von jeder der rechten und linken Kamera und/oder weil die Abbildungsbereiche der linken und rechten Kamera durch eine Haube (Motorhaube) des Bezugsfahrzeugs blockiert werden, unvermeidbar erzeugt. Nachstehend wird dieser Bereich als ein „Verdeckungsbereich R“ bezeichnet. 6 zeigt den Verdeckungsbereich R in einer Seitenansicht, wobei der Bereich R erzeugt wird, weil die Abbildungsbereiche der linken und rechten Kamera durch die Haube 13 des Bezugsfahrzeugs blockiert sind. Der Verdeckungsbereich R ist ein Bereich, der durch eine gerade Linie L1, die eine Installationsposition des Kamerasensors 11 und einen Eckteil der Haube 13 verbindet, eine Straßenoberfläche 14, und eine gerade Linie L2, die durch einen vorderen Kantenteil des Bezugsfahrzeugs verläuft und senkrecht zu der Straßenoberfläche 14 ist, umgeben ist. Wenn ein dreidimensionales Objekt A, das mit dem Boden der Straßenoberfläche 14 in Kontakt ist, in dem Verdeckungsbereich R vorhanden ist, ist ein Teil des dreidimensionalen Objekts A, der in dem Verdeckungsbereich R positioniert ist, in den Abbildungsbereichen nicht enthalten. Deshalb berechnet die ECU 10 als eine Position eines unteren Endes des dreidimensionalen Objekts A eine Position Pa2 eines unteren Endes eines „Teils des dreidimensionalen Objekts A, wobei der Teil über dem Verdeckungsbereich R positioniert ist“, und nicht eine tatsächliche Position Pa1 eines unteren Endes des dreidimensionalen Objekts A. Als ein Ergebnis wird die Höhe h des unteren Endes als ein Wert berechnet, der größer als der tatsächliche Wert ist, und deshalb, wenn diese Höhe h des unteren Endes den Höhenschwellenwert überschreitet, nimmt die ECU 10 eine vorübergehende Bestimmung vor, dass das dreidimensionale Objekt A das schwebende Objekt ist, obwohl das Objekt A tatsächlich das bodenkontaktierende Objekt ist.
-
Folglich nimmt die ECU 10 eine finale Bestimmung vor, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, basierend nicht nur auf dem vorübergehenden Bestimmungsergebnis zu dem momentanen Berechnungszeitpunkt, sondern ebenso basierend auf einem finalen Bestimmungsergebnis eines vorhergehenden (streng genommen unmittelbar vorhergehenden) Berechnungszeitpunkt. Wenn z. B. zu dem vorhergehenden Berechnungszeitpunkt final bestimmt wurde, dass das dreidimensionale Objekt das bodenkontaktierende Objekt war, nimmt die ECU 10 eine finale Bestimmung zu dem momentanen Berechnungszeitpunkt vor, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, auch wenn die ECU 10 eine vorübergehende Bestimmung zu dem momentanen Berechnungszeitpunkt macht, dass das dreidimensionale Objekt das schwebende Objekt ist.
-
Speziell, wenn eine finale Bestimmung zu einem bestimmten Berechnungszeitpunkt vorgenommen wurde, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, stellt die ECU 10 einen Wert eines Bodenkontaktmarkers für dieses dreidimensionale Objekt auf „1“ ein. Im Gegensatz dazu, wenn eine finale Bestimmung zu einem bestimmten Berechnungszeitpunkt vorgenommen wurde, dass das dreidimensionale Objekt das schwebende Objekt ist, stellt die ECU 10 einen Wert des Bodenkontaktmarkers für dieses dreidimensionale Objekt auf „0“ ein. Deshalb nimmt die ECU 10 zu einem nachfolgenden (streng genommen unmittelbar nachfolgenden) Berechnungszeitpunkt eine finale Bestimmung vor, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, durch Bezugnahme auf den Wert von diesem Bodenkontaktmarker. Um auf den Wert des Bodenkontaktmarkers Bezug zu nehmen, wie vorstehend erwähnt, identifiziert die ECU 10, welchem der dreidimensionalen Objekten, die zu dem vorhergehenden Berechnungszeitpunkt erfasst wurden, das dreidimensionale Objekt, das zu dem momentanen Berechnungszeitpunkt erfasst wird, entspricht. Das heißt, die ECU 10 verfolgt das dreidimensionale Objekt. Die ECU 10 verfolgt das dreidimensionale Objekt basierend auf den Positionen des unteren Endes von allen dreidimensionalen Objekten, die zu dem vorhergehenden Berechnungszeitpunkt erfasst wurden, der Position des unteren Endes des dreidimensionalen Objekts, für das die Bestimmung zu dem momentanen Berechnungszeitpunkt vorzunehmen ist, und der Fahrzeuggeschwindigkeit des Bezugsfahrzeugs. Es sei angemerkt, dass das dreidimensionale Objekt unter Verwendung des Parallaxenwahlkennfelds 30 verfolgt wird und deshalb streng genommen die ECU 10 den Dreidimensionalobjektblock verfolgt.
-
Ein Verfahren zum Verfolgen des Dreidimensionalobjektblocks 32a wird unter Bezugnahme auf 7 beschrieben. 7 zeigt ein Diagramm, bei dem nur Dreidimensionalobjektblöcke 32a von dem Parallaxenwahlkennfeld 30 extrahiert sind, die zu einem n-ten (n≥2) Berechnungszeitpunkt erzeugt wurden, wenn der momentane Berechnungszeitpunkt als der n-te Zeitpunkt definiert ist. Nachstehend wird ein Dreidimensionalobjektblock 32a, der einem dreidimensionalen Objekt X zu dem n-ten Berechnungszeitpunkt entspricht, als ein Dreidimensionalobjektblock 32aX(n) bezeichnet. In dem vorliegenden Beispiel existieren drei Dreidimensionalobjektblöcke 32aB(n), 32aC(n) und 32aD(n), die jeweils einem dreidimensionalen Objekt B, C und D entsprechen. Die ECU 10 speichert eine Koordinate einer Position eines unteren Endes des Dreidimensionalobjektblocks 32aB(n-1) zu einem n-1-ten Berechnungszeitpunkt (d. h. einem vorhergehenden (unmittelbar vorhergehenden) Berechnungszeitpunkt). In 7 ist dieser Dreidimensionalobjektblock 32aB(n-1) ebenso auf eine überlagerte Weise für eine Einfachheit der Beschreibung dargestellt.
-
Ein Intervall von der n-1-ten Berechnungszeit zu der n-ten Berechnungszeit sei als T definiert. In diesem Fall, wenn das Bezugsfahrzeug vorwärts fährt (+z-Richtung, eine obere Richtung in 7) bei einer Fahrzeuggeschwindigkeit V, bewegt sich/fährt das Bezugsfahrzeug um eine Entfernung V·T in die +z-Richtung während des Intervalls (einem unmittelbar vorhergehenden Intervall) von dem n-1-ten Berechnungszeitpunkt zu dem n-ten Berechnungszeitpunkt. Deshalb bewegt sich die Position des unteren Endes von jedem der Dreidimensionalobjektblöcke 32a relativ in die -z-Richtung (eine untere Richtung in 7) um eine Länge entsprechend der Fahrentfernung V·T des Bezugsfahrzeugs während des Intervalls von dem n-1-ten Berechnungszeitpunkt zu dem n-ten Berechnungszeitpunkt, obwohl das dreidimensionale Objekt entsprechend jedem der Dreidimensionalobjektblöcke 32a stillsteht. Folglich schätzt die ECU 10 „eine Position, zu der sich die Position des unteren Endes von jedem der Dreidimensionalobjektblöcke 32a zu dem n-1-ten Berechnungszeitpunkt in die -z-Richtung um die Länge von V·T horizontal bewegt“, als eine Position zu dem n-ten Berechnungszeitpunkt in einem Fall, wenn angenommen wird, dass jeder der Dreidimensionalobjektblöcke 32a für ein unmittelbar vorausgehendes Intervall stillsteht. Danach setzt die ECU 10 auf diese geschätzte Position „einen virtuellen Dreidimensionalobjektblock 32av zu dem n-ten Berechnungszeitpunkt entsprechend jedem der Dreidimensionalobjektblöcke 32a“.
-
In dem Beispiel von 7 bewegt sich die Position des unteren Endes des Dreidimensionalobjektblocks 32aB(n-1) zu dem n-1-ten Berechnungszeitpunkt horizontal um die Länge von V·T in die -z-Richtung und als ein Ergebnis wird „ein virtueller Dreidimensionalobjektblock 32aBv(n) zu dem n-ten Berechnungszeitpunkt“ entsprechend dem Dreidimensionalobjektblock 32aB(n-1) eingestellt.
-
Nun ist das Berechnungsintervall T eine infinitesimale Zeit und somit ist eine Bewegungsentfernung eines dreidimensionalen Objekts extrem klein, obwohl dieses Objekt eine Geschwindigkeit ungleich Null aufweist. Deshalb kann angenommen werden, dass ein Dreidimensionalobjektblock 32aX(n) von manchem dreidimensionalen Objekt X näher zu einem virtuellen Dreidimensionalobjektblock 32avX(n) positioniert ist, im Vergleich mit einem Dreidimensionalobjektblock 32aY(n) eines anderen dreidimensionalen Objekts Y. Deshalb berechnet die ECU 10 eine Entfernung auf einer horizontalen Ebene (d. h. eine Entfernung auf einer z-x-Ebene) zwischen der Position des unteren Endes des virtuellen Dreidimensionalobjektblocks 32avX(n) und der Position des unteren Endes von jedem von allen Dreidimensionalobjektblöcken zu dem n-ten Berechnungszeitpunkt. Danach bestimmt die ECU 10 unter diesen einen Dreidimensionalobjektblock, mit einer minimalen Entfernung als einen „Dreidimensionalobjektblock 32aX(n) zu dem n-ten Berechnungszeitpunkt“.
-
In dem Beispiel von 7 berechnet die ECU 10 eine Entfernung auf einer horizontalen Ebene zwischen der Position des unteren Endes des virtuellen Dreidimensionalobjektsblocks 32aBv(n) und jeder der Positionen des unteren Endes der Dreidimensionalobjektblöcke 32aB(n), 32aC(n) und 32aD(n) zu der n-ten Periode. Wie von 7 ersichtlich ist, ist unter diesen Entfernungen eine Entfernung zwischen der Position des unteren Endes des virtuellen Dreidimensionalobjektblocks 32aBv(n) und der Position des unteren Endes des Dreidimensionalobjektblocks 32aB(n) minimal. Deshalb verknüpft die ECU 10 den Dreidimensionalobjektblock 32aB(n) mit dem Dreidimensionalobjektblock 32aB(n-1).
-
Auf diese Weise identifiziert (verfolgt) die ECU 10, welchem der dreidimensionalen Objekte, die zu dem n-1-ten Berechnungszeitpunkt erfasst werden, das dreidimensionale Objekt, das zu dem n-ten Berechnungszeitpunkt erfasst wird, entspricht. Ein ähnliches Verfahren zur Verfolgung wird auf gekoppelte Dreidimensionalobjektblöcke 32a angewendet. Ein Verfolgen eines dreidimensionalen Objekts ermöglicht der ECU 10, einen Wert eines Bodenkontaktmarkers für das verfolgte dreidimensionale Objekt zu beschaffen (auf diesen Bezug zu nehmen). Das heißt, die ECU 10 kann erkennen, ob das „zu fokussierende dreidimensionale Objekt“ zu dem n-ten Berechnungszeitpunkt zu dem n-1-ten Berechnungszeitpunkt als das bodenkontaktierende Objekt oder das schwebende Objekt final bestimmt wurde.
-
<Finale Bestimmung, ob ein dreidimensionales Objekt zu dem momentanen Berechnungszeitpunkt das bodenkontaktierende Objekt ist oder nicht>
-
Wie vorstehend erwähnt, wenn zu dem momentanen Berechnungszeitpunkt vorübergehend bestimmt wurde, dass ein „bestimmtes dreidimensionales Objekt“ das bodenkontaktierende Objekt ist, nimmt die ECU 10 eine finale Bestimmung vor, dass dieses dreidimensionale Objekt das „bodenkontaktierende Objekt“ ist, und stellt einen Wert des Bodenkontaktmarkers von diesem dreidimensionalen Objekt auf „1“ ein, unabhängig von einem Wert des Bodenkontaktmarkers von diesem dreidimensionalen Objekt (d. h. unabhängig von einem finalen Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt).
-
Im Gegensatz dazu, wenn zu dem momentanen Berechnungszeitpunkt vorübergehend bestimmt wurde, dass „ein bestimmtes dreidimensionales Objekt“ das schwebende Objekt ist, nimmt die ECU 10 eine finale Bestimmung vor, dass dieses dreidimensionale Objekt das „bodenkontaktierende Objekt“ ist, und stellt einen Wert eines Bodenkontaktmarkers von diesem dreidimensionalen Objekt auf „1“ ein, wenn ein Wert des Bodenkontaktmarkers von diesem dreidimensionalen Objekt gleich „1“ ist (d. h., wenn ein finales Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt das „bodenkontaktierende Objekt“ ist).
-
Weiterhin, wenn zu dem momentanen Berechnungszeitpunkt vorübergehend bestimmt wurde, dass „ein bestimmtes dreidimensionales Objekt“ das schwebende Objekt ist, nimmt die ECU 10 eine finale Bestimmung vor, dass dieses dreidimensionale Objekt das „schwebende Objekt“ ist, und stellt einen Wert eines Bodenkontaktmarkers von diesem dreidimensionalen Objekt auf „0“ ein, wenn ein Wert des Bodenkontaktmarkers von diesem dreidimensionalen Objekt gleich „0“ ist (d. h., wenn ein finales Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt das „schwebende Objekt“ ist).
-
Als ein Ergebnis kann eine Möglichkeit, dass das bodenkontaktierende Objekt fälschlicherweise als das schwebende Objekt bestimmt wird, reduziert werden. Diesbezüglich wird eine Beschreibung mit Bezug auf 8 vorgenommen. 8 zeigt eine positionelle Beziehung zwischen einem dreidimensionalen Objekt E und dem Bezugsfahrzeug zu dem n-1-ten und dem n-ten Berechnungszeitpunkten, wenn sich das Bezugsfahrzeug dem dreidimensionalen Objekt E mit der Fahrzeuggeschwindigkeit V nähert, wobei das Objekt E in der +z-Richtung mit Bezug auf das Bezugsfahrzeug positioniert ist. Das dreidimensionale Objekt E ist mit einem Boden einer Straßenoberfläche in Kontakt und steht still. Nachstehend wird ein dreidimensionales Objekt E zu dem n-ten Berechnungszeitpunkt als E(n) bezeichnet. Obwohl das dreidimensionale Objekt E(n-1) außerhalb des Verdeckungsbereichs R zu dem n-1-ten Berechnungszeitpunkt positioniert ist, befindet sich das dreidimensionale Objekt E(n) zu dem n-ten Berechnungszeitpunkt innerhalb des Verdeckungsbereichs R dadurch, dass es sich dem Bezugsfahrzeug um die Länge von V·T relativ annähert. Es wird angenommen, dass eine Höhe h eines unteren Endes „eines Teils des dreidimensionalen Objekts E(n), wobei der Teil sich über dem Verdeckungsbereich R befindet“ den Höhenschwellenwert überschreitet.
-
In diesem Fall nimmt die ECU 10 zu dem n-1-ten Berechnungszeitpunkt eine vorübergehende Bestimmung vor, dass das dreidimensionale Objekt E das „bodenkontaktierende Objekt“ ist, und somit nimmt die ECU 10 eine finale Bestimmung vor, dass das dreidimensionale Objekt E das „bodenkontaktierende Objekt“ ist, unabhängig von einem Wert eines Bodenkontaktmarkers des dreidimensionalen Objekts E (d. h. einem finalen Bestimmungsergebnis zu einem n-2-ten Berechnungszeitpunkt des dreidimensionalen Objekts E). Folglich stellt die ECU 10 einen Wert des Bodenkontaktmarkers auf „1“ ein. Danach, obwohl die ECU 10 eine vorübergehende Bestimmung zu dem n-ten Berechnungszeitpunkt vornimmt, dass das dreidimensionale Objekt E das „schwebende Objekt“ ist, nimmt die ECU 10 eine finale Bestimmung zu dem n-ten Berechnungszeitpunkt vor, dass das dreidimensionale Objekt E das „bodenkontaktierende Objekt“ ist, da der Wert des Bodenkontaktmarkers zu den n-1-ten Berechnungszeitpunkt auf „1“ eingestellt wird. Dementsprechend stellt die ECU 10 den Wert des Bodenkontaktmarkers des dreidimensionalen Objekts E auf „1“ ein. Als ein Ergebnis wird eine Möglichkeit, dass dieses bodenkontaktierende Objekt fälschlicherweise als das schwebende Objekt bestimmt wird, auch wenn das bodenkontaktierende Objekt in den Verdeckungsbereich R eindringt, signifikant reduziert.
-
<Zurücksetzen eines finalen Bestimmungsergebnisses (eines Bodenkontaktmarkers) >
-
Gemäß dem vorstehend erwähnten Verfahren, wenn zumindest eines eines vorübergehenden Bestimmungsergebnisses zu dem n-ten Berechnungszeitpunkt für ein bestimmtes dreidimensionales Objekt und eines finalen Bestimmungsergebnisses zu dem n-1-ten Berechnungszeitpunkt für dieses dreidimensionale Objekt das „bodenkontaktierende Objekt“ ist, nimmt die ECU 10 zu dem n-ten Berechnungszeitpunkt eine finale Bestimmung vor, dass dieses dreidimensionale Objekt das bodenkontaktierende Objekt ist. Deshalb, sobald zu einem bestimmten Berechnungszeitpunkt vorübergehend bestimmt ist, dass das dreidimensionale Objekt das bodenkontaktierende Objekt ist, obwohl vorübergehende Bestimmungen, dass dieses dreidimensionale Objekt das schwebende Objekt ist, zu nachfolgenden Berechnungszeitpunkten fortgesetzt werden, wird eine finale Bestimmung, dass dieses dreidimensionale Objekt das bodenkontaktierende Objekt ist, fortgesetzt. Deshalb, wenn eine vorübergehende Bestimmung, dass das schwebende Objekt das bodenkontaktierende Objekt ist, fälschlicherweise vorgenommen wird, ist es sehr wahrscheinlich, dass die Kollisionsvermeidungssteuerung für das schwebende Objekt durchgeführt wird, für das die Kollisionsvermeidungssteuerung im Grunde unnötig ist.
-
Eine spezifische Beschreibung wird nun bezugnehmend auf
9 und eine folgende Tabelle 1 für einen Fall vorgenommen, in dem solch eine Situation auftritt.
9 zeigt eine positionelle Beziehung zwischen einem dreidimensionalen Objekt F und dem Bezugsfahrzeug zu den ersten bis zehnten Berechnungszeitpunkten, wenn sich das Bezugsfahrzeug dem dreidimensionalen Objekt F mit der Fahrzeuggeschwindigkeit V nähert, wobei das Objekt F in der +z-Richtung mit Bezug auf das Bezugsfahrzeug positioniert ist. Eine Tabelle 1 zeigt vorübergehende Bestimmungsergebnisse und finale Bestimmungsergebnisse des dreidimensionalen Objekts F zu den ersten bis zehnten Berechnungszeitpunkten. „F“ (floating object") und „G“ (ground-contacting object") in der Tabelle 1 stellen entsprechend das „schwebende Objekt“ und das „bodenkontaktierende Objekt“ dar. Nachstehend wird eine Position des dreidimensionalen Objekts F zu dem n-ten Berechnungszeitpunkt als F(n) bezeichnet. In diesem Beispiel ist das dreidimensionale Objekt F das schwebende Objekt und steht still an „einer Position, an der eine Höhe h des unteren Endes davon größer als der Höhenschwellenwert ist“ mit Ausnahme zu dem dritten Berechnungszeitpunkt. Das dreidimensionale Objekt F fällt aus irgendeinem Grund zu dem dritten Berechnungszeitpunkt vorübergehend auf eine Straßenoberfläche (z. B. Wind, eigenes Gewicht und Ähnliches). Positionen F(n+1) (n: 1 bis 9) bewegen sich relativ zu dem Bezugsfahrzeug mit Bezug auf die Positionen F(n) um die Länge von V·T. Tabelle 1
n | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
vorübergehendes Bestimmungsergebnis | F | F | G | F | F | F | F | F | F | F |
finales Bestimmungsergebnis | F | F | G | G | G | G | G | G | G | G |
-
Das dreidimensionale Objekt F ist das schwebende Objekt und somit ist es wünschenswert, dass eine finale Bestimmung, dass das dreidimensionale Objekt F das „schwebende Objekt“ ist, in allen Perioden vorgenommen wird. Wie jedoch in Tabelle 1 gezeigt ist, wird eine vorübergehende Bestimmung, dass das dreidimensionale Objekt F das bodenkontaktierende Objekt ist, zu dem dritten Berechnungszeitpunkt vorgenommen, weil das dreidimensionale Objekt F vorübergehend auf die Straßenoberfläche fällt und deshalb das dreidimensionale Objekt F zu dem dritten Berechnungszeitpunkt als das bodenkontaktierende Objekt bestimmt wird. Als ein Ergebnis wird eine finale Bestimmung, dass das dreidimensionale Objekt F das bodenkontaktierende Objekt ist, fortgesetzt, obwohl vorübergehende Bestimmungen, dass das dreidimensionale Objekt F das schwebende Objekt ist, in den nachfolgenden Berechnungszeitpunkten fortgesetzt werden.
-
Somit, wenn ein dreidimensionales Objekt, das final als das bodenkontaktierende Objekt bestimmt wurde, vorübergehend als das schwebende Objekt zu einem nachfolgenden Berechnungszeitpunkt bestimmt wird, misst die ECU 10 eine Zeit (eine Schwebungsobjektbestimmungsfortsetzungszeit bzw. eine Zeit des Fortsetzens der Bestimmung des schwebenden Objekts), während der eine vorübergehende Bestimmung, dass das dreidimensionale Objekt das schwebende Objekt ist, fortgesetzt wird. Danach, wenn die Schwebungsobjektbestimmungsfortsetzungszeit eine vorbestimmte Rücksetz-Zeit erreicht, bestimmt die ECU 10, dass das dreidimensionale Objekt tatsächlich das schwebende Objekt ist und nimmt eine finale Bestimmung zu einem Zeitpunkt vor, wenn die Rücksetz-Zeit abgelaufen ist, dass das dreidimensionale Objekt das schwebende Objekt ist. Es sei angemerkt, dass die Rücksetz-Zeit durch ein Experiment oder eine Simulation berechnet werden kann.
-
In dem Beispiel von
9 wird z. B. angenommen, dass die Rücksetz-Zeit derart eingestellt ist, dass diese fünfmal länger ist als das Berechnungsintervall (5·T). In diesem Fall wird eine vorübergehende Bestimmung, dass das dreidimensionale Objekt F das schwebende Objekt ist, während einer Zeit von dem vierten Berechnungszeitpunkt zu dem neunten Berechnungszeitpunkt fortgesetzt (d. h., eine Zeit, so dass die Schwebungsobjektbestimmungsfortsetzungszeit ein Fünffaches der Periode erreicht (5.T)), wobei der vierte Berechnungszeitpunkt der nachfolgende Berechnungszeitpunkt des dritten Berechnungszeitpunktes ist, zu dem das dreidimensionale Objekt F final als das bodenkontaktierende Objekt bestimmt wurde. Deshalb, wie in der Tabelle 2 gezeigt ist, wird eine finale Bestimmung, dass das dreidimensionale Objekt F das schwebende Objekt ist, zu dem neunten Berechnungszeitpunkt vorgenommen. Dadurch kann eine Möglichkeit, dass das schwebende Objekt fortgesetzt fälschlicherweise als das bodenkontaktierende Objekt bestimmt wird, reduziert werden, und kann eine Möglichkeit, dass eine unnötige Kollisionsvermeidungssteuerung durchgeführt wird, reduziert werden. Tabelle 2
n | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
vorübergehendes Bestimmungsergebnis | F | F | G | F | F | F | F | F | F | F |
finales Bestimmungsergebnis | F | F | G | G | G | G | G | G | F | F |
-
Es sei angemerkt, dass, wenn ein bestimmtes dreidimensionales Objekt durch die Ausführungsbeispielvorrichtung als das bodenkontaktierende Objekt bestimmt wird, und durch die Kollisionsvermeidungssteuerungsvorrichtung bestimmt wird, dass die Zeit bis zur Kollision zu diesem dreidimensionalen Objekt kleiner oder gleich einem vorbestimmten Zeitschwellenwert ist, die Kollisionsvermeidungssteuerungsvorrichtung die Kollisionsvermeidungssteuerung bezüglich dieses dreidimensionalen Objekts initiiert. In diesem Fall, auch wenn die Schwebungsobjektbestimmungsfortsetzungszeit von diesem dreidimensionalen Objekt danach die Rücksetz-Zeit erreicht hat, ändert die Ausführungsbeispielvorrichtung ein finales Bestimmungsergebnis für dieses dreidimensionale Objekt nicht zu dem schwebenden Objekt, sondern behält das finale Bestimmungsergebnis, das dieses dreidimensionale Objekt das bodenkontaktierende Objekt ist, bei. Dementsprechend wird die Kollisionsvermeidungssteuerung gegenüber diesem dreidimensionalen Objekt angemessen durchgeführt, obwohl die Schwebungsobjektbestimmungsfortsetzungszeit von diesem Objekt die Rücksetz-Zeit erreicht hat, nachdem die Kollisionsvermeidungssteuerung initiiert wurde.
-
(Tatsächliche Operation)
-
Als nächstes wird eine tatsächliche Operation der ECU 10 beschrieben. Die CPU der ECU 10 ist dazu konfiguriert, während der Maschinen-An-Periode, Routinen, die durch Ablaufdiagramme von 10 und 11 gezeigt sind, jedes Mal, wenn eine vorbestimmte Zeit (das Berechnungsintervall) abläuft, durchzuführen.
-
Wenn der Maschinenschalter in den An-Zustand geändert wird, startet die CPU eine Verarbeitung von einem Schritt 1000 in 10 und führt die folgenden Schritte 1006 bis 1016 in dieser Reihenfolge durch.
-
Schritt 1002: die CPU empfängt ein Signal eines linken Bildes und ein Signal eines rechten Bildes von dem Kamerasensor 11. Das heißt, die CPU beschafft ein aufgenommenes Bild inklusive eines linken Bildes und eines rechten Bildes.
-
Schritt 1004: die CPU beschafft eine Fahrzeuggeschwindigkeit von dem Fahrzeugzustandssensor 12.
-
Schritt 1006: die CPU erzeugt ein Parallaxenbild von dem aufgenommenen Bild.
-
Schritt 1008: die CPU schreibt irgendeine von drei Eigenschaften (ein dreidimensionales Objekt, eine Straßenoberfläche, oder eine Undeutlichkeit) in jeden der Blöcke 32 des Parallaxenwahlkennfelds 30 basierend auf Parallaxeninformationen, die in dem Parallaxenbild enthalten sind.
-
Schritt 1010: die CPU transformiert die vorliegenden Parallaxenpunkt in dreidimensionale Koordinaten (z, x, y) basierend auf der Eigenschaft von jedem der Blöcke 32, wobei die Parallaxenpunkte Dreidimensionalobjektparallaxenpunkte, die Parallaxenpunkt sind, die in den Dreidimensionalobjektblock 32a klassifiziert sind, und Straßenoberflächenparallaxenpunkte, die Parallaxenpunkte sind, die in den Straßenoberflächenblock 32b klassifiziert sind, sind.
-
Schritt 1012: die CPU bestimmt basierend auf den Koordinaten der Dreidimensionalobjektparallaxenpunkte, die in die dreidimensionalen Koordinaten in dem Schritt 1010 transformiert sind, ob benachbarte Dreidimensionalobjektblöcke 32a ein kontinuierliches dreidimensionales Objekt bilden oder individuelle dreidimensionale Objekte sind. Wenn bestimmt wurde, dass die benachbarten Dreidimensionalobjektblöcke 32a ein kontinuierliches dreidimensionales Objekt bilden, koppelt die CPU diese Dreidimensionalobjektblöcke 32a, um einen gekoppelten Dreidimensionalobjektblock 32a zu erzeugen und gruppiert eine Gruppe von dreidimensionalen Koordinaten der Dreidimensionalobjektparallaxenpunkte, die in diesem gekoppelten Dreidimensionalobjektblock 32a enthalten sind. Andererseits, wenn bestimmt wurde, dass die benachbarten Dreidimensionalobjektblöcke 32a individuelle dreidimensionale Objekte sind, koppelt die CPU diese Dreidimensionalobjektblöcke 32a nicht, aber gruppiert eine Gruppe von dreidimensionalen Koordinaten der Dreidimensionalobjektparallaxenpunkte, die in jedem der Dreidimensionalobjektblöcke 32a enthalten sind. Dadurch werden dreidimensionale Objekte, die vor dem Bezugsfahrzeug vorhanden sind, erfasst.
-
Schritt 1014: die CPU berechnet eine Straßenoberflächengradientenformel einer Straßenoberfläche, die vor dem Bezugsfahrzeug vorhanden ist, basierend auf den Koordinaten der Straßenoberflächenparallaxenpunkte, die in dreidimensionale Koordinaten in dem Schritt 1010 transformiert wurden.
-
Schritt 1015: die CPU berechnet für ein dreidimensionales Objekt unter den dreidimensionalen Objekten, die in Schritt 1012 erfasst werden, eine Koordinate (zL, xL, yL) einer Position eines unteren Endes von diesem dreidimensionalen Objekt basierend auf den Koordinaten der Dreidimensionalobjektparallaxenpunkte, die in die dreidimensionalen Koordinaten in dem Schritt 1010 transformiert wurden. Danach wird dieses dreidimensionale Objekt als ein „Zieldreidimensionalobjekt“ bezeichnet.
-
Schritt 1016: Die CPU verfolgt, welches der dreidimensionalen Objekte, die zu dem vorhergehenden Berechnungszeitpunkt erfasst wurden, dem Zieldreidimensionalobjekt entspricht, und beschafft einen Wert eines Bodenkontaktmarkers, der für das verfolgte dreidimensionale Objekt eingestellt ist (d. h., beschafft ein finales Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt).
-
Nachfolgend geht die CPU über zu einem Schritt 1017, um zu bestimmen, ob ein Verfolgen des Zieldreidimensionalobjekts in dem Schritt 1016 durch die CPU erfolgreich war (d. h. Bestimmen, ob ein dreidimensionales Objekt entsprechend dem Zieldreidimensionalobjekt zu dem vorhergehenden Berechnungszeitpunkt erfasst wurde oder nicht). Wenn bestimmt wurde, dass die CPU bei der Verfolgung des Zieldreidimensionalobjekts nicht erfolgreich war, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1017 vor (d. h., bestimmt, dass das Zieldreidimensionalobjekt das erste Mal zu dem momentanen Berechnungszeitpunkt erfasst wurde, und geht über zu einem folgenden Schritt 1018.
-
In Schritt 1018 berechnet die CPU eine Höhe h eines unteren Endes (siehe Gleichung (4)) des Zieldreidimensionalobjekts basierend auf der Straßenoberflächengradientenformel, die in dem Schritt 1014 berechnet wird, und den Koordinaten der Position des unteren Endes des Zieldreidimensionalobjekts, die in Schritt 1015 berechnet werden, und nimmt eine vorübergehende Bestimmung vor, um zu bestimmen, ob diese Höhe h des unteren Endes kleiner oder gleich einem vorbestimmten Höhenschwellenwert ist oder nicht. Wenn bestimmt wurde, dass die Höhe h des unteren Endes kleiner oder gleich dem Höhenschwellenwert ist, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1018 vor, um eine folgende Verarbeitung eines Schritts 1020 und eines Schritts 1022 in dieser Reihenfolge durchzuführen.
-
Schritt 1020: die CPU nimmt eine vorübergehende Bestimmung vor, dass das Zieldreidimensionalobjekt das „bodenkontaktierende Objekt“ ist.
-
Schritt 1022: die CPU nimmt eine finale Bestimmung vor, dass das Zieldreidimensionalobjekt das „bodenkontaktierende Objekt“ ist, um einen Wert des Bodenkontaktmarkers von diesem Zieldreidimensionalobjekt auf „1“ einzustellen. Die CPU verknüpft den Wert von diesem Bodenkontaktmarker (ein finales Bestimmungsergebnis) mit diesem Zieldreidimensionalobjekt, um den Wert in dem RAM der ECU 10 zu speichern. Das heißt, zu einem Berechnungszeitpunkt, zu dem ein dreidimensionales Objekt das erste Mal erfasst wurde, nimmt die CPU eine finale Bestimmung vor, wobei ein Ergebnis davon das gleiche ist wie ein Ergebnis einer vorübergehenden Bestimmung (eine gleiche Verarbeitung wird in Schritt 1026 durchgeführt, der später beschrieben wird).
-
Andererseits, wenn in Schritt 1018 bestimmt wurde, dass die Höhe h des unteren Endes des Höhenschwellenwert überschreitet, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1018 vor, um eine folgende Verarbeitung eines Schritts 1024 und eines Schritts 1026 in dieser Reihenfolge vorzunehmen.
-
Schritt 1024: die CPU nimmt eine vorübergehende Bestimmung vor, dass das Zieldreidimensionalobjekt das „schwebende Objekt“ ist.
-
Schritt 1022: die CPU nimmt eine finale Bestimmung vor, dass das Zieldreidimensionalobjekt das „schwebende Objekt“ ist, um einen Wert des Bodenkontaktmarkers von diesem Zieldreidimensionalobjekt auf „0“ einzustellen. Die CPU verknüpft den Wert von diesem Bodenkontaktmarker (ein finales Bestimmungsergebnis) mit diesem Zieldreidimensionalobjekt, um den Wert in dem RAM der ECU 10 zu speichern.
-
Nach der Verarbeitung des Schritts 1022 oder des Schritts 1026 geht die CPU über zu einem Schritt 1028, der später beschrieben wird.
-
Im Gegensatz dazu, wenn bestimmt wurde, dass die CPU beim Verfolgen des Zieldreidimensionalobjekts in dem Schritt 1017 erfolgreich war, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1017 vor (d. h., bestimmt, dass ein dreidimensionales Objekt entsprechend dem Zieldreidimensionalobjekt zu dem vorhergehenden Berechnungszeitpunkt erfasst wurde) und geht über zu einem Schritt 1032 in 11.
-
In dem Schritt 1032 führt die CPU eine gleiche Verarbeitung wie in dem Schritt 1018 in 10 durch. Wenn bestimmt wurde, dass die Höhe h des unteren Endes kleiner oder gleich dem Höhenschwellenwert ist, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1032 vor, um eine folgende Verarbeitung eines Schritts 1034 bis zu einem Schritt 1038 in dieser Reihenfolge durchzuführen.
-
Schritt 1034: die CPU nimmt eine vorübergehende Bestimmung vor, dass das Zieldreidimensionalobjekt das „bodenkontaktierende Objekt“ ist.
-
Schritt 1036: die CPU initiiert einen Zeitnehmer t, der ein Zeitnehmer zum Messen einer Schwebungsobjektbestimmungsfortsetzungszeit ist. Dadurch wird die Schwebungsobjektbestimmungsfortsetzungszeit initiiert.
-
Schritt 1038: die CPU nimmt eine finale Bestimmung vor, dass das Zieldreidimensionalobjekt das „bodenkontaktierende Objekt“ ist, um einen Wert des Bodenkontaktmarkers von diesem Zieldreidimensionalobjekt auf „1“ einzustellen. Die CPU verknüpft den Wert von diesem Bodenkontaktmarker (ein finales Bestimmungsergebnis) mit diesem Zieldreidimensionalobjekt, um den Wert in dem RAM der ECU 10 zu speichern.
-
Im Gegensatz dazu, wenn in dem Schritt 1032 bestimmt wurde, dass die Höhe h des unteren Endes des Zieldreidimensionalobjekts den Höhenschwellenwert überschreitet, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1032 vor und nimmt eine vorübergehende Bestimmung in einem Schritt 1040 vor, dass das Zieldreidimensionalobjekt das „schwebende Objekt“ ist.
-
Nachfolgend geht die CPU über zu einem Schritt 1042, um zu bestimmen, ob der Wert des Bodenkontaktmarkers, der in Schritt 1016 beschafft wird, gleich „1“ ist oder nicht. Wenn bestimmt wurde, dass der Wert des Bodenkontaktmarkers gleich „1“ ist, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1042 vor, und erhöht einen Wert des Zeitnehmers t um eins in einem Schritt 1044 (mit anderen Worten, misst die Schwebungsobjektbestimmungsfortsetzungszeit).
-
Als nächstes geht die CPU über zu einem Schritt 1046, um zu bestimmen, ob der Wert des Zeitnehmers t, der in dem Schritt 1044 erhöht wurde, eine vorbestimmte Rücksetz-Zeit erreicht hat oder nicht. Wenn bestimmt wurde, dass der Wert des Zeitnehmers t die Rücksetz-Zeit erreicht hat, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1046 vor (d. h., bestimmt, dass das dreidimensionale Objekt tatsächlich das schwebende Objekt ist, weil, obwohl das finale Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt das „bodenkontaktierende Objekt“ ist (Schritt 1042: Ja), ein vorübergehendes Bestimmungsergebnis, dass das Zieldreidimensionalobjekt das „schwebende Objekt“ ist, sich für die Rücksetz-Zeit fortgesetzt hat) und führt eine Verarbeitung eines folgendes Schritts 1048 durch.
-
Schritt 1048: die CPU nimmt eine finale Bestimmung vor, dass das Zieldreidimensionalobjekt das „schwebende Objekt“ ist, um einen Wert des Bodenkontaktmarkers von diesem Zieldreidimensionalobjekt auf „0“ einzustellen. Speziell, wenn die Verarbeitung des vorliegenden Schritts durchgeführt wird, nachdem eine Bestimmung „Ja“ in dem Schritt 1046 vorgenommen wurde, kann ebenso gesagt werden, dass die CPU „einen Wert des Bodenkontaktmarkers von diesem Zieldreidimensionalobjekt von „1“ auf „0“ zurücksetzt". Die CPU verknüpft den Wert von diesem Bodenkontaktmarker mit diesem Zieldreidimensionalobjekt, um den Wert in dem RAM der ECU 10 zu speichern.
-
Im Gegensatz dazu, wenn in dem Schritt 1046 bestimmt wurde, dass ein Wert des Zeitnehmers t die Rücksetz-Zeit nicht erreicht hat, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1046 vor (d. h., bestimmt, dass „es immer noch unmöglich ist, zu schlussfolgern, dass dieses Zieldreidimensionalobjekt tatsächlich das schwebende Objekt ist, weil, obwohl bezüglich des Zieldreidimensionalobjekts das finale Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt das „bodenkontaktierende Objekt“ ist, ein vorübergehendes Bestimmungsergebnis von „schwebendes Objekt“ fortgesetzt wurde, die Schwebungsobjektbestimmungsfortsetzungszeit die Rücksetz-Zeit nicht erreicht hat") und führt die Verarbeitung des vorstehend erwähnten Schritts 1038 durch.
-
Andererseits, wenn in dem Schritt 1042 bestimmt wurde, dass der Wert des Bodenkontaktmarkers gleich „0“ ist, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1042 vor, um die Verarbeitung des vorstehend erwähnten Schrittes 1048 durchzuführen. Das heißt, in einem Fall, in dem das finale Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt das „schwebende Objekt“ ist (Schritt 1042: Nein) und das vorübergehende Bestimmungsergebnis zu dem momentanen Berechnungszeitpunkt ebenso das „schwebende Objekt“ ist (Schritt 1032: Nein, Schritt 1040), nimmt die CPU ebenso zu dem momentanen Berechnungszeitpunkt ein finales Bestimmungsergebnis vor, dass das Zieldreidimensionalobjekt das schwebende Objekt ist.
-
Nach der Verarbeitung des Schritts 1038 oder des Schritts 1048 oder nach der Verarbeitung des Schritts 1022 oder des Schritts 1026 in 10 geht die CPU über zu dem Schritt 1028 in 10. In dem Schritt 1028 bestimmt die CPU, ob die Verarbeitung nach dem Schritt 1015 für alle dreidimensionalen Objekte, die in dem Schritt 1012 erfasst wurden, durchgeführt wurde. Wenn bestimmt wurde, dass die Verarbeitung noch nicht für alle dreidimensionalen Objekte durchgeführt wurde, nimmt die CPU eine Bestimmung „Nein“ in dem Schritt 1028 vor, um zu dem Schritt 1015 zurückzukehren, und wiederholt die Verarbeitung nach dem Schritt 1015 für die restlichen dreidimensionalen Objekte. Andererseits, wenn bestimmt wurde, dass die Verarbeitung für alle dreidimensionalen Objekte durchgeführt wurde, nimmt die CPU eine Bestimmung „Ja“ in dem Schritt 1028 vor und geht über zu einem Schritt 1030, um die vorliegende Routine vorläufig zu beenden.
-
Effekte der Ausführungsbeispielvorrichtung werden beschrieben. Die Ausführungsbeispielvorrichtung bestimmt, ob ein dreidimensionales Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, basierend nicht nur auf einer Höhe h eines unteren Endes von diesem dreidimensionalen Objekt zu dem momentanen Berechnungszeitpunkt, sondern ebenso auf einem finalen Bestimmungsergebnis zu dem vorhergehenden Berechnungszeitpunkt. Deshalb kann eine Möglichkeit, dass das dreidimensionale Objekt, das tatsächlich das bodenkontaktierende Objekt ist, fälschlicher Weise als das schwebende Objekt bestimmt wird, aufgrund eines Eintritts in den Verdeckungsbereich R, signifikant reduziert werden. Als ein Ergebnis kann eine Bestimmung, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, mit einer hohen Genauigkeit vorgenommen werden.
-
Zusätzlich misst die Ausführungsbeispielvorrichtung die Schwebungsobjektbestimmungsfortsetzungszeit in einem Fall, in dem ein dreidimensionales Objekt, das final zu dem vorhergehenden Berechnungszeitpunkt als das „bodenkontaktierende Objekt“ bestimmt wurde, vorübergehend zu dem momentanen Berechnungszeitpunkt als das „schwebende Objekt“ bestimmt wird. Wenn bestimmt wurde, dass die Schwebungsobjektbestimmungsfortsetzungszeit die Rücksetz-Zeit erreicht hat, bestimmt die Ausführungsbeispielvorrichtung, dass das dreidimensionale Objekt tatsächlich das schwebende Objekt ist und ändert ein finales Bestimmungsergebnis zu dem momentanen Berechnungszeitpunkt von dem „bodenkontaktierenden Objekt“ zu dem „schwebenden Objekt“ (setzt dieses zurück). Deshalb kann eine Möglichkeit, dass eine falsche Bestimmung, dass das dreidimensionale Objekt, das tatsächlich das schwebende Objekt ist, fortgesetzt wird, signifikant reduziert werden. Als ein Ergebnis kann eine Bestimmung, ob das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist, mit einer hohen Genauigkeit vorgenommen werden.
-
Die Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt bzw. Dreidimensionalobjektbodenkontaktbestimmungsvorrichtung gemäß dem vorliegenden Ausführungsbeispiel wurde beschrieben. Jedoch ist die vorliegende Erfindung nicht auf das vorstehend erwähnte Ausführungsbeispiel beschränkt und kann verschiedene Modifikationen innerhalb eines Umfangs der vorliegenden Erfindung annehmen.
-
Wenn z. B. ein dreidimensionales Objekt verfolgt wird, kann die Ausführungsbeispielvorrichtung Helligkeitsinformationen von allen dreidimensionalen Objekten, die zu den vorhergehenden Berechnungszeitpunkten erfasst wurden, speichern, und die Informationen mit jedem der dreidimensionalen Objekte verknüpfen. Außerdem kann die Ausführungsbeispielvorrichtung ein „Block Matching“ bzw. einen Blockabgleich bzw. eine Blockanpassung der Helligkeitsinformationen von jedem dreidimensionalen Objekt und der Helligkeitsinformationen des dreidimensionalen Objekts zu dem momentanen Berechnungszeitpunkt durchführen und kann ein „dreidimensionales Objekt, dessen Differenzgrad kleiner oder gleich einem vorbestimmten Differenzgradschwellenwert ist und minimale Helligkeitsinformationen aufweist“ als ein dreidimensionales Objekt entsprechend dem dreidimensionalen Objekt zu dem momentanen Berechnungszeitpunkt identifizieren (verfolgen).
-
Eine Bodenkontaktbestimmungsvorrichtung für ein dreidimensionales Objekt umfasst eine Dreidimensionalobjekterfassungseinrichtung zum Erfassen eines dreidimensionalen Objekts in einem aufgenommenen Bild, eine Einrichtung für eine vorübergehende Bestimmung zum Berechnen, basierend auf Parallaxeninformationen, einer Höhe eines unteren Endes von einer Straßenoberfläche zu einem unteren Ende des dreidimensionalen Objekts, zum vorübergehenden Bestimmen, dass das dreidimensionale Objekt ein bodenkontaktierendes Objekt ist, wenn die Höhe des unteren Endes kleiner oder gleich einem Höhenschwellenwert ist, und zum vorübergehenden Bestimmen, dass das dreidimensionale Objekt ein schwebendes Objekt ist, wenn die Höhe des unteren Endes den Höhenschwellenwert überschreitet, und eine Einrichtung für eine finale Bestimmung zum finalen Bestimmen, dass das dreidimensionale Objekt das bodenkontaktierende Objekt oder das schwebende Objekt ist. Die Einrichtung für eine finale Bestimmung bestimmt final zu dem momentanen Berechnungszeitpunkt, dass das dreidimensionale Objekt ein bodenkontaktierendes Objekt ist, wenn das dreidimensionale Objekt als ein bodenkontaktierendes Element in zumindest einer der vorübergehenden Bestimmung zu dem momentanen Berechnungszeitpunkt und der finalen Bestimmung zu dem vorhergehenden Berechnungszeitpunkt bestimmt wird.