JP7203769B2 - ボクセルベースのグランド平面推定およびオブジェクト区分化 - Google Patents

ボクセルベースのグランド平面推定およびオブジェクト区分化 Download PDF

Info

Publication number
JP7203769B2
JP7203769B2 JP2019567592A JP2019567592A JP7203769B2 JP 7203769 B2 JP7203769 B2 JP 7203769B2 JP 2019567592 A JP2019567592 A JP 2019567592A JP 2019567592 A JP2019567592 A JP 2019567592A JP 7203769 B2 JP7203769 B2 JP 7203769B2
Authority
JP
Japan
Prior art keywords
voxels
voxel
determining
cluster
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019567592A
Other languages
English (en)
Other versions
JP2020524330A (ja
Inventor
ロバート ドゥイヤール バートランド
ダス スブハシス
ワン ズン
ディミトロフ アンゲロフ ドラゴミール
ソル レヴィンソン ジェシー
Original Assignee
ズークス インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ズークス インコーポレイテッド filed Critical ズークス インコーポレイテッド
Publication of JP2020524330A publication Critical patent/JP2020524330A/ja
Priority to JP2022209911A priority Critical patent/JP7507844B2/ja
Application granted granted Critical
Publication of JP7203769B2 publication Critical patent/JP7203769B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/50Systems of measurement based on relative movement of target
    • G01S17/58Velocity or trajectory determination systems; Sense-of-movement determination systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/66Tracking systems using electromagnetic waves other than radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/66Radar-tracking systems; Analogous systems
    • G01S13/72Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar
    • G01S13/723Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar by using numerical data
    • G01S13/726Multiple target tracking
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/862Combination of radar systems with sonar systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/865Combination of radar systems with lidar systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/867Combination of radar systems with cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/86Combinations of sonar systems with lidar systems; Combinations of sonar systems with systems not using wave reflection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/88Sonar systems specially adapted for specific applications
    • G01S15/93Sonar systems specially adapted for specific applications for anti-collision purposes
    • G01S15/931Sonar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Traffic Control Systems (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Image Analysis (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Description

関連出願の相互参照
本願は、参照によって本明細書に完全に組み込まれる、2017年6月14日に出願された米国特許出願第15/622905号に基づく優先権を主張する。
画像区分化は、画像を異なるセグメントに区分化して、画像のより意味のある表現を提供するためにしばしば使用される、画像解析の1つのタイプである。一例として、画像は、画像内のオブジェクトを一意的に識別するために、区分化されてよい。画像区分化とは対照的に、3次元データの区分化は、区分化を困難にする特有の難題を提示することがある。
添付の図面を参照して、詳細な説明が行われる。図において、参照番号の左端の数字は、その参照番号が初めて出現した図を識別する。異なる図における同じ参照番号の使用は、類似または同一の構成要素または特徴を示す。
静的および/または動的オブジェクト区分化のための例示的なプロセスのフローチャートを示す。 本明細書において説明されるような、オブジェクト区分化を実施するための、例示的なアーキテクチャを示す。 ボクセル空間(voxel space)内に表されたグランド領域(ground region)を区分化するための、例示的なプロセスのフローチャートを示す。 グランドクラスタ(ground cluster)を拡張(grow)するために、ボクセル空間にわたって補間を行うための、例示的なプロセスのフローチャートを示す。 レイキャスティング(ray casting)および動的オブジェクト区分化と関連付けられた例示的な図を示す。 本明細書において説明されるような、オブジェクト区分化に基づいて自律車両のための軌道を生成するための、例示的なプロセスを示す。 経時的なボクセルデータの表現に基づいて、ボクセルマップ(voxel map)をクリアするための、例示的なプロセスを示す図である。 経時的なボクセルデータの表現に基づいて、オブジェクトが動的オブジェクトであると決定するための、例示的なプロセスを示す図である。 ボクセル表現に基づいたオブジェクトの区分化に基づいて、マップ生成および/またはセンサ較正を実行するための、例示的なプロセスを示す図である。 ボクセル表現に基づいたオブジェクトの区分化に基づいて、オブジェクトに注釈を施すための、例示的なプロセスを示す図である。 本明細書において説明される技法を実施するための、例示的なコンピュータシステムのブロック図である。
本開示は、ボクセル空間内に表された3次元データに対して区分化を実行して、環境内においてグランド平面(ground plane)、静的オブジェクト、および動的オブジェクトを決定するための、方法、装置、およびシステムについて説明する。例えば、3次元データセットは、自律車両用の知覚システムと併用されるLIDARシステムによって捕捉されたデータを含んでよい。LIDARシステムは、光エミッタと、光センサとを有してよく、光エミッタは、オブジェクトまたは面に向かって高度に集束された光を方向付ける1つまたは複数のレーザを含み、オブジェクトまたは面は、光を光センサに再度反射させる。LIDARシステムの測定結果は、LIDARシステムによって捕捉された、位置および/または距離に対応する(例えば、直交座標、極座標などの)座標を有する、3次元LIDARデータとして表されてよい。LIDARシステムによって捕捉されたデータは、ボクセル空間内に表されてよく、それは、3次元空間内において、体積要素(「ボクセル」)からなるグリッド内にデータを表すことを含んでよい。
いくつかの例においては、LIDARデータは、ボクセル空間内において、(例えば、データ点と関連付けられた個々の<x、y、z、範囲、時間などの>値を有する)未処理(raw)センサデータとして表されてよく、またはデータの統計的蓄積として表されてよい。例えば、LIDARデータは、ボクセル空間内に蓄積されてよく、個々のボクセルは、データ点の数、平均強度、個々のボクセルと関連付けられたLIDARデータの平均x値、個々のボクセルと関連付けられたLIDARデータの平均y値、個々のボクセルと関連付けられたLIDARデータの平均z値、およびボクセルと関連付けられたLIDARデータに基づいた共分散行列など、処理されたデータを含んでよい。
ボクセル空間内に表されたLIDARデータを用いる場合、処理は、グランド平面(例えば、自律車両が(drivable surface))と関連付けられたボクセルを決定することを含むことができ、それは、局所的にフラットなボクセルを決定することを含んでよい。いくつかの例においては、局所的にフラットなボクセルを決定することは、面をボクセル内のデータ(例えば、個々のLIDARデータ点)に適合させること(および/または共分散行列に対する計算(例えば、固有値分解(Eigenvalue decomposition)もしくは主成分分析(principle component analysis))を実行すること)と、面の法線ベクトルを決定することと、法線ベクトルが、自律車両の方位に対応することができる基準方向の閾値方向以内にあるかどうかを決定することとを含むことができる。いくつかの例においては、局所的にフラットなボクセルを決定することは、ボクセル空間内においてメッシュを生成することと、メッシュがボクセルの少なくとも一部を占有すると決定することと、ボクセルと関連付けられたメッシュの面法線ベクトルを決定することと、面法線が基準方向の閾値方向以内にあるかどうかを決定することとを含む、マーチングキューブタイプのアルゴリズムを含むことができる。局所的にフラットなボクセルが決定された後、領域拡張などのクラスタリング技法が、フラットまたは運転可能な面を表すグランドボクセルまたはグランド平面を識別するために使用されてもよい。さらに、データ内にギャップが存在して、ボクセル空間内に多数のパッチまたはクラスタをもたらすことができるので、処理は、隣接クラスタがグランド平面として含まれるべきかどうかを決定するために、隣接クラスタ内のボクセル内の様々な点の間を補間することを含むことができる。グランド平面を識別した後、グランド平面は、ボクセル空間から除去されること、または除外されることができ、残りのデータに対して、オペレーションが実行されることができる。
領域拡張などのクラスタリング技法が、残りのボクセルに適用されて、ボクセル空間内に表されたオブジェクトを決定することができる。個々のオブジェクトは、隣接ボクセルをグループ化することによって識別されることができ、各オブジェクトは、一意的なオブジェクト識別子と関連付けられる。非限定的な例として、単一のオブジェクトと関連付けられるすべてのLIDAR点は、すべて、同じオブジェクト識別子を有してよく、一方、異なるオブジェクトと関連付けられるLIDAR点は、異なるオブジェクト識別子を有してよい。いくつかの例においては、オブジェクト識別子は、ボクセルと関連付けられ、および/またはLIDARデータに伝搬されてよい。LIDARデータは、経時的に捕捉または受信されるので、静的オブジェクトと動的オブジェクトとを区別するために、ボクセルの占有時間が、評価されることができる。例えば、壁などの背景オブジェクトの近くを歩く人など、空間内において接近した関係にあるオブジェクトを区別して、静的オブジェクトと動的オブジェクトとを区別するために、レイキャスティングが使用されることができる。さらに、オブジェクトの運動を示してよい、第1の時間に占有されていたボクセルが、第2の後続する時間に占有されていないときを、およびそれとは反対のときを決定するために、レイキャスティングが使用されることができる。データは、経時的に蓄積されるので、マップをクリアするために、またはオブジェクトの解像度を高めるために、やはり、レイキャスティング技法が使用されてよい。動的オブジェクトであるオブジェクトは、さらに、動的オブジェクト識別子を用いてタグ付けされて、またはそれと関連付けられてよい。
処理が実行され、オブジェクトが識別されるにつれて、静的および/または動的オブジェクトのリストが、自律車両用の軌道を生成するための基礎として、トラッキングシステムおよび/またはプランニングシステムに提供されてよい。さらに、例えば、他のセンサが時間につれてドリフトするとき、車両の決定された位置の正確性を高めるために、自律車両の1つまたは複数のセンサを較正するように、オペレーションが拡張されることができる。さらに、LIDARデータが捕捉され、局所マップを生成するために使用されるとき、全体マップに関して自律車両を位置特定するために、LIDARデータが使用されることができる。オペレーションは、局所マップと全体マップとの間の差を決定することを含むことができ、差は、中央サーバにアップロードされて、全体マップに組み込まれること、および/または他の車両に配信することができる。
いくつかの例においては、LIDARデータが捕捉された後、および/またはデータが、中央サーバなどのコンピューティングデバイスにダウンロードされた、もしくは他の方法で提供された後、マップを生成し、既存のマップをクリーンアップするために、オブジェクトの区分化が使用されることができ、および/または後続する注釈オペレーションのために、それが使用されることができる。例えば、識別された静的オブジェクトは、自律車両のナビゲーションを支援するために、全体マップに組み込まれることができる。別の例においては、レイキャスティングを使用して動的オブジェクトを全体マップから除去し、全体マップ内のオブジェクトを純化することによって、全体マップをクリーンアップするために、捕捉されたデータが使用されることができる。別の例においては、静止オブジェクト(例えば、静的オブジェクト)であるが、非永続的なオブジェクト(例えば、駐車中の車両)について、そのような非永続的オブジェクトを全体マップから除去して、全体マップが環境の静的オブジェクトを反映することをさらに確かにするために、区分化情報が使用されることができる。別の例においては、静的および/または動的オブジェクトが、人手のまたは自動注釈サービスに提供されることができ、それは、オブジェクトの分類を実行して、例えば、機械学習のためのトレーニングデータセットを生成してよい。ボクセル区分化技法の上記および他のオペレーションおよび応用が、本明細書において論じられる。
本明細書において説明される区分化技法は、オブジェクトトラッキングおよび/または自律車両のナビゲーションのために、データを効率的に区分化するためのフレームワークを提供することによって、コンピューティングデバイスの機能を改善することができる。いくつかの例においては、LIDARデータなどの複雑な多次元データは、データの効率的な評価および処理を考慮して、データを区分化することができる、ボクセル空間内に表されることができる。いくつかの例においては、ボクセル空間は、処理のためのデータの量を減らした、疎らなボクセル空間を表すことができる。いくつかの例においては、技法は、例えば、軌道生成のために、グランド平面を迅速に区分化するための、ロバストなプロセスを提供する。グランド平面と関連付けられた情報は、省かれること、または除外されることができ、減らされたデータセットに対して、オブジェクト識別が実行されることができ、オペレーションのために必要とされるメモリおよび処理の量を減らす。静的および動的オブジェクトは、例えば、動的オブジェクトのトラッキングオペレーションに集中することによって処理をさらに単純化した、ロバストなクラスタリング技法を使用して識別されることができる。さらに、本明細書において説明されるオペレーションは、オンラインおよびオフライン状況において利用されることができ、様々な状況において区分化データを利用するための、柔軟なフレームワークを提供する。いくつかの例においては、自律車両の軌道を生成する際に、より迅速および/またはより正確な区分化が利用されてよく、それが、自律車両の乗員の安全性を改善してよい。いくつかの例においては、本明細書において説明されるオペレーションは、メモリ要件を減らしてよく、またはデータを効率的に単純化するようにボクセル化されたデータを演算することによって、処理の量を減らしてよい。コンピュータの機能に対する上記および他の改善が、本明細書において論じられる。
本明細書において説明される方法、装置、およびシステムは、数々の方法で実施されることができる。例示的な実施が、下記の図を参照して、以下で提供される。LIDARデータとの関連において、および/または自律車両との関連において説明されるが、本明細書において説明される方法、装置、およびシステムは、マシンビジョンを利用する様々なシステムに適用されることができる。さらに、3次元LIDARデータとの関連において説明されるが、本明細書において説明される方法、装置、およびシステムは、3次元データに限定されず、またLIDARデータに限定されない。一例においては、方法、装置、およびシステムは、RADARデータを用いる2次元状況において利用されてよく、または水平LIDARデータとともに使用されてよい。例えば、方法、装置、およびシステムは、製造組立ライン状況において、または航空測量状況において利用されてよい。さらに、データセットは、立体視カメラ、深度カメラ、RADARセンサ、音響センサなどからのデータを含んでよく、任意の数の次元に対応してよい、任意の数のレイヤまたはチャネルを含んでよい。加えて、本明細書において説明される技法は、(例えば、センサを使用して捕捉された)実データ、(例えば、シミュレータによって生成された)シミュレートされたデータ、または2つの任意の組み合わせとともに使用されてよい。
図1は、ボクセル空間におけるLIDARデータセットを表し、グランドと関連付けられたボクセルを決定し、静的および動的オブジェクトを決定し、後続する処理のために静的および/または動的オブジェクトを利用するための例示的なプロセス100のフローチャートを示している。
オペレーション102において、プロセスは、LIDARデータセットを受信することを含むことができる。図1においては、LIDARデータセットとして示されているが、そのようなデータセットは、上で詳細に説明されたような任意の1つまたは複数のセンサからの任意の形態の深度データを含んでよい。いくつかの例においては、オペレーション102は、自律車両の知覚システムとの関連において動作する複数のLIDARセンサから、複数のLIDARデータセットを受信することを含んでよい。いくつかの例においては、オペレーション102は、2つ以上のLIDARセンサからのデータを組み合わせて、または融合させて、(「メタスピン(meta spin)」とも呼ばれる)単一のLIDARデータセットにすることを含んでよい。いくつかの例においては、オペレーション102は、時間の期間にわたって、LIDARデータの一部を処理のために抽出することを含んでよい。いくつかの例においては、オペレーション102は、RADARデータ(または他のセンサデータ)を受信し、RADARデータをLIDARデータと関連付けて、環境のより詳細な表現を生成することを含んでよい。LIDARデータセットの例は、例104において示されており、それは、自動車、トラック、道路、ビルディング、バイク、歩行者など、都市環境における様々なオブジェクトと関連付けられた、LIDARデータ(例えば、点群)を含んでよい。
オペレーション106において、プロセスは、LIDARデータセットをボクセル空間と関連付けることを含むことができる。例108は、各次元(例えば、x、y、z)において5つのボクセルを含むボクセル空間を示しているが、ボクセル空間には、任意の数のボクセルが含まれてよい。いくつかの例においては、ボクセル空間は、LIDARデータセットの起点または仮想起点の周りのエリアなど、物理的環境に対応してよい。例えば、ボクセル空間は、幅100メートル、長さ100メートル、高さ20メートルのエリアを表してよい。さらに、ボクセル空間内の各ボクセル(例えば、ボクセル110)は、各次元が25センチメートルなどの、物理的エリアを表してよい。本開示との関連において理解されてよいように、ボクセル空間は、環境の任意のエリアを表してよく、個々のボクセルも、同様に、任意の体積を表してよい。いくつかの例においては、ボクセルは、ボクセル空間の全体を通して均一のサイズであってよいが、いくつかの例においては、ボクセルの体積は、データの起点に関するボクセルの位置に基づいて、変化してよい。例えば、LIDARセンサからの距離が増大するにつれて、LIDARデータの密度は減少してよいので、ボクセル空間内のボクセルのサイズは、ボクセルからLIDARセンサ(または複数のLIDARセンサを代表する起点)までの距離に比例して、増大してよい。
一例においては、データは、経時的に蓄積されるので、オペレーション106は、メタスピン(例えば、LIDARデータセット)をボクセル空間と合わせることを含んでよい。例えば、オペレーション106は、メタスピンをボクセル空間に合わせるために、メタスピンに適用する変換を決定することを含んでよい。特に、オペレーション106は、観測された点の、データの既存の蓄積に適合させられた平面までの距離を決定することによって、捕捉されたLIDARデータを、ボクセル空間内に蓄積されたデータと照合することを含んでよい。いくつかの例においては、この変換は、全体マップ上の位置に関する車両の位置の誤差を減らすことができる。
一例においては、ボクセル空間は、空の空間として初期化されてよく、LIDARデータは、それが捕捉されたときに、ボクセル空間に追加されてよく、別の例においては、ボクセル空間は、以前に捕捉されたデータからなる全体マップを表すデータを用いて、初期化されてよい。全体マップデータを使用するケースにおいては、オペレーションは、局所的に捕捉されたLIDARデータを全体データと比較して、全体マップ空間内において自律車両を位置特定することを含んでよい。
いくつかの例においては、オペレーション106は、点群の個々の点を個々のボクセルにマッピングすることを含むことができる。いくつかの例においては、オペレーション106は、例えば、LIDARデータが、自律車両など、動いているプラットフォームによって捕捉された場合に、例えば、LIDARデータを静止した基準点に変換するために、LIDARデータと関連付けられた動きベクトルを減算することを含むことができる。すなわち、いくつかの例においては、LIDARデータは、(例えば、動いている車両に関して固定されたボクセル空間とは対照的に)例えば、全体マップに関して固定されたボクセル空間と関連付けられてよい。いくつかの例においては、オペレーション106は、疎らなボクセル空間を生成するために、データを含まない、または閾値数を下回る数の点しか含まないボクセルを廃棄すること、または省くことを含むことができる。さらに、いくつかの例においては、オペレーション106は、例えば、ボクセル空間に関する車両の位置と関連付けられたいずれの誤差も補償または調整するために、車両の体勢(例えば、車両の方位)および関連付けられたLIDARデータをボクセルマップと合わせることを含むことができる。
さらに、いくつかの例においては、オペレーション106は、LIDARデータを統計的に蓄積し、それが個々のボクセルに追加されるときに、データを処理することを含むことができる。例えば、個々のボクセルは、データ点の数、平均強度、データの平均x値、データの平均y値、データの平均z値、および/または個々のボクセルと関連付けられたLIDARデータに基づいた共分散行列を表すデータを含んでよい。したがって、いくつかの例においては、個々のボクセルと関連付けられたデータは、一部には、システムの処理性能を改善するための処理されたデータを表してよい。
オペレーション112において、プロセスは、グランドと関連付けられた1つまたは複数のボクセルを決定することを含むことができる。いくつかの例においては、グランドは、自律車両によって運転可能な面に対応してよい。例114においては、LIDARデータ116を含む単一のボクセル、例えば、ボクセル110が、示されている。上で論じられたように、いくつかの例においては、LIDARデータ116は、データ点の数、平均強度、平均x値、平均y値、平均z値、およびLIDARデータに基づいた共分散行列を含む、データの統計的蓄積を表してよい。そのような例においては、LIDARデータ116は、図1においては、説明の目的で、多数の点として示されているが、各ボクセル110は、それらの点の統計的蓄積だけを記憶してよい。いくつかの例においては、オペレーション112は、平面118をLIDARデータ116に適合させることを含むことができ、それは、(例えば、固有値分解または主成分分析を共分散行列に対して実行することによって、例えば、共分散行列に少なくとも部分的に基づいて)LIDARデータ116の平面近似を決定することを含んでよい。例えば、オペレーション112は、平面118をデータ116に適合させるために、固有値分解または主成分分析をボクセル110内に表されたLIDARデータ116に対して実行することを含んでよい。いくつかの例においては、オペレーション112は、ボクセル110内に表されたLIDARデータ116の平面近似を、少なくとも部分的に、ボクセル110の近隣ボクセルと関連付けられたデータ上において決定することを含んでよい。オペレーション112は、平面118と関連付けられた法線ベクトル120を決定することも含むことができる。さらに、オペレーション112は、自律車両の方位に対応してよい、基準方向を決定することを含むことができ、法線ベクトル120が、基準方向に関して、閾値量または方位内にあるかどうかを決定することを含んでよい。
非限定的な例として、オペレーション112においてグランド平面を決定することは、共通の座標系において表現された、そのようなLIDARシステムを搭載した装置の高さ次元(例えば、基準方向)におけるベクトルと、法線ベクトル120との間の内積を決定することを含んでよい。そのような例においては、15度の閾値を超える内積は、ボクセル110がグランドを含まないことを示してよい。
さらに、オペレーション112は、グランドに対応する面を拡張するために、局所的にフラットなボクセルであると決定されたボクセルをクラスタ化することを含んでよい。グランドを決定する追加の詳細が、図2、図3、および図4との関連において提供され、本開示の全体を通しても提供される。
オペレーション122において、プロセスは、オブジェクトと関連付けられたボクセルを決定することを含むことができる。いくつかの例においては、オペレーション112に続いて、オペレーション122は、グランドの表示、グランド平面、および/またはグランドに対応するボクセルを受信することと、グランドと関連付けられたボクセルのサブセットを除去することとを含むことができる。この除去オペレーションの後、ボクセル空間内に残存するボクセルは、オブジェクトを表してよい。例124は、例108に示されたボクセル空間に対応してよい、ボクセル空間108’の上面図表現を示している。いくつかの例においては、ボクセル空間108’は、環境内のオブジェクトを表すLIDARデータ126、128を含む。いくつかの例においては、オペレーション122は、LIDARデータ点126がオブジェクト130と関連付けられると決定し、LIDARデータ点128がオブジェクト132と関連付けられると決定するための、クラスタリングを含むことができる。いくつかの例においては、オペレーション122は、閾値を下回る数のボクセルと関連付けられたオブジェクトを除去すること、またはさもなければ、オブジェクトと関連付けられたボクセルの数、個々のボクセルと関連付けられたLIDARデータ点の数、もしくは2つの任意の組み合わせに少なくとも部分的に基づいて、オブジェクトを分類することを含んでよい。いくつかの例においては、オペレーション122は、他の占有されたボクセルに隣接する占有されたボクセルに少なくとも部分的に基づいて、オブジェクトを決定してよい。理解されてよいように、グランドをボクセル空間108’から除去することによって、オブジェクト130、132は、グランドボクセルによって接続されずに隔離されてよく、オブジェクト130、132の効率的な識別および区分化をもたらす。
オペレーション134において、プロセスは、環境内の動的オブジェクトを決定することを含んでよい。例えば、LIDARデータは、経時的に蓄積されるので、オペレーション134は、第1の時間に占有されていないボクセルを決定し、そのボクセルが第2の時間に占有されていると決定することによって、動きを決定することを含んでよい。例136においては、オブジェクト138は、第1の時間に対応するT1において、ボクセル空間内に表されることができ、オブジェクト138’は、第1の時間と異なる、第1の時間に後続する時間に対応してよいT2において、ボクセル空間内に表されることができる。したがって、オペレーション134は、オブジェクト138が、(例えば、オブジェクト138’として)時間につれて動いており、動的オブジェクトに対応してよいことを決定するために、ボクセルの占有を経時的にトラッキングすることを含んでよい。
さらに、オペレーション134は、第1の時間T1において占有されていたボクセルが、第2の時間T2において占有されていないと決定するために、レイキャスティングオペレーションを含んでよい。例えば、LIDARセンサ140は、オブジェクト138を識別および区分化するために、ベクトル142によって表されるLIDARデータを捕捉してよい。その後、第2の時間T2において、LIDARセンサ140は、例えば、壁またはビルディングに対応してよいオブジェクト146を識別および区分化するために、ベクトル144として表されるLIDARデータを捕捉してよい。いくつかの例においては、図5との関連において論じられるように、例えば、オペレーション134は、LIDARセンサ140とオブジェクト146との間のボクセルが占有されていないことを決定するために、ベクトル144が通過するボクセルを決定することを含んでよい。いくつかの例においては、これらのレイキャスティングオペレーションは、例えば、オブジェクト138が動的オブジェクトであると決定するために、使用されることができる。さらに、例136において示されるレイキャスティングオペレーションは、経時的に蓄積するLIDARデータを表すマップをクリアするために、使用されることができ、それは、オブジェクトトラッキング、軌道プランニングなどの正確性を改善することができる。別の例として、レイキャスティングオペレーションは、局所的に捕捉されたLIDARデータと、以前に捕捉されたLIDARデータを表す全体マップとの間の差を決定するために、使用されることができる。
オペレーション148において、プロセスは、トラッキングおよび/または軌道プランニングのために、静的および/または動的オブジェクトのリストを提供することを含んでよい。例えば、プロセス100は、グランド、静的オブジェクト、および/または動的オブジェクトに対応する、環境の部分を識別および区分化してよい。いくつかの例においては、動的オブジェクトのリストは、各動的オブジェクトの軌道を経時的にトラッキングおよび/または予測するために、トラッキングシステムに提供されることができる。いくつかの例においては、静的オブジェクトのリスト、および/またはグランドの識別は、運転可能な面を辿り、本明細書において識別される静的オブジェクトを回避し、またはさもなければ考慮する、自律車両のための軌道を生成するために、プランナシステムに提供されてよい。上記および他のオペレーションは、本明細書において説明される識別および区分化オペレーションの一部として、可能である。
図2は、本明細書において説明されるような、オブジェクト識別を実施するための例示的なアーキテクチャを示している。例えば、アーキテクチャ200は、本明細書において説明されるシステム、方法、および装置の態様を実施するための、様々なハードウェアおよび/またはソフトウェアを含む、1つまたは複数のコンピュータシステム202を含んでよい。例えば、コンピュータシステム202は、LIDARモジュール204と、カメラモジュール206と、RADARモジュール208と、SONARモジュール210と、ボクセル空間モジュール212と、グランド決定モジュール214と、クラスタリングモジュール216と、補間モジュール218と、オブジェクト決定モジュール220と、動的オブジェクト決定モジュール222と、レイキャスティングモジュール224と、トラッキングモジュール226と、プランニングモジュール228と、センサ較正モジュール230と、注釈モジュール232とを含んでよい。
いくつかの例においては、コンピュータシステム202は、自律車両内において具体化されてよい。いくつかの例においては、コンピュータシステム202は、自律車両用の知覚およびプランニング機能性を提供してよい。一般に、コンピュータシステム202は、LIDAR知覚と、RADAR知覚と、ビジョン(カメラ)知覚と、音響知覚と、区分化および分類と、トラッキングおよび融合と、予測/プランニングとを含んでよい。
LIDARモジュール204を参照すると、LIDARモジュール204は、本明細書において説明されるように、区分化のためにLIDARデータを捕捉する、1つまたは複数のLIDARセンサを含んでよい。図2においては、LIDARデータとして示されているが、そのようなLIDARモジュール204は、本明細書において詳細に説明されるような、いずれか1つまたは複数の深度センサを備えてよい。いくつかの例においては、LIDARモジュール204は、複数のLIDARセンサからのLIDARデータを組み合わせて、または合成して、複数のLIDARセンサに基づいたLIDARデータのことを指してよい、LIDARデータのメタスピンを生成するための機能性を含んでよい。LIDARデータのメタスピンの場合、LIDARモジュール204は、メタスピンデータの仮想起点(virtual origin)(例えば、すべてのLIDARセンサに共通する基準座標系)を決定し、1つまたは複数のLIDARセンサの各々からのLIDARデータが、仮想起点に関して表現されるように、データ変換を実行するための機能性を含んでよい。本開示との関連において理解されてよいように、LIDARモジュール204は、データを捕捉してよく、後続する処理のために、データセットをコンピュータシステム202に送信してよい。
カメラモジュール206は、画像区分化および/または分類のためにビジョンデータを捕捉する、1つまたは複数のカメラセンサを含んでよい。カメラモジュール206は、任意の数およびタイプのカメラセンサを含んでよい。例えば、カメラモジュール206は、任意のカラーカメラ、モノクロームカメラ、深度カメラ、RGB-Dカメラ、ステレオカメラ、赤外線(IR)カメラ、紫外線(UV)カメラなどを含んでよい。本開示との関連において理解されてよいように、カメラモジュール206は、データを捕捉してよく、後続する処理のために、データセットをコンピュータシステム202に送信してよい。例えば、カメラモジュール206からのデータは、マルチチャネル画像の1つまたは複数のチャネルとして含まれてよい。
RADARモジュール208は、環境内のオブジェクトの範囲、角度、および/または速度を捕捉する、1つまたは複数のRADARセンサを含んでよい。本開示との関連において理解されてよいように、RADARモジュール208は、データを捕捉してよく、後続する処理のために、データセットをコンピュータシステム202に送信してよい。例えば、RADARモジュール208からのデータは、マルチチャネル画像の1つまたは複数のチャネルとして含まれてよい。
SONARモジュール210は、環境内のオブジェクトの音響情報を捕捉するための、1つまたは複数のスピーカまたは音エミッタと、(マイクロフォンアレイなどの)1つまたは複数のマイクロフォンとを含んでよい。加えて、または代わりに、そのようなSONARモジュール210は、様々な超音波トランスデューサを備えてよい。例えば、SONARモジュール210は、音のパルスを発してよく、エコーを聴き取って、環境内のオブジェクトと関連付けられた位置および/または動き情報を決定してよい。本開示との関連において理解されてよいように、SONARモジュール210は、データを捕捉してよく、後続する処理のために、データセットをコンピュータシステム202に送信してよい。例えば、SONARモジュール210からのデータは、オブジェクトをより正確に区分化するために、および/またはオブジェクトについての情報を決定するために、LIDARモジュール204からのデータと融合されてよい。
コンピュータシステム202は、例えば、自律車両における使用に適した、任意の数またはタイプの他のセンサを含んでよい。様々なセンサは、超音波トランスデューサ、ホイールエンコーダ、マイクロフォン、慣性測定ユニット(IMU)、加速度計、ジャイロスコープ、磁力計、温度センサ、湿度センサ、光センサ、全地球測位システム(GPS)センサなどを含んでよいが、それらに限定されない。
いくつかの例においては、LIDARモジュール204、カメラモジュール206、RADARモジュール208、および/またはSONARモジュール210は、改善された区分化のための、データの組み合わせおよび/または合成を行うために、1つまたは複数のデータセットをコンピュータシステム202に提供してよい。
コンピュータシステム202は、一部はテストにおける使用のために、コンピュータシミュレーションアルゴリズムによって生成された、シミュレートされたデータをさらに含んでよい。いくつかの例においては、シミュレートされたデータは、カメラデータ、LIDARデータ、RADARデータ、SONARデータ、慣性データ、GPSデータなど、任意のタイプのシミュレートされたデータを含んでよい。いくつかの例においては、コンピュータシステム202は、本明細書において説明されるように、オペレーションを検証するために、および/または機械学習アルゴリズムをトレーニングするために、シミュレートされたデータに対する本明細書において説明される変換オペレーションを変更し、変換し、および/または実行することができる。
ボクセル空間モジュール212は、マップデータをボクセル空間に変換するための機能性を含んでよい。例えば、ボクセル空間モジュール212は、LIDARデータ、カメラデータ、RADARデータ、SONARデータなどを受信し、個々のデータ点を、環境内の3次元空間を表すボクセルにマップし、変換し、または関連付けることができる。いくつかの例においては、ボクセル空間モジュール212は、ボクセル空間の長さ、幅、および高さを含む、ボクセル空間の次元を定義することができる。さらに、ボクセル空間モジュール212は、個々のボクセルのサイズを決定してよい。いくつかの例においては、ボクセルは、ボクセル空間の全体を通して均一のサイズおよび形状であってよく、一方、いくつかの例においては、ボクセルのサイズおよび/または密度は、ボクセル空間内の相対位置に基づいて、変化してよい。例えば、ボクセルのサイズは、ボクセル空間の起点または中心からのボクセルの距離に比例して、増大または減少してよい。加えて、または代わりに、そのようなボクセル空間モジュール212は、仮想起点とボクセル空間の起点との間の変換を含んでよい。いくつかの例においては、ボクセル空間モジュール212は、疎らなボクセル空間を生成するための機能性を含んでよく、それは、データを含まない、またはデータ閾値を下回る量のデータしか含まないボクセルを廃棄することを含んでよい。そのような例においては、ボクセル空間は、オクトマップ、またはボクセルハッシングなどを含んでよい。いくつかの例においては、ボクセル空間モジュール212は、データを、それがボクセル空間にマップされるときにフィルタリングすることによって、データ内のノイズの量を低減させるための機能性を含んでよい。例えば、フィルタリングは、ボクセル当たりのデータの閾値量(例えば、ボクセルと関連付けられたLIDARデータ点の数)を下回るデータ、または事前決定されたボクセルの数(例えば、近接ボクセルの数と関連付けられたLIDARデータ点の数)を超えるデータを除去することを含んでよい。いくつかの例においては、ボクセル空間モジュール212は、データが経時的に集められたときに、および/またはボクセル空間内を運行する自律車両に応答して、ボクセル空間を更新することができる。例えば、ボクセル空間モジュール212は、自律車両が環境内を運行するときに、ボクセル空間にデータを追加してよく、および/またはボクセル空間からデータを廃棄してよい。
いくつかの例においては、ボクセル空間モジュール212は、ボクセル空間を空の空間として初期化することができ、LIDARデータが経時的に捕捉されるにつれて、オブジェクトの表現を構築することができる。他の例においては、ボクセル空間モジュール212は、局所的に捕捉されたLIDARデータが、全体マップ空間内において自律車両を位置特定するために使用されることができ、全体マップのボクセルをクリーンアップする、またはクリアするために使用されることができるように、全体マップデータを用いてボクセル空間を初期化することができる。
グランド決定モジュール214は、ボクセル空間の個々のボクセルを解析して、ボクセル空間内において環境と関連付けられたグランドを決定するための機能性を含んでよい。例えば、グランド決定モジュール214は、特定のボクセルと関連付けられたデータを代表する平面を推定し、その平面の法線ベクトルを決定することによって、局所的にフラットなボクセルを決定してよい。例えば、グランド決定モジュール214は、ボクセルに対して主成分分析を実行して、ボクセルと関連付けられたデータと関連付けられた最小主成分を決定してよい。いくつかの例においては、主成分分析の場合、最小固有ベクトルは、平面の法線ベクトルに対応してよく、一方、固有ベクトルと関連付けられた固有値は、最小固有ベクトルの方向における特定のボクセルと関連付けられたデータの拡散のスプレッドまたはレベルに対応してよい。別の例として、限定することなく、そのような面法線決定は、ボクセル内の点PからPの最も近い2つの近隣点までの方向を示すベクトルの外積の法線を計算することによって行われてよい。別の例として、限定することなく、そのような面法線決定は、個々のボクセルと関連付けられた共分散行列に対する固有値分解を実行することによって、行われてよい。いくつかの例においては、グランド決定モジュール214は、近隣ボクセルと関連付けられた値に基づいて、ターゲットボクセルと関連付けられた面を決定することによって、ターゲットボクセルが局所的にフラットなボクセルであるかどうかを決定してよい。さらに、いくつかの例においては、グランド決定モジュール214は、面を生成する少なくとも3つの点を含む三角形を決定するために、マーチングキューブタイプのアルゴリズムを利用して、ボクセルと関連付けられた平均点値に基づいてメッシュを生成してよい。さらに、グランド決定モジュール214は、自律車両の方向または方位に対応してよい、基準方位を受信してよい。グランド決定モジュール214は、上で説明されたように、ボクセルと関連付けられた法線ベクトルが、基準方位の閾値量内にある場合、ボクセルは局所的にフラットなボクセルであると決定してよい。
クラスタリングモジュール216は、LIDARデータの起点に最も近い面から開始して、または自律車両の下の面から開始して、グランド領域を拡張するために、グランド決定モジュール214と連携して動作してよい。すなわち、自律車両に近接したボクセルが、クラスタリングモジュール216のためのシードボクセル(seed voxel)として使用されてよい。クラスタリングモジュール216は、隣接する局所的にフラットなボクセルが同じクラスタに属すると決定してよく、グランド平面を取り囲むように、領域を拡張してよい。さらに、クラスタリングモジュール216は、ボクセルが特定のオブジェクトと関連付けられていると決定するために、以下で論じられるオブジェクト決定モジュール220と連携して動作してよい。クラスタリングモジュール216は、領域拡張、階層的クラスタリング、分割クラスタリング(partitional clustering)、平方誤差クラスタリング、グラフ理論クラスタリング、混合-分解クラスタリング(mixture-resolving clustering)、平均シーククラスタリング(mean-seeking clustering)、k平均クラスタリング、Nカットクラスタリング(N-cut clustering)、近接クラスタリングなどを含むが、それらに限定されない、様々なクラスタリングアルゴリズムを利用してよい。
補間モジュール218は、様々なクラスタを一緒に組み合わせて、または関連付けて、グランド平面を拡大するために、グランド決定モジュール214および/またはクラスタリングモジュール216と連携して動作してよい。例えば、局所的にフラットなボクセルは、自律車両と関連付けられたグランド領域を決定するとき、単一のクラスタを形成しなくてよく、その場合、補間モジュール218は、グランド平面クラスタを拡張するために、点の間を補間して、勾配が閾値勾配を上回るか、それとも下回るかを決定してよい。グランド決定モジュール214、クラスタリングモジュール216、および補間モジュール218の追加の態様が、図3および図4との関連において以下で提供され、本開示の全体を通しても提供される。
オブジェクト決定モジュール220は、ボクセル空間内に表されたオブジェクトを決定するための機能性を含んでよい。例えば、オブジェクト決定モジュール220は、グランド決定モジュール214からグランド平面の表示を受信し、および/または局所的にフラットなボクセルのいくつかもしくはすべての表示を受信してよく、グランドと関連付けられたボクセルをボクセル空間から除去してよい。次に、オブジェクト決定モジュール220は、残存するボクセルを解析して、ボクセルの接続性に基づいてオブジェクトを決定してよい。例えば、オブジェクト決定モジュール220は、隣接ボクセルが同じオブジェクトの一部であると見なされるべきであると決定することによって、オブジェクトに対応するボクセル空間内の領域を拡張するために、クラスタリングモジュール216と連携して動作してよい。オブジェクト決定モジュール220は、特定のオブジェクトと関連付けられたすべてのボクセルに、オブジェクト識別子を割り当ててよく、いくつかの例においては、オブジェクト決定モジュール220によって割り当てられた、または決定されたオブジェクト識別子は、特定のオブジェクトを含むボクセルと関連付けられたLIDARデータに伝搬されてよい。オブジェクト決定モジュール220の追加の態様が、図3との関連において以下で提供され、本開示の全体を通しても提供される。
動的オブジェクト決定モジュール222は、静的オブジェクトと動的オブジェクトとを区別するための機能性を含んでよい。例えば、動的オブジェクト決定モジュール222は、データを経時的に蓄積して、第1の時間におけるボクセルを第2の時間におけるボクセルと比較して、ボクセルの占有が時間につれて変化したかどうかを決定することによって、オブジェクトの動きを決定してよい。例えば、第1の時間にオブジェクトによって占有されていたボクセルが、第2の時間にそのオブジェクトによって占有されていない場合、動的オブジェクト決定モジュール222は、オブジェクトが動的オブジェクトであると決定することができる。どのボクセルが時間につれて占有されるようになり、または占有されなくなるかに基づいて、動的オブジェクト決定モジュール222は、運動のスピードおよび方向など、動的オブジェクトの運動を決定することができる。いくつかの例においては、動的オブジェクト決定モジュール222は、動的オブジェクトの運動を決定するための表示を提供することができる。動的オブジェクト決定モジュール222の追加の態様が、図5との関連において以下で提供され、本開示の全体を通しても提供される。
レイキャスティングモジュール224は、静的オブジェクトと動的オブジェクトとを区別するために、動的オブジェクト決定モジュール222と連携して動作してよい。さらに、レイキャスティングモジュール224は、データがボクセル空間内に蓄積されるので、ボクセル空間を経時的にクリアするための機能性を含んでよい。例えば、オブジェクトは、時間につれてボクセル空間の全体にわたって動くので、動的オブジェクトによって占有されるボクセルは、時間につれてデータで満たされてよい。しかしながら、レイキャスティングモジュール224は、LIDARデータと関連付けられた光線の経路を分析して、例えば、光線がその中を伝わるボクセルがクリアされるべきであると決定してよい。したがって、レイキャスティングモジュール224は、第1の時間に占有されていたボクセルが第2の時間に占有されていないとの決定を行うための追加の機能性を提供してよく、それは、例えば、オブジェクトが動的オブジェクトであると決定するために、様々なモジュールに提供されてよい。いくつかの例においては、ボクセル空間は、(例えば、占有されているボクセルを表し、占有されていないボクセルを無視する)疎方式で、または(例えば、廃棄ボクセルのない)密方式で表されてよい。いくつかの例においては、レイキャスティングモジュール224は、密方式においては、レイキャスティング情報を記憶してよく、すなわち、(例えば、ボクセルが、関連付けられたLIDARデータを有さないために)疎ボクセル表現において存在しないボクセルが、そのようなボクセルと関連付けられたレイキャスティング情報を有することができる。例えば、関連付けられたLIDARデータを有さないボクセルは、それにもかかわらず、ボクセルと関連付けられたレイキャスティング情報を含むために、密ボクセル空間において表されることができる。いくつかの例においては、密ボクセル表現は、本明細書において論じられるレイキャスティングオペレーションに少なくとも部分的に応答して、ボクセルが占有されていないという積極的な情報をボクセルと関連付けてよい。さらに、LIDARデータが個々のボクセル内に蓄積されるので、例えば、それらが静的オブジェクトで占有されているという消極的な情報が、個々のボクセルと関連付けられてよい。データが経時的に蓄積されるので、情報が集約されて、一部は、例えば、ボクセルが空き空間を表すか、それとも静的オブジェクトを表すかを決定することができる。さらに、レイキャスティングモジュール224は、局所的に捕捉されたLIDARデータを全体マップデータと比較することによって、全体マップをクリーンアップするために使用されてよい。レイキャスティングモジュール224の追加の態様が、図5との関連において以下で提供され、本開示の全体を通しても提供される。
トラッキングモジュール226は、オブジェクトをトラッキングするために、1つまたは複数の動的オブジェクトの表示を受信し、追加の処理を実行するための機能性を含んでよい。例えば、トラッキングモジュール226は、動的オブジェクトの速度を決定してよく、および/または経時的に動的オブジェクトの軌道を決定し、記憶してよい。いくつかの例においては、トラッキングモジュール226は、オブジェクトの以前の動きに基づいて、トラッキングされるオブジェクトの経路を予測してよい、予測アルゴリズムを含んでよい。
プランニングモジュール228は、区分化されたデータ、ならびに/またはグランド平面、静的オブジェクト、および/もしくは動的オブジェクトの表示を受信して、自律車両の軌道を決定するための機能性を含んでよい。例えば、プランニングモジュール228は、グランド平面を識別する区分化情報を受信してよく、自律車両が辿る軌道を生成してよい。
センサ較正モジュール230は、環境に関して決定された区分化情報に少なくとも部分的に基づいて、1つまたは複数のセンサを較正するための機能性を含んでよい。例えば、LIDARモジュール204、カメラモジュール206、RADARモジュール208、および/またはSONARモジュール210からのセンサデータは、(例えば、SLAM(同時位置特定およびマッピング(simultaneous localization and mapping))を使用して、位置および/または方位を推定するために使用されてよいが、自律車両は、環境における自律車両の位置を決定するための、慣性測定ユニット(IMU)および/またはGPSユニットなどの、追加のセンサも含んでよい。いくつかの例においては、IMUは、自律車両が第1の位置にあることを示してよく、一方で、本明細書において論じられるLIDARデータの分析は、車両が第1の位置とは異なる第2の位置にあることを示す。センサ較正モジュール230は、位置の差を決定してよく、自律車両の位置、または1つもしくは複数のセンサ内的特性もしくは外的特性を更新するために、1つまたは複数のセンサを調整または較正してよい。
注釈モジュール232は、本明細書において論じられる区分化情報を受信するための機能性を含んでよく、オブジェクトと関連付けられた情報を用いて、グランド平面、静的オブジェクト、および/または動的オブジェクトに注釈を施してよい。いくつかの例においては、注釈モジュール232は、例えば、技術者による人手の検証および/または調整のために、区分化情報をグラフィカルユーザインターフェース内に提供してよい。いくつかの例においては、注釈モジュール232は、本明細書において論じられるオブジェクトの分類を決定および適用するための機能性を含んでよい。注釈モジュール232は、区分化および分類のオペレーションを実行するために、ニューラルネットワークなど、任意の機械学習アルゴリズムを含んでよい。
本明細書において説明されるように、例示的なニューラルネットワークは、生物学から発想を得たアルゴリズムであり、それは、入力データが一連の接続されたレイヤを通過するようにして、出力を生成する。ニューラルネットワークの一例は、畳み込みニューラルネットワーク(CNN)を含んでよい。CNNの各レイヤは、別のCNNを含んでよく、または任意の数のレイヤを含んでよい。本開示との関連において理解されてよいように、ニューラルネットワークは、出力が学習されたパラメータに基づいて生成されるようなアルゴリズムの広範なクラスのことを指してよい、機械学習を利用してよい。
ニューラルネットワークとの関連において論じられるが。本開示と矛盾しない任意のタイプの機械学習が、使用されてよい。例えば、機械学習アルゴリズムは、回帰アルゴリズム(例えば、最小2乗回帰(OLSR)、線形回帰、ロジスティック回帰、ステップワイズ回帰、多変量適応型回帰スプライン(MARS:multivariate adaptive regression splines)、局所的に推定された散布図平滑化(LOESS:locally estimated scatterplot smoothing))、インスタンスベースのアルゴリズム(例えば、リッジ回帰(ridge regression)最小絶対収縮および選択演算子(LASSO:least absolute shrinkage and selection operator)、弾性ネット(elastic net)、最小角回帰(LARS:least-angle regression))、決定木アルゴリズム(例えば、分類回帰木(CART:classification and regression tree)、反復二分器3(ID3:iterative dichotomiser 3)、カイ2乗自動相互作用検出(CHAID:Chi-squared automatic interaction detection)、決定株(decision stump)、条件付き決定木)、ベイジアンアルゴリズム(例えば、ナイーブベイズ、ガウシアンナイーブベイズ、多項ナイーブベイズ(multinomial naive Bayes)、平均一依存エスティメータ(AODE:average one-dependence estimators)、ベイジアン信念ネットワーク(BNN:Bayesian belief network)、ベイジアンネットワーク)、クラスタリングアルゴリズム(例えば、k平均法、kメジアン法、期待値最大化(EM)、階層的クラスタリング)、相関ルール学習アルゴリズム(association rule learning algorithm)(例えば、パーセプトロン(perceptron)、バックプロパゲーション(back-propagation)、ホップフィールドネットワーク(hopfield network)、放射基底関数ネットワーク(RBFN:Radial Basis Function Network))、深層学習アルゴリズム(例えば、深層ボルツマンマシン(DBM:Deep Boltzmann Machin)、深層信念ネットワーク(DBN)、畳み込みニューラルネットワーク(CNN)、積層オートエンコーダ(Stacked Auto-Encoder))、次元削減アルゴリズム(例えば、主成分分析(PCA)、主成分回帰(PCR)、部分最小2乗回帰(PLSR)、サモンマッピング(Sammon Mapping)、多次元スケーリング(MDS)、射影追跡、線形判別分析(LDA)、混合判別分析(MDA)、2次判別分析(QDA)、柔軟判別分析(FDA))、アンサンブルアルゴリズム(例えば、ブースティング、ブートストラップアグリゲーション(Bootstrapped Aggregation)((バギング(Bagging))、アダブースト(AdaBoost)、スタック汎化(Stacked Generalization)(ブレンディング(blending))、勾配ブースティングマシン(GBM:Gradient Boosting Machines)、勾配ブースト回帰木(GBRT:Gradient Boosted Regression Trees)、ランダムフォレスト)、SVM(サポートベクトルマシン)、教師あり学習、教師なし学習、半教師あり学習などを含んでよいが、それらに限定されない。
コンピュータシステム202の追加の詳細が、図11との関連において以下で提供される。
図3は、ボクセル空間において表されたグランド領域を識別するための例示的なプロセス300のフローチャートを示している。
オペレーション302において、プロセスは、データと関連付けられたボクセルを受信することを含むことができる。例えば、オペレーション302は、図1との関連において上で論じられたように、ボクセル空間にマッピングまたは変換されたLIDARデータを含む、1つまたは複数のボクセルを受信することを含むことができる。いくつかの例においては、オペレーション302は、ボクセル空間を受信することと、ボクセル空間の各ボクセルを解析することとを含むことができる。いくつかの例においては、ボクセルと関連付けられたデータは、LIDARデータ、カメラデータ、RADARデータ、SONARデータ、全体マップデータ、およびそれらの任意の組み合わせを含んでよい。例304は、例えば、LIDARデータ308を含む)ボクセル306を示している。
オペレーション310において、プロセスは、面を1つまたは複数のボクセルと関連付けられたデータに適合させることを含むことができる。例312において、面314は、ボクセル306と関連付けられたLIDARデータ308に適合させられる。いくつかの例においては、オペレーション310は、面314と関連付けられた法線ベクトル316を決定することをさらに含んでよい。いくつかの例においては、オペレーション310は、LIDARデータ308の主成分分析を実行して、法線316に対応してよい、最小主成分を決定することを含んでよい。いくつかの例においては、概念的には、面314は、法線ベクトル316を決定することの一部として決定されてよいが、オペレーション310は、面314をLIDARデータ308に明確に適合させなくてよい。いくつかの例においては、オペレーション310は、ターゲットボクセルと関連付けられた近隣ボクセルに基づいて、ターゲットボクセルと関連付けられた面を決定することを含んでよい。いくつかの例においては、オペレーション310は、ボクセルと関連付けられたメッシュを決定することと、特定のボクセル(例えば、ボクセル306)と関連付けられた面を決定することとを含んでよい。
オペレーション318において、プロセスは、基準方向を決定することを含むことができる。例320において、基準方向322は、自律車両324の方位に対応してよい。非限定的な例として、基準方向322は、自律車両324の高さ方向に沿った単位ベクトルを含んでよい。したがって、自律車両324は、様々な面上(フラットな面、上り/下りする坂、傾斜面上など)を運行するので、基準方向322は、変化してよい。加えて、または代わりに、オペレーション318は、自律車両324を中心とする座標系からボクセル空間306の座標系への座標変換を含んでよい。
オペレーション326において、プロセスは、面法線ベクトルが基準方向の閾値内にあると決定することを含むことができる。例えば、閾値は、あらかじめ決定されてよく、または自律車両324の位置、路面のタイプ、自律車両324の速度などに基づいて、変化してよい。例328において、面法線ベクトル316は、2つのベクトルが角度Θを形成する、面法線ベクトル316と基準方向322との間の内積を取ることによって、基準方向322と比較される。いくつかの例においては、閾値は、15度など、任意の角度になるように設定されてよく、Θが15度よりも大きい場合、ボクセルは、局所的にフラットなボクセルに対応しないと決定される。
オペレーション330において、面法線ベクトル316が、基準方向の閾値内にある場合、プロセスは、ボクセルが局所的にフラットなボクセルであると決定することを含むことができる。オペレーション330は、ボクセルが局所的にフラットなボクセルであることを示すために、タグまたは識別子をボクセルと関連付けることを含んでよい。いくつかの例においては、タグまたは識別子は、特定のボクセルと関連付けられたLIDARデータに伝搬させることができる。
オペレーション332において、プロセスは、クラスタリングを実行して、自律車両324のための運転可能な面に対応してよい、フラットな領域を決定することを含むことができる。例334は、ボクセル306を含んでよい、ボクセル空間336の代表的な上面図(例えば、x-y平面におけるボクセル空間336の単一のレイヤ)を示している。いくつかの例においては、ボクセル空間336は、本明細書において論じられるような、局所的にフラットなボクセルに対応すると決定された複数のボクセルを含む。領域拡張技法を使用して、オペレーション322は、局所的にフラットなボクセルと関連付けられたLIDARデータ338、340を含むように、クラスタを拡張してよい。いくつかの例においては、クラスタは、互いに隣接する、または別の局所的にフラットなボクセルまでの距離が閾値距離内にある、局所的にフラットなボクセルを決定することによって拡張されて、第1のクラスタ342および第2のクラスタ344を生成してよい。いくつかの例においては、オペレーション332は、自律車両324’に近接したクラスタが、1次グランドクラスタであると見なされるべきであると決定してよい。したがって、1次グランドクラスタを拡張するとき、自律車両324’の位置が、シード点(seed point)に対応してよい。
オペレーション346において、プロセスは、グランドクラスタを拡張するために、ボクセル空間において補間を行うことを含むことができる。いくつかの例においては、オペレーション346において拡張されるグランドクラスタは、1次グランドクラスタに対応することができ、それは、自律車両324’に近接したクラスタに対応してよい。オペレーション346の追加の詳細は、図4との関連において提供される。
図4は、グランドクラスタを拡張するために、ボクセル空間において補間を行うための、例示的なプロセス400のフローチャートを示している。
オペレーション402において、プロセスは、グリッドにおけるグランドセルの平均高さを決定することを含むことができる。例404において、ボクセル空間336は、局所的にフラットなボクセルからなるクラスタを表す、上で論じられたような、第1のクラスタ342と、第2のクラスタ334とを含む。いくつかの例においては、プロセス400は、第1のクラスタ342と第2のクラスタ344が結合されて、単一のクラスタを形成すべきかどうかを決定するために、使用されることができる。いくつかの例においては、オペレーション402は、第1のクラスタ342における個々のボクセル内の点の平均高さを決定することを含むことができ、いくつかの例においては、オペレーション402は、クラスタ342におけるいくつかまたはすべてのボクセルの平均高さを決定することを含むことができる。いくつかの例においては、オペレーション402は、例えば、張り出しを表すオブジェクトを区別するために、グランドセルの高さを決定することを含むことができる。例404には、以下で論じられる細部406が含まれる。
オペレーション408において、プロセスは、グランドセル内の点と、潜在的なグランドボクセルと関連付けられた点とについての平均高さ間の勾配を決定することを含むことができる。例410において、細部406は、第1のクラスタ342に含まれる第1のボクセル412と、第2のクラスタ344に含まれる第2のボクセル414とを示している。理解されてよいように、第1のボクセル412は、グランドボクセルに対応し、第2のボクセル414は、潜在的なグランドボクセルに対応する。第1のボクセル412と関連付けられた点416は、第1のボクセル412と関連付けられたLIDARデータの平均<x,y,z>座標と関連付けられてよい。いくつかの例においては、点416は、第1のボクセル412と関連付けられたLIDARデータの平均<x,y,z>座標に対応してよく、平均z値は、少なくとも部分的に、クラスタ342におけるボクセルのいくつかまたはすべての平均高さ(例えば、平均z値)を計算するために、使用されてよい。いくつかの例においては、第2のボクセル414(例えば、潜在的なグランドボクセル)と関連付けられた点418は、第2のボクセル414と関連付けられたLIDARデータの平均<x,y,z>座標と関連付けられてよい。オペレーション408は、クラスタ342における点、またはすべての点の平均と、クラスタ344における点、または点の平均との間の勾配を決定することを含む。いくつかの例においては、オペレーション408は、(例えば、本明細書において論じられるように、勾配を決定することに加えて、またはそれの代わりに)クラスタ344の平均z値が、クラスタ342の平均z値についての閾値内にあるかどうかを決定するために、クラスタ342およびクラスタ344の平均z値を決定することを含むことができる。
オペレーション420において、プロセスは、勾配の成分が閾値を下回るかどうかを決定することを含むことができる。例422は、点416と点418との間の勾配または傾斜を示す。例422に示される図は、例410に示される上面図の側面図に対応してよい。いくつかの例においては、傾斜は、点416と点418との間の水平距離426によって除算された高さの変化424(Δz)として、決定されることができる。したがって、いくつかの例においては、傾斜は、第1のクラスタ342と関連付けられた平均<x,y,z>値と、第2のクラスタ344と関連付けられた平均<x,y,z>値とに少なくとも部分的に基づくことができる。
オペレーション428において、プロセスは、グランドクラスタを拡張するために、点をグランドと関連付けることを含むことができる。例430は、例404における第1のクラスタ342から、例430における更新されたグランドクラスタ432への、グランドクラスタの拡張を示している。したがって、プロセス400は、グランドクラスタを拡張してよく、それは、自律車両324’によって運転可能な領域のサイズを増大させる。さらに、グランドクラスタのサイズを増大させることは、オブジェクト区分化の間に無視されるデータの量を増加させてよく、それは、オブジェクトと見なされるボクセルの量を減少させることによって、処理を改善する。さらに、いくつかの例においては、グランドクラスタ内のセルの高さは、関心オブジェクトを識別して、静的オブジェクトおよび動的オブジェクトをさらに識別するために、使用されることができる。すなわち、グランドに近接した(例えば、グランド上に位置特定された)オブジェクトについては、オブジェクトの下限は、グランドの高さに対応してよい。
図5は、レイキャスティングおよび動的オブジェクト識別と関連付けられた例を示している。例502は、図1に示された例136に対応する。いくつかの例においては、時間T1におけるオブジェクト138、および時間T2におけるオブジェクト138’に対応する動きは、第1の時間に占有されており、第2の時間に占有されていないボクセル、およびそれとは反対のボクセルを決定することによって、識別されることができる。さらに、例504は、本明細書において説明されるレイキャスティングの詳細を示している。
例504において、ベクトル144は、LIDARセンサ140から発し、様々なボクセルを通過して、オブジェクト146と関連付けられたデータを捕捉するように示されている。理解されてよいように、ベクトル144は、第2の時間T2と関連付けられ、それによって、オブジェクト138は、時間T1における第1の位置から、オブジェクト138’と関連付けられた、時間T2における第2の位置に移動している。したがって、ベクトル144は、以前、時間T1においてはオブジェクト138を表すデータによって占有されていた、ボクセル506、508、510、512、514を通過する。さらに、本明細書において説明されるオペレーションは、ベクトル144が通過するボクセルのいくつかまたはすべてを決定して、以前は占有されていたボクセル506、508、510、512、514が、第2の時間T2においては占有されていないと決定することを含んでよい。したがって、例504において示されるレイキャスティングは、オブジェクト138および138’が動的オブジェクトであると決定するための追加の技法を提供する。
さらに、本明細書において示されるレイキャスティング技法は、第2の時間T2において、ボクセル506、508、510、512、514をクリアするために、使用されることができる。したがって、本明細書において説明される技法は、時間的な瞬間に維持されるべきデータの量を減少させるために、ならびにボクセル空間内において動的オブジェクトを検出および区分化するためのオペレーションを改善するために、経時的にボクセル空間の状態を更新することができる。
別の例においては、レイキャスティング技法は、局所的に捕捉されたLIDARデータを、以前に捕捉された全体マップデータと比較するために、使用されることができる。例えば、オブジェクト138は、全体マップデータ内に表されたオブジェクトに対応してよい。しかしながら、ベクトル144が、オブジェクト138を表すボクセルを通過する場合、ベクトル144が、局所的に捕捉されたLIDARデータを表すとき、オペレーションは、全体マップと局所マップとの間に差が存在すると決定することができる。いくつかの例においては、差は、全体マップが不正確であること、または環境の状態が変化した(例えば、樹木を除去したことによって、物理的世界が変化した)ことを示してよい。この方式においては、全体マップと局所LIDARデータとの間の差が決定されるので、(差が、意見の一致によって(例えば、同じもしくは似たイベントまたはデータの繰り返される観測によって)検証された場合、またはデータの信頼水準が、閾値量を上回る場合)差は、中央サーバにアップロードされて、全体マップデータに組み込まれ、他の車両に配送されることができる。
図1、図3、図4、および図6~図10は、本開示の実施形態に従った、例示的なプロセスを示している。これらのプロセスは、論理フローグラフとして示され、それの各オペレーションは、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施されることができるオペレーションのシーケンスを表す。ソフトウェアとの関連において、オペレーションは、1つまたは複数のプロセッサによって実行されたとき、述べられたオペレーションを実行する、1つまたは複数のコンピュータ可読記憶媒体上に記憶されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、特定の機能を実行する、または特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造などを含む。オペレーションが説明される順序は、限定として解釈されることは意図されておらず、プロセスを実施するために、任意の数の説明されるオペレーションが、任意の順序で、および/または並列して、組み合わされることができる。
図6は、本明細書において説明されるような、オブジェクト識別および区分化に基づいて自律車両のための軌道を生成するための例示的なプロセス600を示している。例えば、プロセス600の一部または全部は、本明細書において説明されるような、アーキテクチャ200内の、または環境1100内の1つまたは複数の構成要素によって実行されることができる。
オペレーション602において、プロセスは、環境と関連付けられたグランドボクセルを決定することを含むことができる。いくつかの例においては、このオペレーション602は、本明細書において論じられるように、局所的にフラットなボクセルを決定することと、グランドクラスタを拡張することと、処理を簡略化するために、グランドクラスタをボクセル空間から除去することとを含むことができる。
オペレーション604において、プロセスは、環境と関連付けられたオブジェクトボクセルを決定することを含むことができる。いくつかの例においては、このオペレーション604は、本明細書において論じられるように、静的および/または動的オブジェクトを決定することを含むことができる。いくつかの例においては、このオペレーション604は、オブジェクトを区分化することと、オブジェクト分類またはタイプを決定するために、区分化されたオブジェクトを、畳み込みニューラルネットワークなどの、クラシファイヤに提供することとを含んでよい。
オペレーション606において、プロセスは、グランドおよび/またはオブジェクトに少なくとも部分的に基づいて、自律車両のための軌道を生成することを含むことができる。例えば、オペレーション606において生成された軌道は、自律車両によって運転可能な領域に対応してよい、グランドボクセル内に制約されてよい。さらに、オペレーション606において生成された軌道は、識別されたオブジェクトを回避してよい。いくつかの例においては、オペレーション606は、オペレーション604において決定された動的オブジェクトを追跡すること、および/または動的オブジェクトの軌道を予測することを含んでよい。さらに、オペレーション606において生成される軌道は、動的オブジェクトの予測される軌道に少なくとも部分的に基づいてよい。例えば、そのような予測される軌道は、オブジェクトを追跡すること、およびオブジェクトの挙動分類などに少なくとも部分的に基づいて、生成されてよい。
オペレーション608において、プロセスは、オペレーション606において生成された軌道に沿って運転するように自律車両に命令するコマンドのシーケンスを生成することを含むことができる。いくつかの例においては、オペレーション608において生成されたコマンドは、軌道を運転するように自律車両を制御するために、自律車両に搭載されたコントローラに中継されることができる。自律車両との関連において論じられたが、プロセス600、ならびに本明細書において説明される技法およびシステムは、マシンビジョンを利用する様々なシステムに適用されることができる。
図7は、経時的なボクセルデータの表現に基づいて、ボクセルマップをクリアするための例示的なプロセスを示している。例えば、プロセス700の一部または全部は、本明細書において説明されるような、アーキテクチャ200内の、または環境1100内の1つまたは複数の構成要素によって実行されることができる。
オペレーション702において、プロセスは、第1の時間に、環境のLIDARデータを捕捉することを含むことができる。本明細書において論じられるように、環境のLIDARデータは、環境内に位置付けられた1つまたは多数のLIDARセンサからのLIDARデータを含んでよい。いくつかの例においては、このオペレーション702は、ノイズを除去するために、LIDARデータをフィルタリングすることを含んでよい。さらに、オペレーション702は、本明細書において論じられるように、LIDARデータをマッピングすること、変換すること、割り当てること、または環境を表すボクセル空間と関連付けることを含んでよい。
オペレーション704において、プロセスは、第1のLIDARデータと関連付けられたボクセルの第1のサブセットが、オブジェクトと関連付けられると決定することを含むことができる。上で論じられたように、このオペレーションは、グランドと関連付けられたボクセルを決定することと、潜在的なオブジェクトボクセルを隔離するために、グランドボクセルを区分化すること、除去すること、および/または除外することと、ボクセル空間内に表されたオブジェクトを決定するために、領域拡張技法を利用することとを含んでよい。上で論じられたように、個々のオブジェクトは、一意的なオブジェクト識別子と関連付けられてよく、それは、個々のオブジェクトと関連付けられた個々のボクセルおよび/またはLIDARデータに関連付けられて、および/または割り当てられてよい。
オペレーション706において、プロセスは、第2の時間に、環境の第2のLIDARデータを捕捉することを含むことができる。いくつかの例においては、オペレーション706は、オペレーション702において利用されたのと同じボクセル空間内において、第2の時間に捕捉されたLIDARデータを関連付けることを含んでよい。いくつかの例においては、LIDARデータは、捕捉の異なる時間と関連付けられたデータを効率的にフィルタリングおよび/またはソートするために、次元として時間を含むことができる。いくつかの例においては、オペレーション706は、本明細書において論じられるように、グランドボクセルおよびオブジェクトボクセルを決定することを含むことができる。
オペレーション708において、プロセスは、第2のLIDARデータと関連付けられたベクトルが、ボクセルの第1のサブセットを通じてトラバース(traverse)すると決定することを含むことができる。例えば、図5に示されるように、オペレーション708は、LIDARデータ点を捕捉することと関連付けられた、ボクセル空間を通るベクトルをトレースして、ベクトルが通過するボクセルを決定することを含むことができる。いくつかの例においては、オペレーション708は、ベクトルと関連付けられたボクセルが、オペレーション704において識別されたオブジェクトと関連付けられたボクセルと関連付けられると決定することを含むことができる。
オペレーション710において、プロセスは、第2のLIDARデータと関連付けられたボクセルの第1のサブセットが占有されていないと決定することを含むことができる。例えば、このオペレーションは、ボクセルの第1のサブセットを通過するベクトルに基づいて、第2の時間におけるボクセルの第1のサブセットの占有を決定することを含むことができる。
オペレーション712において、プロセスは、ボクセルの第1のサブセットを通じてトラバースする、第2のLIDARデータと関連付けられたベクトルに少なくとも部分的に基づいて、第2のLIDARデータを表すデータのボクセル空間をクリアすることを含むことができる。すなわち、オペレーション712は、第2の時間に、ボクセルの第1のサブセットを占有されていないボクセルとして表すことを含むことができる。いくつかの例においては、クリアされたボクセルと関連付けられた情報は、オペレーション704において決定されたオブジェクトが動的オブジェクトであると決定するために、使用されることができる。
図8は、経時的なボクセルデータの表現に基づいて、オブジェクトが動的オブジェクトであると決定するための例示的なプロセスを示している。例えば、プロセス800の一部または全部は、本明細書において説明されるような、アーキテクチャ200内の、または環境1100内の1つまたは複数の構成要素によって実行されることができる。
オペレーション802において、プロセスは、オブジェクトが、第1の時間に、ボクセルの第1のサブセットと関連付けられると決定することを含むことができる。いくつかの例においては、オペレーション802は、本明細書において論じられるように、1つまたは複数のオブジェクトを識別することを含むことができる。いくつかの例においては、オペレーション802は、オブジェクトを識別するオブジェクト識別子を受信することと、オブジェクト識別子と関連付けられたボクセルを識別することとを含むことができる。同様に、オペレーション804において、プロセスは、オブジェクトが、第2の時間に、ボクセルの第2のサブセットと関連付けられると決定することを含むことができる。
オペレーション806において、プロセスは、ボクセルの第1のサブセットの少なくとも一部の位置が、ボクセルの第2のサブセットの少なくとも一部の位置と異なると決定することを含むことができる。すなわち、オブジェクトが、空間を通って移動するにつれて、したがって、(例えば)オブジェクトを表すLIDARデータが、時間につれてボクセル空間の全体にわたって更新されるにつれて、オブジェクトと関連付けられたボクセルの占有が、時間につれて変化する。例えば、第1の時間にオブジェクトによって占有されておらず、第2の時間にオブジェクトによって占有されている(またはその反対である)ボクセルは、オブジェクトの動きを表してよい。このオペレーション806は、ボクセルの第1のサブセットの位置および/または占有をボクセルの第2のサブセットと比較して、ボクセルのサブセット間で共通しないボクセルを識別することを含むことができる。
オペレーション808において、プロセスは、オブジェクトが動的オブジェクトであると決定することを含むことができる。例えば、オブジェクトと関連付けられたボクセルの占有および/または位置を経時的に決定することによって、オペレーション808は、ボクセル占有の変化が、例えば、動きに対応し、オブジェクトが動的オブジェクトであると決定することができる。すなわち、いくつかの例においては、ボクセルの第1のサブセットとボクセルの第2のサブセットとの間における、ボクセル空間内のボクセルの位置および/または場所の差は、オブジェクトの運動に対応することができる。いくつかの例においては、データ捕捉または処理におけるジッタ、ノイズ、または誤差が、オブジェクトが動的オブジェクトであるとの識別をトリガすることを防止するために、オペレーション808は、差が閾値量を上回ると決定することを含む。いくつかの例においては、オブジェクトは、オペレーション806において決定された差に少なくとも部分的に基づいて、動的オブジェクトであると決定される。いくつかの例においては、オペレーション808は、オブジェクトが動的オブジェクトであると決定するために、占有情報および/またはレイキャスティングと組み合わせて利用されてよい、例えば、オブジェクトのタイプ(例えば、自動車、ビルディング、樹木)を決定するために、オブジェクトを表すデータをニューラルネットワークに適用することをさらに含んでよい。
オペレーション810において、プロセスは、動的オブジェクトの表示をトラッカおよび/またはプランナに提供することを含むことができる。例えば、本明細書において論じられるように、動的オブジェクトと関連付けられたオブジェクト識別子が、後続するオペレーションのために、トラッカおよび/またはプランナに提供されることができる。例えば、オペレーションは、追跡されるオブジェクトのスピード、位置、速度などを決定するために、様々なオブジェクトと関連付けられたボクセルの占有を、経時的に追跡することができる。
図9は、マップ生成および/またはセンサ較正を実行するための例示的なプロセスを示している。例えば、プロセス900の一部または全部は、本明細書において説明されるような、アーキテクチャ200内の、または環境1100内の1つまたは複数の構成要素によって実行されることができる。
オペレーション902において、プロセスは、LIDARデータセットを受信することを含むことができる。いくつかの例においては、オペレーション902は、オペレーション102、302、および/または702に類似した、またはそれらと同じオペレーションを含んでよい。
オペレーション904において、プロセスは、LIDARデータセットと関連付けられた静的ボクセルを決定することを含むことができる。いくつかの例においては、オペレーション904は、例えば、オペレーション112、122などにおいて説明されたオペレーションに類似した、またはそれらと同じオペレーションを含んでよい。いくつかの例においては、グランド面は、オペレーション904の目的で、静的オブジェクトのタイプと見なされてよい。
オペレーション906において、プロセスは、マップ生成および/またはセンサ較正のために、静的ボクセルの表示を提供することを含むことができる。例えば、オペレーション906は、環境の特徴を識別するために、経時的にデータを収集することを含むことができる。マップ生成の場合、環境のマップを生成するために、静的オブジェクトと関連付けられた情報が、提供されることができる。センサ較正の場合、オペレーション906は、GPSセンサ、慣性測定ユニット(IMU)、ホイールスピードセンサなどの、第1のセンサから位置を決定することを含むことができる。さらに、オペレーションは、全体マップ上における自律車両の位置を決定するために、静的オブジェクトの相対位置を静的オブジェクトの知られた位置と比較することによって、(例えば、LIDARデータセットを捕捉している)自律車両の第2の位置を決定することを含んでよい。非限定的な例として、LIDARセンサデータを含む、様々なセンサデータは、いくつか名前を挙げると、SLAM、バンドル調整、ベイジアンフィルタリング、バッグオブワード、またはループ閉鎖アルゴリズムなどの技法を使用して、位置特定を実行するために使用されてよい。第1の位置と第2の位置との間の差に基づいて、オペレーションは、自律車両の場所のより正確な決定を提供するために、センサを較正すること、または場所の位置を調整することを含むことができる。
さらに、本明細書において論じられるオペレーションは、全体マップに関して自律車両を位置特定するために使用されることができる。例えば、ボクセル空間は、以前に捕捉されたセンサデータを表すことができる、全体マップに対応するLIDARデータを用いて、初期化されることができる。自律車両が、LIDARデータを捕捉しながら、空間を通って運行するとき、オペレーションは、局所的に捕捉された特徴を、全体マップ上に存在する特徴と比較することによって、全体マップ内において自律車両を位置特定することができる。そのようなプロセスは、上で論じられたもの(例えば、SLAM、ベイジアンフィルタリング、およびバンドル調整などの形態)に類似してよい。いくつかの例においては、オペレーションは、局所マップと全体マップとの間の差を決定することができる。非限定的な例として、全体マップが、占有されているボクセルによって決定されるような、局所マップ内に存在しないオブジェクトの存在を示す場合について考える。そのような場合においては、差は、異なる状態(例えば、占有された状態または占有されていない状態)を有する、多数のボクセルを含んでよい。差の量が、第1の閾値を上回るが、第2の閾値を下回る場合、差は、駐車していた自動車が移動した、樹木の除去、ごみ収集日にごみ箱が出されているなど、環境の変化であると見なされてよく、差は、マークされ、全体マップに組み込まれるように、中央サーバにアップロードされることができる。さらに、レイキャスティングオペレーションが、実行されるとき、より詳細なデータが、中央サーバにアップロードされ、全体マップに組み込まれることができる。いくつかの例においては、差の数が、第2の閾値を上回る場合、オペレーションは、位置特定が失敗したと決定することができ、全体マップデータを無視し、局所的に捕捉されたLIDARデータだけを使用してオペレーションしてよい。
図10は、ボクセル表現に基づいたオブジェクトの識別に基づいて、オブジェクトに注釈を施すための例示的なプロセスを示している。例えば、プロセス1000の一部または全部は、本明細書において説明されるような、アーキテクチャ200内の、または環境1100内の1つまたは複数の構成要素によって実行されることができる。
オペレーション1002において、プロセスは、LIDARデータセットを受信することを含むことができる。このオペレーションは、本明細書において論じられるように、LIDARデータセットをボクセル空間にマッピングすることを含んでよい。
オペレーション1004において、プロセスは、LIDARデータセットと関連付けられたグランドボクセルを決定することを含むことができる。このオペレーションは、本明細書において論じられるオペレーションに従って、グランドボクセルを決定することを含んでよい。
オペレーション1006において、プロセスは、LIDARデータセットと関連付けられたオブジェクトボクセルを決定することを含むことができる。本明細書において論じられるように、オペレーション1006は、静的および動的オブジェクトを決定することと、本明細書において論じられるように、オブジェクト識別子を、ボクセル空間内にオブジェクトを表すボクセルと関連付けることとを含んでよい。
オペレーション1008において、プロセスは、オブジェクトボクセルに対して区分化を実行することを含むことができる。いくつかの例においては、オペレーション1008は、各個別オブジェクトの境界を画定する3次元境界ボックスを生成することを含んでよい。いくつかの例においては、境界ボックスは、例えば、オブジェクト識別子と関連付けられたボクセルと関連付けられた、ボクセル空間内の空間の体積を決定することによって、生成されることができる。
オペレーション1010において、プロセスは、後続する注釈のために、区分化されたオブジェクトボクセルを提供することを含むことができる。いくつかの例においては、オペレーション1010は、区分化されたオブジェクトボクセル(および例えば、関連付けられた3次元境界ボックス)を、人手の注釈サービスに提供することを含むことができ、それによって、区分化されたオブジェクトは、再検討のために、グラフィカルユーザインターフェース上に提示される。ユーザは、例えば、区分化情報または境界ボックスの1つまたは複数の態様を調整してよい。いくつかの例においては、区分化されたオブジェクトボクセルは、分類タイプを含むことができ、注釈サービスは、区分化されたボクセルと関連付けられた分類タイプを確認または編集してよい。いくつかの例においては、オペレーション1010は、区分化されたオブジェクトボクセルを、自動分類および注釈のために、深層学習ネットワークに提供することを含んでよい。
図11は、本開示が全体的または部分的に実施されてよい、環境1100を示している。環境1100は、記憶装置1104と、1つまたは複数のプロセッサ1106と、メモリ1108と、オペレーティングシステム1110とを備える、1つまたは複数のコンピュータシステム1102を示している。記憶装置1104、プロセッサ1106、メモリ1108、およびオペレーティングシステム1110は、通信インフラストラクチャ1112上において、通信可能に結合されてよい。任意選択で、コンピュータシステム1102は、入力/出力(I/O)デバイス1114を介して、ユーザまたは環境と相互作用してよく、通信インフラストラクチャ1112を介して、ネットワーク1116上の1つまたは複数の他のコンピューティングデバイスとも相互作用してよい。オペレーティングシステム1110は、1つまたは複数のアプリケーション1118を制御するために、他の構成要素と相互作用してよい。
いくつかの例においては、コンピュータシステム1102は、図2のコンピュータシステム202に対応してよい。さらに、コンピュータシステム202は、本明細書において論じられるような、ボクセルベースの区分化を実行するために、任意のハードウェアおよび/またはソフトウェアを実施して、モジュール204、206、208、210、212、214、216、218、220、222、224、226、228、232を実施してよい。
本明細書において説明されるシステムおよび方法は、ソフトウェアもしくはハードウェア、またはそれらの任意の組み合わせで、実施されることができる。本明細書において説明されるシステムおよび方法は、物理的または論理的に互いに別々であってよく、または別々でなくてよい、1つまたは複数のコンピューティングデバイスを使用して、実施されることができる。方法は、オンプレミスハードウェア、オンプレミス仮想システム、またはホステッドプライベートインスタンスとして配置された構成要素によって実行されてよい。加えて、本明細書において説明される方法の様々な態様は、他の機能と組み合わされてよく、または他の機能に合併されてよい。
本明細書において説明されるシステムおよび方法を実施するための、例示的な環境およびコンピュータ化されたシステムが、図11に示されている。プロセッサまたはコンピュータシステムは、特に、本明細書において説明される方法のうちのいくつかまたはすべてを実行するように構成されることができる。いくつかの実施形態においては、方法は、1つまたは複数のコンピュータまたはプロセッサによって、部分的または全体的に自動化されることができる。本明細書において説明されるシステムおよび方法は、ハードウェア、ファームウェア、および/またはソフトウェアのいずれかの組み合わせを使用して実施されてよい。本明細書において説明される本システムおよび方法(またはそれらのいずれかの部分もしくは機能)は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせを使用して実施されてよく、1つまたは複数のコンピュータシステムまたは他の処理システムで実施されてよい。いくつかの実施形態においては、示されたシステム要素は、単一のハードウェアデバイスに組み合わされること、または複数のハードウェアデバイスに分割されることができる。多数のハードウェアデバイスが、使用される場合、ハードウェアデバイスは、物理的に互いに近接して、または遠く離れて配置されることができる。説明され、示される方法の実施形態は、説明的であることが意図されており、限定的であることは意図されていない。例えば、方法のステップのうちのいくつかまたはすべては、異なる実施形態においては、組み合わされること、再配置されること、および/または省かれることができる。
例示的な一実施形態においては、本明細書において説明されるシステムおよび方法は、本明細書において説明される機能性を実施することが可能な1つまたは複数のコンピュータシステムを対象としてよい。例示的なコンピューティングデバイスは、OS X(商標)、iOS(商標)、Linux(商標)、Android(商標)、およびMicrosoft(商標) Windows(商標)などの、しかし、それらに限定されない、任意のオペレーティングシステムを動作させる、パーソナルコンピュータ(PC)システムであってよいが、それに限定されない。しかしながら、本明細書において説明されるシステムおよび方法は、これらのプラットフォームに限定されなくてよい。代わりに、本明細書において説明されるシステムおよび方法は、任意の適切なオペレーティングシステムを動作させる、任意の適切なコンピュータシステム上において実施されてよい。コンピューティングデバイス、通信デバイス、モバイルフォン、スマートフォン、テレフォニデバイス、電話、パーソナルデジタルアシスタント(PDA)、パーソナルコンピュータ(PC)、ハンドヘルドPC、双方向テレビ(iTV)、デジタルビデオレコーダ(DVD)、クライアントワークステーション、シンクライアント、シッククライアント、プロキシサーバ、ネットワーク通信サーバ、リモートアクセスデバイス、クライアントコンピュータ、サーバコンピュータ、ルータ、ウェブサーバ、データ、メディア、オーディオ、ビデオ、テレフォニ、またはストリーミング技術サーバなどの、しかし、それらに限定されない、本明細書において説明されるシステムおよび方法の他の構成要素も、コンピューティングデバイスを使用して実施されてよい。サービスは、例えば、限定されることなく、双方向テレビ(iTV)、ビデオオンデマンドシステム(VOD)を使用して、またデジタルビデオレコーダ(DVR)または他のオンデマンド視聴システムを介して、オンデマンドで提供されてよい。
システムは、1つまたは複数のプロセッサを含んでよい。プロセッサは、通信バス、クロスオーバーバー、またはネットワークなどの、しかし、それらに限定されない、通信インフラストラクチャに接続されてよい。プロセスとプロセッサは、同じ物理的ロケーションに配置される必要はない。言い換えると、プロセスは、例えば、LANまたはWAN接続上において、1つまたは複数の地理的に遠いプロセッサにおいて、実行されることができる。コンピューティングデバイスは、ディスプレイユニット上に表示するために、グラフィックス、テキスト、および他のデータを通信インフラストラクチャから転送してよい、ディスプレイインターフェースを含んでよい。
コンピュータシステムは、メインメモリ、ランダムアクセスメモリ(RAM)、および2次メモリなどを含んでもよいが、それらに限定されない。2次メモリは、例えば、ハードディスクドライブ、および/またはコンパクトディスクドライブCD-ROMなどのリムーバブル記憶ドライブなどを含んでよい。リムーバブル記憶ドライブは、リムーバブル記憶ユニットから読み取ってよく、および/またはリムーバブル記憶ユニットに書き込んでよい。理解されてよいように、リムーバブル記憶ユニットは、コンピュータソフトウェアおよび/またはデータをそこに記憶した、コンピュータ使用可能記憶媒体を含んでよい。いくつかの実施形態においては、マシンアクセス可能媒体とは、コンピュータによってアクセス可能なデータを記憶するために使用される任意の記憶デバイスのことであってよい。マシンアクセス可能媒体の例は、例えば、限定されることなく、磁気ハードディスク、フロッピディスク、コンパクトディスクリードオンリメモリ(CD-ROM)もしくはデジタル多用途ディスク(DVD)などの光ディスク、磁気テープ、および/またはメモリチップなどを含んでよい。
プロセッサは、データを記憶するための1つもしくは複数のデータ記憶デバイスを含んでもよく、またはそれらと通信するように動作可能に結合されてよい。そのようなデータ記憶デバイスは、非限定的な例として、(内臓ハードディスクおよびリムーバブルディスクを含む)磁気ディスク、光磁気ディスク、光ディスク、リードオンリメモリ、ランダムアクセスメモリ、ならびに/またはフラッシュストレージを含むことができる。コンピュータプログラム命令およびデータを有形に具体化するのに適した記憶デバイスも、例えば、EPROM、EEPROM、およびフラッシュメモリデバイスなどの、半導体メモリデバイス、内臓ハードディスクおよびリムーバブルディスクなどの、磁気ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含む、不揮発性メモリのすべての形態を含むことができる。プロセッサおよびメモリは、ASIC(特定用途向け集積回路)によって補足されること、またはASIC内に組み込まれることができる。
処理システムは、コンピュータ化されたデータ記憶システムと通信することができる。データ記憶システムは、非リレーショナルデータストア、またはMySQL(商標)もしくは他のリレーショナルデータベースなどのリレーショナルデータストアを含むことができる。他の物理的および論理的データベースタイプが、使用されることができる。データストアは、Microsoft SQL Server(商標)、Oracle(商標)、IBM DB2(商標)、SQLITE(商標)、またはリレーショナルもしくは他の方式の他の任意のデータベースソフトウェアなどの、データベースサーバであってよい。データストアは、構文タグを識別する情報と、構文タグを演算するのに必要とされる任意の情報とを記憶してよい。いくつかの実施形態においては、処理システムは、オブジェクト指向プログラミングを使用してよく、データをオブジェクト内に記憶してよい。これらの実施形態においては、処理システムは、オブジェクトリレーショナルマッパ(ORM)を使用して、データオブジェクトをリレーショナルデータベース内に記憶してよい。本明細書において説明されるシステムおよび方法は、任意の数の物理データモデルを使用して、実施されることができる。例示的な一実施形態においては、リレーショナルデータベース管理システム(RDBMS)が、使用されることができる。それらの実施形態においては、RDBMSにおけるテーブルは、座標を表す列を含むことができる。経済的システムの場合、会社、製品などを表すデータが、RDBMSにおけるテーブル内に記憶されることができる。テーブルは、それらの間の事前定義された関係を有することができる。テーブルは、座標と関連付けられた付加物も有することができる。
例示的な代替実施形態においては、2次メモリは、コンピュータプログラムまたは他の命令が、コンピュータシステムにロードされることを可能にするための、他の類似のデバイスを含んでよい。そのようなデバイスは、例えば、リムーバブル記憶ユニットおよびインターフェースを含んでよい。そのようなものの例は、(例えば、ビデオゲームデバイスに見出されるものなどの、しかし、それらに限定されない)プログラムカートリッジおよびカートリッジインターフェース、(例えば、消去可能プログラマブルリードオンリメモリ(EPROM)、またはプログラマブルリードオンリメモリ(PROM)および関連付けられたソケットなどの、しかし、それらに限定されない)リムーバブルメモリチップ、ならびにソフトウェアおよびデータがリムーバブル記憶ユニットからコンピュータシステムに転送されることを可能にしてよい、他のリムーバブル記憶ユニットおよびインターフェースを含んでよい。
コンピューティングデバイスは、マイクロフォンなどの音声入力デバイス、タッチスクリーン、カメラなどのジェスチャ認識デバイス、他の自然なユーザインターフェース、マウス、またはデジタイザなどの他のポインティングデバイス、キーボード、または他のデータ入力デバイスなどの、しかし、それらに限定されない、入力デバイスも含んでよい。コンピューティングデバイスは、ディスプレイ、およびディスプレイインターフェースなどの、しかし、それらに限定されない、出力デバイスも含んでよい。コンピューティングデバイスは、通信インターフェース、ケーブル、および通信経路などの、しかし、それらに限定されない、入力/出力(I/O)デバイスを含んでよい。これらのデバイスは、ネットワークインターフェースカード、およびモデムを含むが、それらに限定されない。通信インターフェースは、ソフトウェアおよびデータが、コンピュータシステムと1つまたは複数の外部デバイスとの間で転送されることを可能にしてよい。
1つまたは複数の実施形態においては、コンピューティングデバイスは、自動車システムに動作可能に結合されてよい。そのような自動車システムは、人手でオペレーションされてよく、半自律的であってよく、または完全に自律的であってよい。そのような実施形態においては、入力および出力デバイスは、加速、制動、およびステアリングなどの、しかし、それらに限定されない、自動車機能を制御するための、1つまたは複数の画像捕捉デバイス、コントローラ、マイクロコントローラ、および/または他のプロセッサを含んでよい。さらに、そのような実施形態における通信インフラストラクチャは、コントローラエリアネットワーク(CAN)バスも含んでよい。
1つまたは複数の実施形態においては、コンピューティングデバイスは、任意のマシンビジョンベースのシステムに動作可能に結合されてよい。例えば、そのようなマシンベースのビジョンシステムは、人手でオペレーションされる、半自律的な、または完全に自律的な産業用または農業用ロボット、家庭用ロボット、検査システム、セキュリティシステムなどを含むが、それらに限定されない。すなわち、本明細書において説明される実施形態は、1つの特定の状況に限定されず、マシンビジョンを利用する任意のアプリケーションに適用可能であってよい。
1つまたは複数の実施形態においては、本実施形態は、1つまたは複数のコンピュータネットワークの環境において実践されることができる。ネットワークは、プライベートネットワーク、もしくはパブリックネットワーク(例えば、以下で説明されるような、インターネット)、または両方の組み合わせを含むことができる。ネットワークは、ハードウェア、ソフトウェア、または両方の組み合わせを含んでよい。
遠隔通信指向の観点からは、ネットワークは、通信施設によって相互接続されたハードウェアノードのセットとして説明されることができ、1つまたは複数のプロセス(ハードウェア、ソフトウェア、またはそれらの組み合わせ)が、そのような各ノードにおいて機能する。プロセスは、プロセス間通信経路を使用する、それらの間の通信経路を介して、互いに情報を相互通信し、交換することができる。これらの経路上においては、適切な通信プロトコルが、使用される。
本実施形態に従った例示的なコンピュータおよび/または遠隔通信ネットワーク環境は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせを含んでよい、ノードを含んでよい。ノードは、通信ネットワークを介して、相互接続されてよい。各ノードは、ノードに組み込まれたプロセッサによって実行可能な1つまたは複数のプロセスを含んでよい。例えば、単一のプロセスが、多数のプロセッサによって実行されてよく、または多数のプロセスが、単一のプロセッサによって実行されてよい。加えて、ノードの各々は、ネットワークと外部世界との間のインターフェースポイントを提供してよく、サブネットワークの集まりを含んでよい。
例示的な実施形態においては、プロセスは、任意の通信プロトコルを通して通信をサポートするプロセス間通信経路を通して、互いに通信してよい。経路は、順次的または並列的に、連続的または断続的に機能してよい。経路は、多くのコンピュータによって使用される標準的な並列命令セットに加えて、通信ネットワークに関して本明細書において説明される、通信規格、プロトコル、または技術のいずれかを使用することができる。
ノードは、処理機能を実行することが可能な任意のエンティティを含んでよい。実施形態とともに使用されることができるそのようなノードの例は、(パーソナルコンピュータ、ワークステーション、サーバ、もしくはメインフレームなどの)コンピュータ、(パーソナルデジタルアシスタント(PDA)、処理能力を有するモデムセルフォン、BlackBerry(商標)デバイスを含む無線電子メールデバイスなどの)ハンドヘルド無線デバイスおよび有線デバイス、(スキャナ、プリンタ、ファクシミリマシン、もしくは多機能文書マシンなどの)文書処理デバイス、または説明されたように、プロセッサの集まりがそれに接続される(ローカルエリアネットワークもしくはワイドエリアネットワークなどの)複合エンティティを含む。例えば、本開示との関連において、ノード自体が、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、(仮想プライベートネットワーク(VPN)などの)プライベートネットワーク、またはネットワークの集まりであることができる。
ノード間の通信は、通信ネットワークによって可能にされてよい。ノードは、通信ネットワークを用いて、連続的または断続的に接続されてよい。例として、本開示との関連において、通信ネットワークは、適切な帯域幅および情報セキュリティを提供する、デジタル通信インフラストラクチャであることができる。
通信ネットワークは、任意のタイプの規格、プロトコル、または技術を使用する、任意の周波数における、有線通信能力、無線通信能力、または両方の組み合わせを含むことができる。加えて、本実施形態においては、通信ネットワークは、プライベートネットワーク(例えば、VPN)、またはパブリックネットワーク(例えば、インターネット)であることができる。
通信ネットワークによって使用される例示的な無線プロトコルおよび技術の非包括的リストは、Bluetooth(商標)、汎用パケット無線サービス(GPRS)、セルラデジタルパケットデータ(CDPD)、モバイルソリューションプラットフォーム(MSP)、マルチメディアメッセージング(MMS)、無線アプリケーションプロトコル(WAP)、符号分割多元接続(CDMA)、ショートメッセージサービス(SMS)、無線マークアップ言語(WML)、ハンドヘルドデバイスマークアップ言語(HDML)、無線用バイナリランタイム環境(BREW)、無線アクセスネットワーク(RAN)、およびパケット交換コアネットワーク(PS-CN)を含んでよい。また、様々な世代の無線技術が含まれる。通信ネットワークによって使用される主に無線プロトコルおよび技術の例示的な非包括的リストは、非同期転送モード(ATM)、高度化された内部ゲートウェイルーティングプロトコル(EIGRP:enhanced interior gateway routing protocol)、フレームリレー(FR)、高レベルデータリンク制御(HDLC)、インターネット制御メッセージプロトコル(ICMP)、内部ゲートウェイルーティングプロトコル(IGRP)、ネットワーク間パケット交換(IPX)、ISDN、ポイントツーポイントプロトコル(PPP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ルーティング情報プロトコル(RIP)、およびユーザデータグラムプロトコル(UDP)を含む。当業者が認識するように、他の任意の知られた、または予想される無線または有線プロトコルおよび技術が、使用されることができる。
本開示の実施形態は、本明細書におけるオペレーションを実行するための装置を含んでよい。装置は、所望の目的のために特別に構築されてよく、またはそれは、デバイス内に記憶されたプログラムによって選択的に活性化または再構成される、汎用デバイスを備えてよい。
1つまたは複数の実施形態においては、本実施形態は、マシン実行可能命令で具体化される。命令は、命令を用いてプログラムされる処理デバイス、例えば、汎用または専用プロセッサに、本開示のステップを実行させるために、使用されることができる。あるいは、本開示のステップは、ステップを実行するための配線論理を含む特定のハードウェア構成要素によって、またはプログラムされたコンピュータ構成要素とカスタムハードウェア構成要素の任意の組み合わせによって、実行されることができる。例えば、本開示は、上で概要説明されたような、コンピュータプログラム製品として、提供されることができる。この実施形態においては、実施形態は、命令がその上に記憶されたマシン可読媒体を含むことができる。命令は、例示的な本実施形態に従って、プロセスまたは方法を実行するように、1つまたは複数の任意のプロセッサ(または他の電子デバイス)をプログラムするために、使用されることができる。加えて、本開示は、ダウンロードされ、コンピュータプログラム製品上に記憶されることもできる。ここでは、プログラムは、通信リンク(例えば、モデムまたはネットワーク接続)を介して、搬送波または他の伝搬媒体内に具体化されたデータ信号を用いて、リモートコンピュータ(例えば、サーバ)から要求コンピュータ(例えば、クライアント)に転送されることができ、最終的に、そのような信号は、後続する実行のために、コンピュータシステム上に記憶されてよい。
方法は、コンピュータまたは任意の命令実行システムによる使用のために、またはそれらとの関連において、プログラムコードを提供する、コンピュータ使用可能または可読記憶媒体から取得可能な、コンピュータプログラム製品において実施されることができる。コンピュータ使用可能または可読記憶媒体は、コンピュータ、もしくは命令実行システム、装置、もしくはデバイスによる使用のために、またはそれらとの関連において、プログラムを含むこと、または記憶することができる、任意の装置であることができる。
対応するプログラムコードを記憶および/または実行するのに適したデータ処理システムは、メモリ要素などのコンピュータ化されたデータ記憶デバイスに直接的または間接的に結合された、少なくとも1つのプロセッサを含むことができる。(キーボード、ディスプレイ、ポインティングデバイスなどを含むが、それらに限定されない)入力/出力(I/O)デバイスが、システムに結合されることができる。データ処理システムが、介在するプライベートまたはパブリックネットワークを通して、他のデータ処理システム、またはリモートプリンタもしくは記憶デバイスに結合されることを可能にするために、ネットワークアダプタも、システムに結合されてよい。ユーザとの相互作用を提供するために、LCD(液晶ディスプレイ)などの表示デバイス、または情報をユーザに表示するための別のタイプのモニタ、ならびにユーザがそれによって入力をコンピュータに提供することができる、キーボード、およびマウスまたはトラックボールなどの入力デバイスを備えるコンピュータ上において、特徴が実施されることができる。
コンピュータプログラムは、コンピュータにおいて直接的または間接的に使用されることができる、命令のセットであることができる。本明細書において説明されるシステムおよび方法は、コンパイル言語またはインタープリタ言語を含む、CUDA、OpenCL、Flash(商標)、JAVA(商標)、C++、C、C#、Python、Visual Basic(商標)、JavaScript(商標)、PHP、XML、HTMLなどのプログラミング言語、またはプログラミング言語の組み合わせを使用して、実施されることができ、スタンドアロンプログラムとして、またはコンピューティング環境における使用に適したモジュール、コンポーネント、サブルーチン、もしくは他のユニットとしてを含む、任意の形態で展開されることができる。ソフトウェアは、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むことができるが、それらに限定されない。プログラミングモジュール間のインターフェースを実施する際に、SOAP/HTTPなどのプロトコルが、使用されてよい。本明細書において説明される構成要素および機能性は、仮想化または非仮想化環境において動作する、Microsoft Windows(商標)、Apple(商標) Mac(商標)、iOS(商標)、Unix(商標)/X-Windows(商標)、Linux(商標)の異なるバージョンを含むが、それらに限定されない、任意のデスクトップオペレーティングシステム上において、ソフトウェア開発に適した任意のプログラミング言語を使用して、実施されてよい。システムは、ルビーオンレイルズ(Ruby on Rails)などの、ウェブアプリケーションフレームワークを使用して、実施されることができる。
命令からなるプログラムの実行に適したプロセッサは、任意の種類のコンピュータの、汎用および専用マイクロプロセッサ、ならびに単独のプロセッサ、または多数のプロセッサもしくはコアのうちの1つを含むが、それらに限定されない。プロセッサは、リードオンリメモリ、ランダムアクセスメモリ、両方、または本明細書において説明されるデータ記憶デバイスの任意の組み合わせなどの、コンピュータ化されたデータ記憶デバイスから、命令およびデータを受信し、記憶してよい。プロセッサは、電子デバイスの動作および実行を制御するように動作する、任意の処理回路または制御回路を含んでよい。
本明細書において説明されるシステム、モジュール、および方法は、ソフトウェア要素またはハードウェア要素の任意の組み合わせを使用して、実施されることができる。本明細書において説明されるシステム、モジュール、および方法は、単独で、または互いに組み合わさって動作する、1つまたは複数の仮想マシンを使用して、実施されることができる。物理的コンピューティングマシンプラットフォームを、ハードウェアコンピューティングプラットフォームまたはホスト上において動作する仮想化ソフトウェアの制御下で実行される、仮想マシンにカプセル化するために、任意の適用可能な仮想化ソリューションが、使用されることができる。仮想マシンは、仮想システムハードウェアとゲストオペレーティングシステムソフトウェアの両方を有することができる。
本明細書において説明されるシステムおよび方法は、データサーバなどのバックエンドコンポーネントを含む、またはアプリケーションサーバもしくはインターネットサーバなどのミドルウェアコンポーネントを含む、またはグラフィカルユーザインターフェースもしくはインターネットブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネントを含む、またはそれらの任意の組み合わせを含む、コンピュータシステムにおいて実施されることができる。システムの構成要素は、通信ネットワークなど、デジタルデータ通信の任意の形態または媒体によって接続されることができる。通信ネットワークの例は、例えば、LAN、WAN、ならびにインターネットを形成するコンピュータおよびネットワークを含む。
本開示の1つまたは複数の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家電製品、ミニコンピュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構成を用いて実践されてよい。本明細書において説明されるシステムおよび方法は、ネットワークを通してリンクされたリモート処理デバイスによってタスクが実行される、分散コンピューティング環境において実践されてもよい。
「コンピュータプログラム媒体」および「コンピュータ可読媒体」という用語は、リムーバブル記憶ドライブ、ハードディスクドライブ内に設置されたハードディスクなどの、しかし、それらに限定されない、媒体を一般に指すために、使用されてよい。これらのコンピュータプログラム製品は、ソフトウェアをコンピュータシステムに提供してよい。本明細書において説明されるシステムおよび方法は、そのようなコンピュータプログラム製品を対象としてよい。
「一実施形態」、「実施形態」、「例示的な実施形態」、「様々な実施形態」などに対する言及は、本開示の実施形態が、特定の特徴、構造、または特性を含んでよいが、あらゆる実施形態が、特定の特徴、構造、または特性を必ずしも含むわけではないことを示してよい。さらに、「一実施形態においては」または「例示的な実施形態においては」という句の繰り返される使用は、同じ実施形態を必ずしも指しているわけではないが、同じ実施形態を指してもよい。同様に、「例」に対する言及は、本開示の様々な例が、特定の特徴、構造、または特性を含んでよいが、あらゆる例が、特定の特徴、構造、または特性を必ずしも含むわけではないことを示してよい。さらに、「いくつかの例においては」という句の繰り返される使用は、同じ例を必ずしも指しているわけではないが、同じ例を指してもよい。
説明および特許請求の範囲において、「結合される」および「接続される」という用語が、それらの派生形とともに、使用されてよい。これらの用語は、互いに同義語として意図されていなくてよいことが、理解されるべきである。むしろ、特定の実施形態においては、「接続される」は、2つ以上の要素が、互いに物理的または電気的に直接接触していることを示すために、使用されてよい。「結合される」は、2つ以上の要素が、物理的または電気的に直接接触していることを意味してよい。しかしながら、「結合される」は、2つ以上の要素が、互いに直接接触しておらず、それでもなお、互いに協力し、または相互作用することを意味してもよい。
ここでは、また一般に、アルゴリズムは、所望の結果にいたる、行為またはオペレーションの自己矛盾のないシーケンスであると見なされてよい。これらは、物理量の物理的オペレーションを含む。必ずではないが、通常、これらの量は、記憶され、転送され、組み合わされ、比較され、他の方法でオペレーションされることが可能な、電気または磁気信号の形態を取る。主として、共通使用の理由で、これらの信号を、ビット、値、要素、シンボル、文字、項、または数などと呼ぶことが、時には便利であることが分かっている。しかしながら、これらおよび類似の用語のすべては、適切な物理量と関連付けられるべきであり、これらの量に適用される便利なラベルにすぎないことが、理解されるべきである。
特に別段の指摘がない限り、本明細書全体において、「処理する」、「計算する」、「算定する」、または「決定する」などの用語は、コンピューティングシステムのレジスタおよび/またはメモリ内の電子的などの物理量として表されるデータをオペレーションおよび/または変換して、コンピュータシステムのメモリ、レジスタ、または他のそのような情報記憶、伝送、もしくは表示デバイス内の物理量として同様に表される他のデータにする、コンピュータもしくはコンピューティングシステム、または類似の電子コンピューティングデバイスの、アクションおよび/またはプロセスを指すことが、理解されてよい。
同様の方式で、「プロセッサ」という用語は、レジスタおよび/またはメモリからの電子データを処理して、その電子データを、レジスタおよび/またはメモリ内に記憶されてよい他の電子データに変換する、任意のデバイス、またはデバイスの一部を指してよい。非限定的な例として、「プロセッサ」は、中央処理ユニット(CPU)、またはグラフィカル処理ユニット(GPU)であってよい。「コンピューティングプラットフォーム」は、1つまたは複数のプロセッサを備えてよい。本明細書において使用されるとき、「ソフトウェア」プロセスは、例えば、タスク、スレッド、およびインテリジェントエージェントなどの、経時的に仕事を実行するソフトウェアエンティティおよび/またはハードウェアエンティティを含んでよい。また、各プロセスは、命令を順次的または並列的、連続的または断続的に実施するための、多数のプロセスを指してよい。「システム」および「方法」という用語は、システムが1つまたは複数の方法を具体化してよく、方法がシステムと見なされてよい限り、本明細書においては、交換可能に使用される。
1つまたは複数の実施形態が、説明されたが、それらの様々な改変、追加、置換、および均等物が、本開示の範囲内に含まれる。
実施形態の説明において、それの一部を形成する添付の図面に対する参照が行われ、それは、特許請求される発明の特定の実施形態を実例として示している。他の実施形態が使用されてよく、構造的変更などの変更または改変が行われてよいことが、理解されるべきである。そのような実施形態、変更または改変は、意図された特許請求される発明に関する範囲からの逸脱であるとは限らない。ステップは、本明細書においては、ある順序で提示されてよいが、いくつかのケースにおいては、順序付けは、ある入力が、説明されるシステムおよび方法の機能を変更することなく、異なる時間に、または異なる順序で、提供されるように、変更されてよい。開示される手順も、異なる順序で実行されることができる。加えて、本明細書における様々な計算は、開示された順序で実行される必要はなく、計算の代替的な順序付けを使用する他の実施形態が、容易に実施されることができる。並べ替えられるのに加えて、計算は、同じ結果を有するサブ計算に分解されることもできる。
上の議論は、説明される技法の例示的な実施について説明するが、他のアーキテクチャが、説明される機能性を実施するために使用されてよく、それは、本開示の範囲内にあることが意図されている。さらに、議論の目的で、上では、責務の特定の分配が定義されたが、様々な機能および責務は、状況に応じて、異なる方法で、分配され、分割されてよい。
さらに、本発明は、構造的特徴および/または方法論的動作に特有の言葉で説明されたが、添付の特許請求の範囲において定義される本発明は、説明された特定の特徴または動作に必ずしも限定されないことが、理解されるべきである。むしろ、特定の特徴または動作は、特許請求の範囲を実施する例示的な形態として開示されている。
実施例の条項
A.1つ以上のプロセッサおよび前記1つ以上のプロセッサに通信可能に結合され、命令を記憶した1つ以上のコンピュータ可読記憶媒体を備え、前記命令は、環境を表すLIDARデータセットを受信し、前記LIDARデータセットをボクセル空間と関連付け、前記ボクセル空間は、複数のボクセルを含み、前記複数のボクセルの個々のボクセルと関連付けられた三次元データと関連付けられた面法線ベクトルを決定し、基準方向を決定し、前記基準方向は、自律車両の方位に対応し、前記面法線ベクトルおよび前記基準方向に少なくとも部分的に基づいて、前記個々のボクセルが局所的にフラットであると決定し、グランドクラスタを決定し、前記グランドクラスタは、前記自律車両についての運転可能な面を表し、前記グランドクラスタは、複数の局所的にフラットなボクセルを含み、前記複数の局所的にフラットなボクセルは、前記局所的にフラットなボクセルを含み、前記ボクセル空間から前記グランドクラスタを除去して前記ボクセル空間のサブセット決定し、前記ボクセル空間の前記サブセット内の隣接するボクセルをクラスタ化して少なくとも1つのオブジェクトを決定し、前記少なくとも1つのオブジェクトに少なくとも部分的に基づいて、前記自律車両についての軌道を生成する、ように前記プロセッサによって実行可能である、システム。
B.前記命令は、前記面法線ベクトルと前記基準方向との間で形成された角度が閾値を下回ると決定し、前記角度が前記閾値を下回ることに少なくとも部分的に基づいて、前記個々のボクセルが前記局所的にフラットなボクセルであると決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落Aに記載のシステム。
C.前記グランドクラスタは、所的にフラットなボクセルの第1のクラスタであり、前記命令は、前記第1のクラスタにおいて表されるLIDARデータの平均高さを第1の高さとして決定し、局所的にフラットなボクセルの前記第1のクラスタ内の第1のボクセルを、第1の選択されたボクセルとして選択し、局所的にフラットなボクセルの第2のクラスタ内の第2のボクセルを、第2の選択されたボクセルとして選択し、前記第2の選択されたボクセルにおいて表されるデータの平均高さを第2の高さとして決定し、前記第1の選択されたボクセルと関連付けられた第1の代表点と前記第2の選択されたボクセルと関連付けられた第2の代表点との間の距離を決定し、前記第1の高さと前記第2の高さとの間の高さの差を決定し、前記距離および前記高さの差に少なくとも部分的に基づいて、勾配を決定し、前記勾配が閾値を下回ることに少なくとも部分的に基づいて、局所的にフラットなボクセルの前記第1のクラスタおよび局所的にフラットなボクセルの前記第2のクラスタの少なくとも一部を含む更新されたグランドクラスタを決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落AまたはBに記載のシステム。
D.前記LIDARデータセットは、第1の時間における前記環境を表す第1のLIDARデータセットであり、前記命令は、第2の時間における前記環境を表す第2のLIDARデータセットを受信し、前記第2のLIDARデータセットを前記ボクセル空間と関連付け、前記第1のLIDARデータセットの少なくとも一部がオブジェクトを表すと決定し、前記第2のLIDARデータセットの少なくとも一部が前記オブジェクトを表すと決定し、差として、前記オブジェクトと関連付けられた前記第2のLIDARデータセットの少なくとも一部が、前記第1の時間における前記第1のオブジェクトによって前に占有されていなかった前記第2の時間における1つ以上のボクセルにマップすると決定し、前記差に少なくとも部分的に基づいて、前記第1のオブジェクトが動的オブジェクトであると決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落A乃至Cのいずれかの1つに記載のシステム。
E.前記LIDARデータセットは、第1の時間に受信された第1のLIDARデータセットであり、前記命令は、前記少なくとも1つのオブジェクトが前記第1の時間に前記ボクセル空間のボクセルの第1のサブセットを占有していると決定し、第2の時間に第2のLIDARデータセットを受信し、前記第2のLIDARデータセットの少なくとも1つのLIDARデータ点と関連付けられたベクトルが、前記第2の時間にボクセルの前記第1のサブセットの少なくとも一部を通じてトラバースすると決定し、ボクセルの前記第1のサブセットの前記少なくとも一部が前記第2の時間に占有されていないと決定し、ボクセルの前記第1のサブセットの前記少なくとも一部が前記第2の時間に占有されていないことに少なくとも部分的に基づいて、前記少なくとも1つのオブジェクトが動的オブジェクトであると決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落A乃至Dのいずれかの1つに記載のシステム。
F.前記命令は、オブジェクト識別子を前記少なくとも1つのオブジェクトを表すボクセルと関連付ける、ように前記1つ以上のプロセッサによってさらに実行可能である、段落A乃至Eのいずれかの1つに記載のシステム。
G.前記命令は、個々のボクセルと関連付けられた前記面法線ベクトルを決定するように、前記個々のボクセルと関連付けられた前記三次元データに少なくとも部分的に基づいて、共分散行列に対して固有値分解を実行する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落A乃至Fのいずれかの1つに記載のシステム。
H.前記グランドクラスタは、前記グランドクラスタを拡張するためのシード点として、前記自律車両に近接した少なくとも1つのボクセルを含む、段落A乃至Gのいずれかの1つに記載のシステム。
I.環境と関連付けられたLIDARデータセットを表すボクセル空間を受信するステップと、前記ボクセル空間のボクセルに対し、前記ボクセルによって表される三次元データと関連付けられた面法線ベクトルを決定するステップと、前記ボクセルと関連付けられた前記面法線ベクトルに少なくとも部分的に基づいて、前記ボクセルが局所的にフラットなボクセルであると決定するステップと、グランドクラスタを決定するステップであって、前記グランドクラスタは、複数の局所的にフラットなボクセルを含み、前記複数の局所的にフラットなボクセルは、前記局所的にフラットなボクセルを含む、ステップと、自律車両についての運転可能な面を表す前記グランドクラスタに少なくとも部分的に基づいて、前記自律車両についての軌道を生成するステップと、を備えた方法。
J.前記自律車両の方位に少なくとも部分的に基づいて、基準方位を決定するステップと、前記面法線ベクトルと前記基準方位と関連付けられたベクトルとの間の角度が閾値以内であると決定するステップと、前記角度が前記閾値を下回ることに少なくとも部分的に基づいて、前記ボクセルが前記局所的にフラットなボクセルであると決定するステップと、をさらに備えた段落Iに記載の方法。
K.前記局所的にフラットなボクセルは、第1の局所的にフラットなボクセルであり、前記グランドクラスタを決定するステップは、シードボクセルとして、前記第1の局所的にフラットなボクセルを選択するステップであって、前記シードボクセルは、前記自律車両に近接している、ステップと、第2の局所的にフラットなボクセルが前記シードボクセルに隣接していると決定するステップと、前記シードボクセルおよび前記第2の局所的にフラットなボクセルを前記グランドクラスタと関連付けるステップと、をさらに備えた段落IまたはJに記載の方法。
L.前記ボクセル空間のサブセットを識別するように、前記グランドクラスタと関連付けられたボクセルを前記ボクセル空間から抽出するステップと、第1のオブジェクトを決定するようにボクセルの第1のグループをクラスタ化するステップであって、ボクセルの前記第1のグループの個々の第1のボクセルは、ボクセルの前記第1のグループの少なくとも1つの他の第1のボクセルに隣接している、ステップと、第2のオブジェクトを決定するようにボクセルの第2のグループをクラスタ化するステップであって、ボクセルの前記第2のグループの個々の第2のボクセルは、ボクセルの前記第2のグループの少なくとも1つの他の第2のボクセルに隣接し、前記個々の第1のボクセルは、前記個々の第2のボクセルに隣接していない、ステップと、をさらに備えた段落I乃至Kのいずれかの1つに記載の方法。
M.第1の局所的にフラットなボクセルの第1のクラスタを決定するステップと、第2の局所的にフラットなボクセルの第2のクラスタを決定するステップと、局所的にフラットなボクセルの前記第1のクラスタと局所的にフラットなボクセルの前記第2のクラスタとの間の高さ勾配を決定するステップと、前記高さ勾配が勾配閾値を下回ると決定するステップと、前記グランドクラスタを表すように、前記高さ勾配が前記勾配閾値を下回ることに少なくとも部分的に基づいて、前記第1のクラスタを前記第2のクラスタと結合するステップと、をさらに備えた段落I乃至Lのいずれかの1つに記載の方法。
N.前記ボクセル空間において表される少なくとも1つの動的オブジェクトを決定するように、経時的にボクセルの占有を決定するステップと、前記ボクセル空間において表される前記少なくとも1つの動的オブジェクトに少なくとも部分的に基づいて、前記軌道を生成するステップと、をさらに備えた段落I乃至Mのいずれかの1つに記載の方法。
O.1つ以上のプロセッサおよび前記1つ以上のプロセッサに通信可能に結合され、命令を記憶した1つ以上のコンピュータ可読記憶媒体を備え、前記命令は、少なくとも1つのLIDARセンサを使用して、環境を表すLIDARデータセットを捕捉し、前記LIDARデータセットをボクセル空間と関連付け、前記ボクセル空間は、複数のボクセルを含み、前記ボクセル空間のボクセルに対し、前記ボクセルによって表される三次元データと関連付けられた面法線ベクトルを決定し、前記ボクセルと関連付けられた前記面法線ベクトルに少なくとも部分的に基づいて、前記ボクセルが局所的にフラットなボクセルであると決定し、グランドクラスタを決定し、前記グランドクラスタは、複数の局所的にフラットなボクセルを含み、前記複数の局所的にフラットなボクセルは、前記局所的にフラットなボクセルを含む、ように前記プロセッサによって実行可能である、システム。
P.前記命令は、基準方位を決定し、前記面法線ベクトルと前記基準方位と関連付けられたベクトルとの間で形成された角度が閾値を下回ると決定し、前記角度が前記閾値を下回ることに少なくとも部分的に基づいて、前記ボクセルが前記局所的にフラットなボクセルであると決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落Oに記載のシステム。
Q.前記命令は、前記ボクセル空間のサブセットを識別するように、前記グランドクラスタと関連付けられたボクセルを前記ボクセル空間から抽出し、ボクセルのクラスタを決定するようにボクセルのグループをクラスタ化し、ボクセルの前記グループの個々のボクセルは、ボクセルの前記グループの少なくとも1つの他のボクセルに隣接し、ボクセルの前記クラスタと関連付けられたボクセルの数がボクセルの閾値数を下回ると決定し、ボクセルの前記クラスタがオブジェクトでないと決定する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落OまたはPに記載のシステム。
R.前記命令は、第1の局所的にフラットなボクセルの第1のクラスタを決定し、第2の局所的にフラットなボクセルの第2のクラスタを決定し、局所的にフラットなボクセルの前記第1のクラスタと局所的にフラットなボクセルの前記第2のクラスタとの間の高さ勾配を決定し、前記高さ勾配が勾配閾値を下回ると決定し、前記グランドクラスタを表すように、前記高さ勾配が前記勾配閾値を下回ることに少なくとも部分的に基づいて、前記第1のクラスタを前記第2のクラスタと結合する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落O乃至Qのいずれかの1つに記載のシステム。
S.前記命令は、前記ボクセル空間において表される少なくとも1つの動的オブジェクトを決定するように、経時的にボクセルの占有を決定し、前記ボクセル空間において表される前記少なくとも1つの動的オブジェクトに少なくとも部分的に基づいて、前記軌道を生成する、ように前記1つ以上のプロセッサによってさらに実行可能である、段落O乃至Rのいずれかの1つに記載のシステム。
T.前記命令は、前記自律車両についての運転可能な面を表す前記グランドクラスタに少なくとも部分的に基づいて、自律車両についての軌道を生成し、前記軌道に少なくとも部分的に基づいて、前記自律車両を制御するように前記1つ以上のプロセッサによってさらに実行可能である、段落O乃至Sのいずれかの1つに記載のシステム。
上記説明された実施例の条項が1つの特定の実装態様に関して説明されてきたが、本明細書のコンテキストでは、実施例の条項の内容は、方法、デバイス、システム、コンピュータ可読媒体、および/または別の実装態様を介して実装されることもできることを理解されるべきである。

Claims (15)

  1. 環境と関連付けられたLIDARデータセットを表すボクセル空間を受信するステップと、
    前記ボクセル空間のボクセルに対し、前記ボクセルによって表される三次元データと関連付けられた面法線ベクトルを決定するステップと、
    自律車両の方位に対応する基準方位を決定するステップと、
    前記ボクセルと関連付けられた前記面法線ベクトルと、前記基準方位とに少なくとも部分的に基づいて、前記ボクセルが局所的にフラットなボクセルであると決定するステップと、
    前記自律車両が運転可能な面を表すグランドクラスタを決定するステップであって、前記グランドクラスタは、複数の局所的にフラットなボクセルを含み、前記複数の局所的にフラットなボクセルは、前記局所的にフラットなボクセルを含む、ステップと、
    記グランドクラスタに少なくとも部分的に基づいて、前記自律車両についての軌道を生成するステップと、
    を備える、方法。
  2. 記面法線ベクトルと前記基準方位と関連付けられたベクトルとの間の角度が閾値以内であると決定するステップと、
    前記角度が前記閾値を下回ることに少なくとも部分的に基づいて、前記ボクセルが前記局所的にフラットなボクセルであると決定するステップと、
    をさらに備える、
    請求項1に記載の方法。
  3. 前記局所的にフラットなボクセルは、第1の局所的にフラットなボクセルであり、前記グランドクラスタを決定するステップは、
    シードボクセルとして、前記第1の局所的にフラットなボクセルを選択するステップであって、前記シードボクセルは、前記自律車両に近接している、ステップと、
    第2の局所的にフラットなボクセルが前記シードボクセルに隣接していると決定するステップと、
    前記シードボクセルおよび前記第2の局所的にフラットなボクセルを前記グランドクラスタと関連付けるステップと、
    をさらに備える、
    請求項1または2に記載の方法。
  4. 前記ボクセル空間のサブセットを識別するように、前記グランドクラスタと関連付けられたボクセルを前記ボクセル空間から抽出するステップと、
    第1のオブジェクトを決定するようにボクセルの第1のグループをクラスタ化するステップであって、ボクセルの前記第1のグループの個々の第1のボクセルは、ボクセルの前記第1のグループの少なくとも1つの他の第1のボクセルに隣接している、ステップと、
    第2のオブジェクトを決定するようにボクセルの第2のグループをクラスタ化するステップであって、ボクセルの前記第2のグループの個々の第2のボクセルは、ボクセルの前記第2のグループの少なくとも1つの他の第2のボクセルに隣接し、前記個々の第1のボクセルは、前記個々の第2のボクセルに隣接していない、ステップと、
    をさらに備える、
    請求項1または2に記載の方法。
  5. 第1の局所的にフラットなボクセルの第1のクラスタを決定するステップと、
    第2の局所的にフラットなボクセルの第2のクラスタを決定するステップと、
    局所的にフラットなボクセルの前記第1のクラスタと局所的にフラットなボクセルの前記第2のクラスタとの間の高さ勾配を決定するステップと、
    前記高さ勾配が勾配閾値を下回ると決定するステップと、
    前記グランドクラスタを表すように、前記高さ勾配が前記勾配閾値を下回ることに少なくとも部分的に基づいて、前記第1のクラスタを前記第2のクラスタと結合するステップと、
    をさらに備える、
    請求項1または2に記載の方法。
  6. 前記ボクセル空間において表される少なくとも1つの動的オブジェクトを決定するように、経時的にボクセルの占有を決定するステップと、
    前記ボクセル空間において表される前記少なくとも1つの動的オブジェクトに少なくとも部分的に基づいて、前記軌道を生成するステップと、
    をさらに備える、
    請求項1または2に記載の方法。
  7. 1つ以上のプロセッサと、
    前記1つ以上のプロセッサに通信可能に結合され、命令を記憶した1つ以上のコンピュータ可読記憶媒体と、を備え、前記命令は、前記1つ以上のプロセッサに、
    少なくとも1つのLIDARセンサを使用して、環境を表すLIDARデータセットを捕捉することと
    前記LIDARデータセットをボクセル空間と関連付けることであって、前記ボクセル空間は、複数のボクセルを含ことと、
    前記ボクセル空間のボクセルに対し、前記ボクセルによって表される三次元データと関連付けられた面法線ベクトルを決定することと
    自律車両の方位に対応する基準方位を決定することと、
    前記ボクセルと関連付けられた前記面法線ベクトルと前記基準方位とに少なくとも部分的に基づいて、前記ボクセルが局所的にフラットなボクセルであると決定することと
    前記自律車両が運転可能な面を表すグランドクラスタを決定することであって、前記グランドクラスタは、複数の局所的にフラットなボクセルを含み、前記複数の局所的にフラットなボクセルは、前記局所的にフラットなボクセルを含む、ことと、
    実行させる、システム。
  8. 記命令は、前記1つ以上のプロセッサに、
    前記面法線ベクトルと前記基準方位と関連付けられたベクトルとの間で形成された角度が閾値を下回ると決定することと
    前記角度が前記閾値を下回ることに少なくとも部分的に基づいて、前記ボクセルが前記局所的にフラットなボクセルであると決定することと
    さらに実行させる、
    請求項7に記載のシステム。
  9. 前記命令は、前記1つ以上のプロセッサに、
    前記ボクセル空間のサブセットを識別するように、前記グランドクラスタと関連付けられたボクセルを前記ボクセル空間から抽出することと
    ボクセルのクラスタを決定するようにボクセルのグループをクラスタ化することであって、ボクセルの前記グループの個々のボクセルは、ボクセルの前記グループの少なくとも1つの他のボクセルに隣接している、ことと、
    さらに実行させる、
    請求項7または8に記載のシステム。
  10. 前記LIDARデータセットは、第1の時間に受信された第1のLIDARデータセットであり、前記命令は、前記1つ以上のプロセッサに、
    ボクセルの前記クラスタが少なくとも1つのオブジェクトと表すと決定することと
    前記少なくとも1つのオブジェクトが前記第1の時間に前記ボクセル空間のボクセルの第1のサブセットを占有していると決定することと
    第2の時間に第2のLIDARデータセットを受信することと
    前記第2のLIDARデータセットの少なくとも1つのLIDARデータ点と関連付けられたベクトルが、前記第2の時間にボクセルの前記第1のサブセットの少なくとも一部を通じてトラバースすると決定することと
    ボクセルの前記第1のサブセットの前記少なくとも一部が前記第2の時間に占有されていないと決定することと
    ボクセルの前記第1のサブセットの前記少なくとも一部が前記第2の時間に占有されていないことに少なくとも部分的に基づいて、前記少なくとも1つのオブジェクトが動的オブジェクトであると決定することと
    さらに実行させる、
    請求項9に記載のシステム。
  11. 前記命令は、前記1つ以上のプロセッサに、
    ボクセルの前記クラスタと関連付けられたボクセルの数がボクセルの閾値数を下回ると決定することと
    ボクセルの前記クラスタがオブジェクトでないと決定することと
    さらに実行させる、
    請求項9に記載のシステム。
  12. 前記命令は、前記1つ以上のプロセッサに、
    第1の局所的にフラットなボクセルの第1のクラスタを決定することと
    第2の局所的にフラットなボクセルの第2のクラスタを決定することと
    局所的にフラットなボクセルの前記第1のクラスタと局所的にフラットなボクセルの前記第2のクラスタとの間の高さ勾配を決定することと
    前記高さ勾配が勾配閾値を下回ると決定することと
    前記グランドクラスタを表すように、前記高さ勾配が前記勾配閾値を下回ることに少なくとも部分的に基づいて、前記第1のクラスタを前記第2のクラスタと結合することと
    さらに実行させる、
    請求項7または8に記載のシステム。
  13. 前記命令は、前記1つ以上のプロセッサに、
    前記ボクセル空間において表される少なくとも1つの動的オブジェクトを決定するように、経時的にボクセルの占有を決定することと
    前記ボクセル空間において表される前記少なくとも1つの動的オブジェクトに少なくとも部分的に基づいて、自律車両についての軌道を生成することと
    さらに実行させる、
    請求項7または8に記載のシステム。
  14. 前記命令は、前記1つ以上のプロセッサに、
    自律車両についての運転可能な面を表す前記グランドクラスタに少なくとも部分的に基づいて、前記自律車両についての軌道を生成することと
    前記軌道に少なくとも部分的に基づいて、前記自律車両を制御することと
    さらに実行させる、
    請求項7または8に記載のシステム。
  15. 前記命令は、前記1つ以上のプロセッサに、
    前記ボクセルと関連付けられた前記面法線ベクトルを決定するように、前記ボクセルと関連付けられた前記三次元データに少なくとも部分的に基づいて、共分散行列に対して固有値分解を実行すること
    さらに実行させる、
    請求項7または8に記載のシステム。
JP2019567592A 2017-06-14 2018-06-07 ボクセルベースのグランド平面推定およびオブジェクト区分化 Active JP7203769B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022209911A JP7507844B2 (ja) 2017-06-14 2022-12-27 ボクセルベースのグランド平面推定及びオブジェクト区分化

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/622,905 2017-06-14
US15/622,905 US10444759B2 (en) 2017-06-14 2017-06-14 Voxel based ground plane estimation and object segmentation
PCT/US2018/036410 WO2018231616A1 (en) 2017-06-14 2018-06-07 Voxel based ground plane estimation and object segmentation

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022209911A Division JP7507844B2 (ja) 2017-06-14 2022-12-27 ボクセルベースのグランド平面推定及びオブジェクト区分化

Publications (2)

Publication Number Publication Date
JP2020524330A JP2020524330A (ja) 2020-08-13
JP7203769B2 true JP7203769B2 (ja) 2023-01-13

Family

ID=62751587

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019567592A Active JP7203769B2 (ja) 2017-06-14 2018-06-07 ボクセルベースのグランド平面推定およびオブジェクト区分化
JP2022209911A Active JP7507844B2 (ja) 2017-06-14 2022-12-27 ボクセルベースのグランド平面推定及びオブジェクト区分化

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022209911A Active JP7507844B2 (ja) 2017-06-14 2022-12-27 ボクセルベースのグランド平面推定及びオブジェクト区分化

Country Status (5)

Country Link
US (2) US10444759B2 (ja)
EP (1) EP3639241B1 (ja)
JP (2) JP7203769B2 (ja)
CN (1) CN110770790B (ja)
WO (1) WO2018231616A1 (ja)

Families Citing this family (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130113809A1 (en) * 2011-11-07 2013-05-09 Nvidia Corporation Technique for inter-procedural memory address space optimization in gpu computing compiler
JP7076372B2 (ja) * 2015-10-12 2022-05-27 グラウンドプルーブ・ピーティーワイ・リミテッド 斜面安定性ライダー
WO2017125512A1 (en) * 2016-01-20 2017-07-27 Koninklijke Philips N.V. Occupancy sensing system and sensing method
US10066946B2 (en) 2016-08-26 2018-09-04 Here Global B.V. Automatic localization geometry detection
JP6772944B2 (ja) 2017-04-19 2020-10-21 トヨタ自動車株式会社 自動運転システム
US10489663B2 (en) * 2017-04-24 2019-11-26 Toyota Research Institute, Inc. Systems and methods for identifying changes within a mapped environment
US10444759B2 (en) 2017-06-14 2019-10-15 Zoox, Inc. Voxel based ground plane estimation and object segmentation
JP6833630B2 (ja) * 2017-06-22 2021-02-24 株式会社東芝 物体検出装置、物体検出方法およびプログラム
CN109214248B (zh) * 2017-07-04 2022-04-29 阿波罗智能技术(北京)有限公司 用于识别无人驾驶车辆的激光点云数据的方法和装置
US10816354B2 (en) 2017-08-22 2020-10-27 Tusimple, Inc. Verification module system and method for motion-based lane detection with multiple sensors
US10970518B1 (en) * 2017-11-14 2021-04-06 Apple Inc. Voxel-based feature learning network
US10535138B2 (en) 2017-11-21 2020-01-14 Zoox, Inc. Sensor data segmentation
US10713563B2 (en) * 2017-11-27 2020-07-14 Technische Universiteit Eindhoven Object recognition using a convolutional neural network trained by principal component analysis and repeated spectral clustering
US10620637B2 (en) * 2017-11-29 2020-04-14 GM Global Technology Operations LLC Systems and methods for detection, classification, and geolocation of traffic objects
US20190204845A1 (en) 2017-12-29 2019-07-04 Waymo Llc Sensor integration for large autonomous vehicles
US20230408264A1 (en) * 2018-02-14 2023-12-21 Tusimple, Inc. Lane marking localization and fusion
US11009356B2 (en) * 2018-02-14 2021-05-18 Tusimple, Inc. Lane marking localization and fusion
US11009365B2 (en) * 2018-02-14 2021-05-18 Tusimple, Inc. Lane marking localization
US11157527B2 (en) 2018-02-20 2021-10-26 Zoox, Inc. Creating clean maps including semantic information
US10776983B2 (en) 2018-02-27 2020-09-15 Nvidia Corporation Analysis of point cloud data using depth and texture maps
US11093759B2 (en) * 2018-03-06 2021-08-17 Here Global B.V. Automatic identification of roadside objects for localization
DE102018205879A1 (de) * 2018-04-18 2019-10-24 Volkswagen Aktiengesellschaft Verfahren, Vorrichtung und computerlesbares Speichermedium mit Instruktionen zur Verarbeitung von Sensordaten
US10489918B1 (en) * 2018-05-09 2019-11-26 Figure Eight Technologies, Inc. Video object tracking
US11587204B2 (en) * 2018-06-20 2023-02-21 Metawave Corporation Super-resolution radar for autonomous vehicles
DE102018115895A1 (de) * 2018-06-30 2020-01-02 Bayerische Motoren Werke Aktiengesellschaft Verfahren und System zur Erkennung von Hindernissen
US10685476B2 (en) * 2018-07-31 2020-06-16 Intel Corporation Voxels sparse representation
JP7119724B2 (ja) * 2018-08-01 2022-08-17 トヨタ自動車株式会社 軸ずれ検出装置及び車両
US10679367B2 (en) * 2018-08-13 2020-06-09 Hand Held Products, Inc. Methods, systems, and apparatuses for computing dimensions of an object using angular estimates
USD882426S1 (en) 2018-09-17 2020-04-28 Waymo Llc Integrated sensor assembly
US11126915B2 (en) * 2018-10-15 2021-09-21 Sony Corporation Information processing apparatus and information processing method for volume data visualization
US11592524B2 (en) * 2018-11-02 2023-02-28 Waymo Llc Computation of the angle of incidence of laser beam and its application on reflectivity estimation
US11043005B2 (en) * 2018-11-23 2021-06-22 Volvo Car Corporation Lidar-based multi-person pose estimation
US10936902B1 (en) 2018-11-27 2021-03-02 Zoox, Inc. Training bounding box selection
US11010907B1 (en) * 2018-11-27 2021-05-18 Zoox, Inc. Bounding box selection
US11391844B2 (en) * 2018-12-19 2022-07-19 Fca Us Llc Detection and tracking of road-side pole-shaped static objects from LIDAR point cloud data
US11675083B2 (en) * 2019-01-03 2023-06-13 Nvidia Corporation Removal of ephemeral points from point cloud of a high-definition map for navigating autonomous vehicles
KR102193950B1 (ko) * 2019-01-04 2020-12-22 주식회사 서울로보틱스 센서를 이용하여 획득한 공간 정보를 활용하는 차량 및 센싱 장치, 그리고 이를 위한 서버
WO2020141694A1 (en) 2019-01-04 2020-07-09 Seoul Robotics Co., Ltd. Vehicle using spatial information acquired using sensor, sensing device using spatial information acquired using sensor, and server
DK201970146A1 (en) * 2019-01-08 2020-07-14 Aptiv Tech Ltd Classifying perceived objects based on activity
CN109814112A (zh) * 2019-01-15 2019-05-28 北京百度网讯科技有限公司 一种超声波雷达与激光雷达信息融合方法和系统
US11520347B2 (en) * 2019-01-23 2022-12-06 Baidu Usa Llc Comprehensive and efficient method to incorporate map features for object detection with LiDAR
CN111771206B (zh) * 2019-01-30 2024-05-14 百度时代网络技术(北京)有限公司 用于自动驾驶车辆的地图分区系统
US10803333B2 (en) * 2019-01-30 2020-10-13 StradVision, Inc. Method and device for ego-vehicle localization to update HD map by using V2X information fusion
US20200256999A1 (en) * 2019-02-07 2020-08-13 Atulya Yellepeddi Lidar techniques for autonomous vehicles
US11308639B2 (en) 2019-03-12 2022-04-19 Volvo Car Corporation Tool and method for annotating a human pose in 3D point cloud data
US11287266B2 (en) 2019-03-13 2022-03-29 Here Global B.V. Maplets for maintaining and updating a self-healing high definition map
US11096026B2 (en) * 2019-03-13 2021-08-17 Here Global B.V. Road network change detection and local propagation of detected change
CN113454487B (zh) * 2019-03-13 2024-05-28 千叶工业大学 信息处理装置以及移动机器人
US11287267B2 (en) 2019-03-13 2022-03-29 Here Global B.V. Maplets for maintaining and updating a self-healing high definition map
US11402220B2 (en) 2019-03-13 2022-08-02 Here Global B.V. Maplets for maintaining and updating a self-healing high definition map
US11255680B2 (en) 2019-03-13 2022-02-22 Here Global B.V. Maplets for maintaining and updating a self-healing high definition map
US11280622B2 (en) 2019-03-13 2022-03-22 Here Global B.V. Maplets for maintaining and updating a self-healing high definition map
EP3716014B1 (de) * 2019-03-26 2023-09-13 Siemens Healthcare GmbH Übertragen eines zustands zwischen vr-umgebungen
CN110458805B (zh) * 2019-03-26 2022-05-13 华为技术有限公司 一种平面检测方法、计算设备以及电路系统
US11168985B2 (en) * 2019-04-01 2021-11-09 GM Global Technology Operations LLC Vehicle pose determining system and method
KR20200117772A (ko) * 2019-04-05 2020-10-14 삼성전자주식회사 전자 장치 및 그 제어 방법
CN113613994B (zh) * 2019-04-09 2024-06-18 株式会社Ihi 形状导出装置及卸货装置
DE102019111315A1 (de) * 2019-05-02 2020-11-05 Horsch Leeb Application Systems Gmbh Autonome landwirtschaftliche Arbeitsmaschine und Verfahren zu deren Betrieb
US12056820B2 (en) * 2019-05-17 2024-08-06 Sdc U.S. Smilepay Spv Three-dimensional modeling toolkit
US11227401B1 (en) * 2019-05-22 2022-01-18 Zoox, Inc. Multiresolution voxel space
RU2767955C1 (ru) 2019-05-27 2022-03-22 Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" Способы и системы для определения компьютером наличия динамических объектов
US11294384B2 (en) * 2019-06-03 2022-04-05 The Boeing Company Vehicle navigation using point cloud decimation
US11170567B2 (en) * 2019-06-28 2021-11-09 Woven Planet North America, Inc. Dynamic object detection model based on static map collection data
WO2021007117A1 (en) * 2019-07-05 2021-01-14 DeepMap Inc. Generating training data for deep learning models for building high definition maps
JP2021016547A (ja) * 2019-07-19 2021-02-15 株式会社スクウェア・エニックス プログラム、記録媒体、物体検出装置、物体検出方法及び物体検出システム
US11875678B2 (en) * 2019-07-19 2024-01-16 Zoox, Inc. Unstructured vehicle path planner
JP7165630B2 (ja) * 2019-07-24 2022-11-04 本田技研工業株式会社 認識システム、車両制御システム、認識方法、およびプログラム
US11074464B2 (en) 2019-07-25 2021-07-27 Ford Global Technologies, Llc Defining boundary for detected object
CN110531759B (zh) * 2019-08-02 2020-09-22 深圳大学 机器人探索路径生成方法、装置、计算机设备和存储介质
CN114503043A (zh) * 2019-08-06 2022-05-13 波士顿动力公司 受限移动性建图
US11244193B2 (en) * 2019-08-07 2022-02-08 Here Global B.V. Method, apparatus and computer program product for three dimensional feature extraction from a point cloud
US11347231B2 (en) * 2019-08-07 2022-05-31 Waymo Llc Object localization for autonomous driving by visual tracking and image reprojection
RU2745804C1 (ru) 2019-11-06 2021-04-01 Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" Способ и процессор для управления перемещением в полосе движения автономного транспортного средства
US11614742B2 (en) * 2019-11-27 2023-03-28 Zoox, Inc. Height estimation using sensor data
KR20210065728A (ko) * 2019-11-27 2021-06-04 재단법인 지능형자동차부품진흥원 저채널 3차원 라이다센서를 이용한 희소점군 기반의 위치인식 방법 및 장치
JPWO2021112177A1 (ja) * 2019-12-04 2021-06-10
DE102019219750B4 (de) * 2019-12-16 2021-11-25 Zf Friedrichshafen Ag Fahrerassistenzsystem und Verfahren zum Detektieren von Objektbarrieren in 3D-Punktewolken
RU2744012C1 (ru) * 2019-12-24 2021-03-02 Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" Способы и системы для автоматизированного определения присутствия объектов
JP2021113743A (ja) * 2020-01-20 2021-08-05 ソニーセミコンダクタソリューションズ株式会社 距離測定装置、距離測定方法、プログラム
US11741620B1 (en) * 2020-01-24 2023-08-29 Apple Inc. Plane detection using depth sensor and semantic information
US11704576B1 (en) * 2020-01-29 2023-07-18 Arva Intelligence Corp. Identifying ground types from interpolated covariates
US11315329B1 (en) * 2020-02-25 2022-04-26 Facebook Technologies, Llc. Scene reconstruction from sparse data
US20210278852A1 (en) * 2020-03-05 2021-09-09 Uatc, Llc Systems and Methods for Using Attention Masks to Improve Motion Planning
US12013457B2 (en) * 2020-03-05 2024-06-18 Uatc, Llc Systems and methods for integrating radar data for improved object detection in autonomous vehicles
US11783490B2 (en) * 2020-03-19 2023-10-10 Objectvideo Labs, Llc Ground plane filtering of video events
EP3893150A1 (en) 2020-04-09 2021-10-13 Tusimple, Inc. Camera pose estimation techniques
DE102020204592A1 (de) * 2020-04-09 2021-10-14 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zur Verarbeitung von Radardaten und Radarsystem
CN111539279B (zh) * 2020-04-14 2023-08-15 杭州鸿泉物联网技术股份有限公司 道路限高高度检测方法、装置、设备及存储介质
US11410546B2 (en) 2020-05-18 2022-08-09 Toyota Research Institute, Inc. Bird's eye view based velocity estimation
US11625839B2 (en) 2020-05-18 2023-04-11 Toyota Research Institute, Inc. Bird's eye view based velocity estimation via self-supervised learning
CN115836299A (zh) * 2020-05-27 2023-03-21 华为技术有限公司 使用卷积神经网络(cnn)来处理包括由用于测量距离的2d或3d传感器提供的空间信息的扫描的数据流
US11541903B2 (en) * 2020-06-03 2023-01-03 Waymo Llc Autonomous driving with surfel maps
KR20230052874A (ko) * 2020-06-19 2023-04-20 커먼웰쓰 사이언티픽 앤 인더스트리알 리서치 오거니제이션 채굴용 데이터 모델
DE102020209097A1 (de) * 2020-07-21 2022-01-27 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Fahrerassistenzsystem zur Verarbeitung von Umfelddaten der Umgebung eines Fahrzeugs
US10955545B1 (en) * 2020-09-01 2021-03-23 TeleqoTech Mapping geographic areas using lidar and network data
US11417110B2 (en) 2020-09-09 2022-08-16 Waymo Llc Annotated surfel maps
US11561552B2 (en) * 2020-09-15 2023-01-24 Waymo Llc Detecting environment changes using surfel data
CN112269844B (zh) * 2020-09-24 2021-08-06 桂林电子科技大学 基于大规模轨迹数据的通用伴随模式分布式挖掘方法
US11521394B2 (en) * 2020-10-09 2022-12-06 Motional Ad Llc Ground plane estimation using LiDAR semantic network
CN112372632A (zh) * 2020-10-12 2021-02-19 达闼机器人有限公司 一种机械臂动作控制方法、设备及计算机可读存储介质
US11623661B2 (en) * 2020-10-12 2023-04-11 Zoox, Inc. Estimating ground height based on lidar data
JP2022071750A (ja) * 2020-10-28 2022-05-16 京セラ株式会社 電子機器、電子機器の制御方法、及びプログラム
CN116529784A (zh) * 2020-11-05 2023-08-01 德斯拜思有限公司 用于增加激光雷达数据的方法和系统
CN112446952B (zh) * 2020-11-06 2024-01-26 杭州易现先进科技有限公司 三维点云法向量的生成方法、装置、电子设备及存储介质
TWI768548B (zh) * 2020-11-19 2022-06-21 財團法人資訊工業策進會 定位用基礎資訊產生系統與方法以及自身定位判斷裝置
KR20220072146A (ko) * 2020-11-25 2022-06-02 삼성전자주식회사 전자 장치 및 그 제어 방법
EP4006588A1 (en) 2020-11-27 2022-06-01 Argo AI GmbH Method and a processing unit for reconstructing the surface topology of a ground surface in an environment of a motor vehicle and motor vehicle comprising such a processing unit
CN116097305A (zh) * 2020-12-23 2023-05-09 深圳元戎启行科技有限公司 点云法向量的生成方法、装置、计算机设备和存储介质
US20220269900A1 (en) * 2021-02-19 2022-08-25 Teraki Gmbh Low level sensor fusion based on lightweight semantic segmentation of 3d point clouds
RU2767831C1 (ru) * 2021-03-26 2022-03-22 Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" Способы и электронные устройства для обнаружения объектов в окружении беспилотного автомобиля
US20220326382A1 (en) * 2021-04-09 2022-10-13 Motional Ad Llc Adaptive point cloud generation for autonomous vehicles
US20240272645A1 (en) * 2021-05-28 2024-08-15 Yamabiko Corporation Information processing system, work machine, and program
CN115509214B (zh) * 2021-06-04 2024-03-15 同方威视技术股份有限公司 定位控制方法和装置、自主充电控制装置、方法及系统
US20230033908A1 (en) * 2021-07-29 2023-02-02 Stocked Robotics, Inc. Ground plane cancellation for collision avoidance system
US11807271B2 (en) * 2021-07-30 2023-11-07 Ford Global Technologies, Llc Method, system, and computer program product for resolving level ambiguity for radar systems of autonomous vehicles
US11954914B2 (en) * 2021-08-02 2024-04-09 Nvidia Corporation Belief propagation for range image mapping in autonomous machine applications
US11948381B2 (en) * 2021-08-20 2024-04-02 Motional Ad Llc Determining object mobility parameters using an object sequence
US11915436B1 (en) * 2021-08-30 2024-02-27 Zoox, Inc. System for aligning sensor data with maps comprising covariances
US20230089897A1 (en) * 2021-09-23 2023-03-23 Motional Ad Llc Spatially and temporally consistent ground modelling with information fusion
US11999352B2 (en) 2021-12-15 2024-06-04 Industrial Technology Research Institute Method and system for extracting road data and method and system for controlling self-driving car
US20230192121A1 (en) * 2021-12-22 2023-06-22 Gm Cruise Holdings Llc Class-aware depth data clustering
US20230260136A1 (en) * 2022-02-15 2023-08-17 Nvidia Corporation Dynamic object detection using lidar data for autonomous machine systems and applications
DE102022001208A1 (de) * 2022-04-08 2023-10-12 Mercedes-Benz Group AG Verfahren zur Prädiktion von Trajektorien von Objekten
US11623658B1 (en) * 2022-05-19 2023-04-11 Aurora Operations, Inc. System and method for generating information on remainder of measurement using sensor data
US12117529B1 (en) 2022-06-22 2024-10-15 Zoox, Inc. Drift detection
CN115222988B (zh) * 2022-07-17 2024-06-18 桂林理工大学 激光雷达点云数据城市地物PointEFF精细分类方法
CN115035288A (zh) * 2022-08-10 2022-09-09 菲特(天津)检测技术有限公司 一种广义少样本目标检测的优化梯度方法及系统
US20240064334A1 (en) * 2022-08-12 2024-02-22 Tencent America LLC Motion field coding in dynamic mesh compression
WO2024073088A1 (en) * 2022-09-30 2024-04-04 Tesla, Inc. Modeling techniques for vision-based path determination
US20240144174A1 (en) * 2022-10-26 2024-05-02 Dell Products L.P. Far-edge intensive processing for so-maps
CN116363163B (zh) * 2023-03-07 2023-11-14 华中科技大学 基于事件相机的空间目标检测跟踪方法、系统及存储介质
US20240312188A1 (en) * 2023-03-17 2024-09-19 Qualcomm Incorporated Adaptive region-based object sampling for object detection
DE102024106153A1 (de) 2023-03-28 2024-10-02 Exedy Corporation Antriebseinheit
CN117908045B (zh) * 2024-01-22 2024-07-26 深圳市平方科技股份有限公司 一种船上人员防跌落检测方法及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140368807A1 (en) 2013-06-14 2014-12-18 Microsoft Corporation Lidar-based classification of object movement
JP2017013749A (ja) 2015-07-06 2017-01-19 トヨタ自動車株式会社 自動運転車両の制御装置
JP2017045148A (ja) 2015-08-24 2017-03-02 日本電信電話株式会社 領域分割処理装置、方法、及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8379020B2 (en) 2008-08-25 2013-02-19 Harris Corporation Image processing device using selective neighboring voxel removal and related methods
US8913784B2 (en) 2011-08-29 2014-12-16 Raytheon Company Noise reduction in light detection and ranging based imaging
US9523772B2 (en) * 2013-06-14 2016-12-20 Microsoft Technology Licensing, Llc Object removal using lidar-based classification
EP3123399A4 (en) * 2014-03-27 2017-10-04 Hrl Laboratories, Llc System for filtering, segmenting and recognizing objects in unconstrained environments
GB2532948B (en) 2014-12-02 2021-04-14 Vivo Mobile Communication Co Ltd Object Recognition in a 3D scene
KR101675306B1 (ko) * 2015-03-20 2016-11-11 현대자동차주식회사 사고 정보 관리 장치, 이를 포함하는 차량 및 사고 정보 관리 방법
EP3078935A1 (en) 2015-04-10 2016-10-12 The European Atomic Energy Community (EURATOM), represented by the European Commission Method and device for real-time mapping and localization
US9612123B1 (en) 2015-11-04 2017-04-04 Zoox, Inc. Adaptive mapping to navigate autonomous vehicles responsive to physical environment changes
CN105787445A (zh) * 2016-02-24 2016-07-20 武汉迈步科技有限公司 一种车载激光扫描数据中杆状物自动提取方法及系统
US9996944B2 (en) 2016-07-06 2018-06-12 Qualcomm Incorporated Systems and methods for mapping an environment
US10031231B2 (en) * 2016-09-12 2018-07-24 Delphi Technologies, Inc. Lidar object detection system for automated vehicles
US20180136332A1 (en) 2016-11-15 2018-05-17 Wheego Electric Cars, Inc. Method and system to annotate objects and determine distances to objects in an image
KR20180099280A (ko) * 2017-02-28 2018-09-05 삼성전자주식회사 가상 차로 생성 장치 및 방법
US10460180B2 (en) 2017-04-20 2019-10-29 GM Global Technology Operations LLC Systems and methods for visual classification with region proposals
US10444759B2 (en) 2017-06-14 2019-10-15 Zoox, Inc. Voxel based ground plane estimation and object segmentation
US10747999B2 (en) 2017-10-18 2020-08-18 The Trustees Of Columbia University In The City Of New York Methods and systems for pattern characteristic detection
US10535138B2 (en) 2017-11-21 2020-01-14 Zoox, Inc. Sensor data segmentation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140368807A1 (en) 2013-06-14 2014-12-18 Microsoft Corporation Lidar-based classification of object movement
JP2016529475A (ja) 2013-06-14 2016-09-23 ウーバー テクノロジーズ,インコーポレイテッド ライダに基づいたオブジェクト移動の分類
JP2017013749A (ja) 2015-07-06 2017-01-19 トヨタ自動車株式会社 自動運転車両の制御装置
JP2017045148A (ja) 2015-08-24 2017-03-02 日本電信電話株式会社 領域分割処理装置、方法、及びプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Asma Azim et al.,Detection, Classification and Tracking of Moving Objects in a 3D Environment,2012 IEEE Intelligent Vehicles Symposium,IEEE,2012年06月03日,pp.802-807,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6232303
Kiin Na et al.,The Ground Segmentation of 3D LIDAR Point Cloud with the Optimized Region Merging,2013 International Conference on Connected Vehicles and Expo (ICCVE),IEEE,2013年12月06日,pp.445-450
Matti Lehtomaeki et al.,Object Classification and Recognition From Mobile Laser Scanning Point Clouds in a Road Environment,IEEE Transactions on Geoscience and Remote Sensing,IEEE,2015年10月02日,Vol.54, No.2,pp.1226-1239,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7287763

Also Published As

Publication number Publication date
JP2020524330A (ja) 2020-08-13
US10444759B2 (en) 2019-10-15
JP7507844B2 (ja) 2024-06-28
CN110770790A (zh) 2020-02-07
WO2018231616A1 (en) 2018-12-20
US20200026292A1 (en) 2020-01-23
JP2023052116A (ja) 2023-04-11
EP3639241B1 (en) 2023-11-15
CN110770790B (zh) 2024-03-08
US20180364717A1 (en) 2018-12-20
EP3639241A1 (en) 2020-04-22
US11714423B2 (en) 2023-08-01

Similar Documents

Publication Publication Date Title
JP7203769B2 (ja) ボクセルベースのグランド平面推定およびオブジェクト区分化
EP3756106B1 (en) Creating clean maps including semantic information
US11475573B2 (en) Sensor data segmentation
US11302011B2 (en) Perspective conversion for multi-dimensional data analysis
US11062461B2 (en) Pose determination from contact points
US10509947B1 (en) Converting multi-dimensional data for image analysis
JP7367938B2 (ja) デバイスメッセージフレームワーク
WO2020117870A1 (en) System and method for modeling physical objects in a simulation
US11479213B1 (en) Sensor obstruction detection and mitigation
Azim 3D perception of outdoor and dynamic environment using laser scanner
Nivash MULTI-AGENT TRAJECTORY PREDICTION FOR AUTONOMOUS VEHICLES

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220628

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221027

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221227

R150 Certificate of patent or registration of utility model

Ref document number: 7203769

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150