(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-18
(45)【発行日】2022-10-26
(54)【発明の名称】シーンにおけるカメラの姿勢を特定するシステム及び方法
(51)【国際特許分類】
G06T 7/70 20170101AFI20221019BHJP
G01B 11/26 20060101ALI20221019BHJP
G01B 11/00 20060101ALI20221019BHJP
G06T 7/00 20170101ALI20221019BHJP
【FI】
G06T7/70 Z
G01B11/26 H
G01B11/00 H
G06T7/00 350C
(21)【出願番号】P 2018563670
(86)(22)【出願日】2017-06-29
(86)【国際出願番号】 AU2017050667
(87)【国際公開番号】W WO2018000037
(87)【国際公開日】2018-01-04
【審査請求日】2020-05-26
(32)【優先日】2016-06-29
(33)【優先権主張国・地域又は機関】AU
(73)【特許権者】
【識別番号】516064611
【氏名又は名称】シーイング マシーンズ リミテッド
(74)【代理人】
【識別番号】110001427
【氏名又は名称】弁理士法人前田特許事務所
(72)【発明者】
【氏名】ノーブル ジョン
(72)【発明者】
【氏名】エドワーズ ティモシー ジェームズ ヘンリー
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特表2006-527354(JP,A)
【文献】特開2014-038566(JP,A)
【文献】特開2004-354236(JP,A)
【文献】特開2006-250917(JP,A)
【文献】米国特許出願公開第2016/0018889(US,A1)
【文献】特開2012-068772(JP,A)
【文献】Maya Dawood, et al.,Vehicle geo-localization using IMM-UKF multi-sensor data fusion based on virtual 3D city model as a priori information,2012 IEEE International Conference on Vehicular Electronics and Safety (ICVES 2012),2012年,https://ieeexplore.ieee.org/document/6294287
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
G01B 11/00 - 11/26
(57)【特許請求の範囲】
【請求項1】
乗り物の内部を含む乗り物シーン
の画像をキャプチャするよう配置されたカメラの姿勢を求める方法であって、前記カメラは、前記カメラの方向を測定する方向センサを有し、
a)前記乗り物シーン内で基準系に対する前記カメラの参照位置及び参照方向を含む、前記カメラの初期参照姿勢を特定する入力を受け取ること、
b)前記方向センサから、前記参照方向に対する少なくとも1次元における前記カメラの現在の方向を示す方向信号を受け取ること、
c)前記カメラの前記現在の方向を、その関連する参照方向と比較し、前記比較に基づいて方向誤差を求めること、
d)前記方向誤差に基づいて、前記カメラの現在の方向をアップデートし、新しいカメラ姿勢を求めること、
e)前記乗り物シーンを表す参照データをロードすることであって、前記参照データは、前記乗り物シーン内の既知の特徴の3次元の位置及び方向を含み、前記既知の特徴は、乗り物キャビン、又は前記乗り物キャビン内の、前記乗り物の領域に対して定義された座標系に対して時間的及び空間的に固定された物体を含む、ロードすること、
f)前記画像内で、前記既知の特徴のうちの1つ以上のものの幾何学的外観を3次元において特定するようにキャプチャされた画像を処理すること、及び
g)前記幾何学的外観から、前記既知の特徴に対する前記カメラの3次元の位置及び方向を求め、前記座標系における前記乗り物シーン内の前記カメラの姿勢を計算すること
を含む方法。
【請求項2】
前記カメラは、前記方向誤差の信号に基づいて前記カメラの方向を選択的に調整するよう構成されたアクチュエータを含む
請求項
1に記載の方法。
【請求項3】
前記カメラは、調整可能なマウント内に保持され、アクチュエータは、前記調整可能なマウントに動作可能に関連付けられることによって、前記調整可能なマウントを変化させることによって前記カメラの前記方向を選択的に調整する
請求項
1に記載の方法。
【請求項4】
前記方向信号は、2次元又は3次元のカメラの方向を含む
請求項
1-3のいずれか1項に記載の方法。
【請求項5】
前記方向センサは、加速度計を含む
請求項
1-4のいずれか1項に記載の方法。
【請求項6】
前記方向センサは、ジャイロスコープを含む
請求項
1-5のいずれか1項に記載の方法。
【請求項7】
前記方向センサは、磁気計を含む
請求項
1-6のいずれか1項に記載の方法。
【請求項8】
前記方向センサは、慣性測定ユニットを含む
請求項
1-7のいずれか1項に記載の方法。
【請求項9】
前記参照方向は、前記乗り物キャビンの幾何学的形状によって定義される
請求項
1-8のいずれか1項に記載の方法。
【請求項10】
前記乗り物の速度又は加速度データを受け取るステップを含む
請求項
1-9のいずれか1項に記載の方法。
【請求項11】
前記乗り物シーン内の所定の位置についてのGPSデータを受け取るステップを含む
請求項
1-10のいずれか1項に記載の方法。
【請求項12】
乗り物の内部を含む乗り物シーン
の画像をキャプチャするよう配置されたカメラの姿勢を求めるシステムであって、
前記乗り物シーン内、又は前記乗り物シーンに隣接した既知の位置に取り付けられ、前記乗り物の前記内部の画像をキャプチャするよう配置されたカメラと、
前記カメラに取り付けられ、参照方向に対して少なくとも1つの次元で前記カメラの方向を示す方向信号を生成するよう構成された方向センサと、
前記方向センサに動作可能に関連付けられたプロセッサであって、
前記方向信号を受け取り、
前記カメラの方向を、前記乗り物シーン内の基準系に対する前記カメラの参照方向と比較し、前記比較に基づいて方向誤差を求め、
前記方向誤差に基づいて、前記カメラの現在の方向をアップデートし、新しいカメラ姿勢を求め、
前記乗り物シーンを表す参照データをロードすることであって、前記参照データは、前記乗り物シーン内の既知の特徴の3次元の位置及び方向を含み、前記既知の特徴は、乗り物キャビン、又は前記乗り物キャビン内の、前記乗り物の領域に対して定義された座標系に対して時間的及び空間的に固定された物体を含む、ロードすること、
前記画像内で、前記既知の特徴のうちの1つ以上のものの幾何学的外観を3次元において特定するようにキャプチャされた画像を処理すること、及び
前記幾何学的外観から、前記既知の特徴に対する前記カメラの3次元の位置及び方向を求め、前記座標系における前記乗り物シーン内の前記カメラの姿勢を計算すること
を行うよう構成されたプロセッサと
を備えるシステム。
【請求項13】
前記カメラに動作可能に関連付けられ、アクチュエータの状態を変更させることによって、前記方向信号に応答して、前記カメラの方向を選択的に調整するアクチュエータを含む
請求項
12に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラモニタリングシステムに関し、特にシーンにおけるカメラの姿勢を求めるシステム及び方法に関する。本発明の実施形態は、乗り物で用いられるドライバモニタリングシステム中の1つ以上のカメラの姿勢を求めるために特に開発された。いくつかの実施形態は、その応用例に具体的に参照してここで開示されるが、本発明は、そのような使用分野には限定されず、広いコンテキストで応用可能であることが理解されよう。
【背景技術】
【0002】
明細書を通して背景技術のいかなる説明も、そのような技術が広く知られており、当該分野におけるありふれた一般的な知識を形成するという自認としては決して考えられるべきではない。
【0003】
乗り物のモニタリングシステムにおけるカメラは、システムが適切に動作するために、位置及び方向の両方の点で高度な正確さで設置される必要がある。乗り物内での人々の位置を追跡すること、特に彼らの注視方向(始点及び方向)は、1.5度より小さい正確さでの注視方向の位置合わせを乗り物について典型的には要求する。例えば、フロントガラス上のヘッドアップディスプレイ上のアイコンと、運転者の注視との関係は、フロントガラスに対する注視の正確性として、この量程度、要求する。もしカメラが機器群の中に設置され、そのカメラのピッチに典型的である1.5度の誤差が存在するなら、そのシステムは、運転者がヘッドアップディスプレイ上のアイコンを見ているかどうかを検出できなくなる。注視ベクトルは、究極的には乗り物の基準系と関連付けられた座標系で計算されなければならない。しかし最初は注視ベクトルは、カメラの基準系で計算され、その後、乗り物の座標系に変換されなければならない。よって正確な注視方向は、乗り物に対するカメラの姿勢を正確に知ることなくしては達成され得ない。特に、カメラのピッチ、ヨー、及びロールは、これらにおける小さな誤差が注視方向における大きな誤差を生むので、誤差に最も敏感な変数である。
【0004】
カメラは典型的には固定された又は調整可能なマウントによって表面又は物体にマウントされる。本発明者らは、モニタリングシステムの運用中において、特に乗り物においては、1つ以上のカメラのそれらのマウントにおける向きは、いつもアラインメントを外れてシフトし、再較正が必要となることを見出した。このミスアラインメントは、乗り物、特に岩や他の動く物体によってしばしば衝撃を受ける採掘車両のような動いているシステムにおいてより起きやすい。他の例は、カメラがステアリングコラム又はステアリングホイール上にマウントされているときであり、このステアリングコラムは、カメラの向きに大きな不確実性を生じる動く部品であり得る。乗り物のキャビンも、それらに力が加わる時(例えば縁石での駐車)には、その形状をわずかに変え、必要とされる乗り物に対するカメラの連続的オンライン較正についての問題につながる。
【0005】
再較正プロセスは、時間がかかり、結果としてシステムのダウンタイムを生み、カメラの位置/方向の正確さは、カメラの方向を再調整する技術者の能力によって制限される。さらに、ミスアラインメントが特定されるまで、システムは、カメラがアラインメントからずれた状態で動作し得て、これは、カメラ間の不正確な予想及びそれぞれのカメラの視野の間の物体の不正確な追跡を呈する。
【発明の概要】
【課題を解決するための手段】
【0006】
本発明の第1局面によれば、乗り物シーン内のカメラの姿勢を求める方法であって、
a)前記カメラからの前記乗り物シーンの画像をキャプチャすること、
b)前記乗り物シーンを表す参照データをロードすることであって、前記参照データは、前記乗り物シーン内の既知の特徴の位置及び方向を含む、ロードすること、
c)前記画像内で、前記既知の特徴のうちの1つ以上のものの幾何学的外観を特定すること、
d)前記幾何学的外観から、ステップcで特定された前記既知の特徴に対する前記カメラの3次元位置及び方向を求め、前記乗り物シーン内の前記カメラの姿勢を計算すること
を含む方法が提供される。
【0007】
ある実施形態では、前記既知の特徴は、乗り物のキャビンを含む。他の実施形態では、前記既知の特徴は、乗り物キャビン内の定義可能なキャビンの輪郭、エッジ、又は物体を含む。さらなる実施形態では、前記既知の特徴は、乗り物のダッシュボード計器を含む。
【0008】
ある実施形態では、前記参照データは、前記乗り物シーンの3次元モデルを含む。
【0009】
ある実施形態では、ステップcは、画像マッチング手法を実行して、前記画像内の前記既知の特徴の2次元位置を求めることを含む。
【0010】
ある実施形態では、ステップdは、前記画像中の前記既知の特徴の位置の最小化を、前記モデル中の対応する特徴と共に行い、前記画像を前記3次元モデルにフィッティングすることを含む。ステップdは、異なる固定されたカメラ姿勢をシミュレートするために前記モデルが変化させられるときに、前記画像中の前記特徴位置及び前記モデル中の対応する特徴位置の間の誤差を最小化することを含む。最小化は、前記画像中の2次元特徴位置を、前記モデル中の2次元特徴位置と比較することによって実行され得る。画像中の前記特徴位置は、3次元座標に投影され得て、前記最小化は、前記画像中の前記3次元特徴位置及び前記モデル中の3次元位置を比較することによって実行される。
【0011】
モデルを変化させることは、1つ以上の回転次元において前記モデルを回転することを含み得る。前記モデルを変化させることは、1つ以上の直線次元において前記モデルを平行移動させることを含み得る。
【0012】
ある実施形態では、前記参照データは、以前の時刻において、既知のカメラ姿勢でキャプチャされた乗り物シーンの2次元画像を含む。
【0013】
ある実施形態では、ステップdは、誤差最小化を実行することによって、現在の画像中の既知の特徴を、以前の画像中の対応する特徴とアラインさせ、前記要求されたアラインメントからカメラ姿勢を抽出することを含む。ある実施形態では、ステップdは、機械学習プロセスによって学習されたルールを、既知のもの1つ以上の幾何学的外観に適用することを含む。
【0014】
ある実施形態では、前記参照データは、前記カメラに取り付けられた方向センサから受け取られたカメラ方向データを含む。前記方向データは、前記乗り物フレームに取り付けられた方向センサから受け取られた第2方向データと比較され得る。
【0015】
本発明の第2局面によれば、乗り物シーンを画像化するよう配置されたカメラの姿勢を求める方法であって、前記カメラは、前記カメラの方向を測定する方向センサを有し、
a)前記シーン内で基準系に対する前記カメラの参照位置及び参照方向を含む、前記カメラの初期参照姿勢を特定する入力を受け取ること、
b)前記方向センサから、前記参照方向に対する少なくとも1次元における前記カメラの現在の方向を示す方向信号を受け取ること、
c)前記カメラの前記現在の方向を、その関連する参照方向と比較し、前記比較に基づいて方向誤差を求めること、及び
d)前記方向誤差に基づいて、前記カメラの現在の方向をアップデートし、新しいカメラ姿勢を求めること
を含む方法が提供される。
【0016】
ある実施形態では、前記カメラは、前記誤差信号に基づいて前記カメラの方向を選択的に調整するよう構成されたアクチュエータを含む。
【0017】
ある実施形態では、前記カメラは、調整可能なマウント内に保持され、前記アクチュエータは、前記調整可能なマウントに動作可能に関連付けられることによって、前記調整可能なマウントを変化させることによって前記カメラの前記方向を選択的に調整する。
【0018】
方向信号は、2次元又は3次元のカメラの方向を含み得る。
【0019】
ある実施形態では、前記方向センサは、加速度計を含む。他の実施形態では、前記方向センサは、ジャイロスコープを含む。さらなる実施形態では、前記方向センサは、磁気計を含む。さらに他の実施形態では、前記方向センサは、慣性測定ユニットを含む。
【0020】
ある実施形態では、前記参照方向は、前記乗り物キャビンの幾何学的形状によって定義される。
【0021】
ある実施形態では、前記乗り物の速度又は加速度データを受け取るステップを含む。この方法は、前記シーン内の所定の位置についてのGPSデータを受け取るステップを含み得る。
【0022】
本発明の第3局面によれば、乗り物シーンを画像化するよう配置されたカメラの姿勢を求めるシステムであって、
前記乗り物シーン内、又は前記乗り物シーンに隣接した既知の位置に取り付けられたカメラ、
前記カメラに取り付けられ、参照方向に対して少なくとも1つの次元で前記カメラの方向を示す方向信号を生成するよう構成された方向センサ、
前記方向センサに動作可能に関連付けられたプロセッサであって、
前記方向信号を受け取り、
前記カメラの方向を、前記シーン内の基準系に対する前記カメラの初期参照方向と比較し、前記比較に基づいて方向誤差を求め、及び
前記方向誤差に基づいて、前記カメラの現在の方向をアップデートし、新しいカメラ姿勢を求める
よう構成されたプロセッサ
を備えるシステムが提供される。
【0023】
ある実施形態では、このシステムは、前記カメラに動作可能に関連付けられ、アクチュエータの状態を変更させることによって、前記方向信号に応答して、前記カメラの方向を選択的に調整するアクチュエータを含む。
【0024】
本発明の第4局面によれば、ニューラルネットワークをトレーニングさせることによって、シーン内のカメラ姿勢を認識する方法であって、
a)前記シーンの2次元画像を、所定の観測参照点から見たときの、前記シーンの3次元モデルからレンダリングすること、
b)前記レンダリングされた画像に対する画像分析を実行することによって、前記レンダリングされた画像中の既知の特徴の幾何学的外観の詳細を知ること、
c)前記既知の特徴の幾何学的外観の知り得た詳細を、現在の観測参照点によって定義されるカメラ姿勢と関連付けること、
d)前記観測参照点を調整し、ステップa-cを所定回数だけ繰り返すこと、及び
e)前記カメラ姿勢及び異なる観測参照点から見た、前記シーン内の参照特徴の幾何学的外観を関連付けるルール又はパターンを学習すること
を含む方法が提供される。
【図面の簡単な説明】
【0025】
本開示の好ましい実施形態が、例示としてのみ、添付の図面を参照してこれから説明される。
【
図1】
図1は、乗り物内に配置された4カメラモニタリングシステムの透視図である。
【
図2】
図2は、
図1の4カメラモニタリングシステムの平面図である。
【
図3】
図3は、
図1及び2の4カメラモニタリングシステムの概略的システムレベル図である。
【
図4】
図4は、乗り物シーン内のカメラの姿勢を求める方法中の主要なステップを図示する機能フロー図である。
【
図5】
図5は、幾何学的形状の形をとる4つの参照特徴を含むシーンの概略的表現である。
【
図6】
図6は、参照モデル又はシーンの画像と、異なるカメラ姿勢からのカメラによってキャプチャされたシーンの画像とを比較するシナリオの概略的表現である。
【
図7】
図7は、参照特徴の幾何学的外観からカメラ姿勢を推定するためにニューラルネットワークをトレーニングする方法における主要なステップを図示する機能フロー図である。
【
図8】
図8は、カメラ姿勢を求めるためにキャプチャされた画像のどの部分を適用するかを知るためにニューラルネットワークをトレーニングする方法における主要なステップを図示する機能フロー図である。
【
図9】
図9は、カメラの方向を能動的に検出する方向センサを含むそれぞれのカメラを持つ4カメラモニタリングシステムの概略的システムレベル図である。
【
図10】
図10は、カメラの方向を能動的に検出する方向センサ、及びカメラの方向を能動的に調節するアクチュエータを含むそれぞれのカメラを持つ4カメラモニタリングシステムの概略的システムレベル図である。
【
図11】
図11は、マルチカメラ画像化システムにおけるカメラの方向を自動的に較正する方法の主要なステップを図示する機能的フロー図である。
【発明を実施するための形態】
【0026】
システムの概要
ここで説明される本発明の実施形態は、マルチカメラ乗り物モニタリングシステムにおけるカメラ群のカメラ姿勢の自動化較正に関する。これらの実施形態において、画像化されるべきシーンは、乗り物のドライバー、乗り物/コクピットのインテリア、乗り物の前方向の道路シーン、及びオプションとして乗り物からの横及び後ろの視界である。乗り物は、商用の自動車、トラック、土木機械、飛行機、ジェット機、又はヘリコプターを表し得る。しかし本発明は、他のシーンをモニタリングするための監視ネットワークのような他のモニタリングシステムに適用可能であることが理解されよう。さらに、本発明は、単一のカメラのモニタリングシステムにも適用可能である。
【0027】
図1及び2をまず参照して、乗り物106内の異なる位置に配置された4つのカメラ101-104を含む乗り物モニタリングシステム100が図示されている。カメラ101は、乗り物のダッシュボード上に配置され、前方向ロードシーンをモニタリングするために乗り物の前方向に向けられている。カメラ102、103、及び104は、乗り物106の運転者108をモニタするように配置され、方向付けられている。カメラ102は、乗り物106の計器パネル上に又は隣接して、又は乗り物106のステアリングコラム上に配置される。カメラ103は、乗り物106のフレームの運転者側のAピラー上に配置される。カメラ104は、乗り物106のセンターコンソール上に又は隣接して、好ましくはスクリーンが提供される乗り物内のディスプレイスクリーンに隣接して、配置される。具体的なカメラ位置は、例示的であるだけであって、運転者、前方ロードシーン、又は乗り物の中の又は周囲の他の視界をモニタするために、より多くの又はより少ないカメラが乗り物106内の又は外の他の位置において組み込まれてもよい。カメラの他の例示的カメラ位置は、バックミラー、リアバンパー、フロントバンパー、乗り物ルーフ、及びボンネット/フードを含む。
【0028】
ここで
図3を参照すると、システム100のシステムレベルの概略図が示されている。システム100は、プロセッサ302、メモリ304、電源306、ネットワークインタフェース308、及びユーザ入力デバイス310を含む中央処理装置300を含む。乗り物モニタリングシステムの実施形態において、中央処理装置300は、好ましくは乗り物のダッシュボード又はセンターコンソール内に設置され、製造時にオンボード乗り物コンピュータシステムと統合され得る。しかし、中央処理装置300及びシステム100は、全体として、アフターマーケット製品として製造されて、モジュールとして後で設置され得る。
【0029】
プロセッサ302は、複数のカメラから受け取られた画像ストリームを処理するよう構成されたハードウェア及び/又はソフトウェアを有する従来のマイクロプロセッサ又はパーソナルコンピュータを表現し得る。例として、プロセッサ302は、システムオンチップ技術を含み得て、カメラ101-104からの画像のストリームを処理するためのビデオ処理パイプラインを含み得る。ある実施形態において、プロセッサ302は、オンボード乗り物コンピュータシステムのプロセッサと統合され、又は通信可能である。
【0030】
中央処理装置300は、電源306に接続されることで電力が供給される。ある実施形態では、電源306は、乗り物のバッテリーのような乗り物の電源への電気的接続を表現する。他の実施形態では、電源306は、中央処理装置300の筐体内で統合され、オプションとして充電のために外部電源に接続されたローカルバッテリーを表現する。
【0031】
ネットワークインタフェース308は、データをシステム100に送信し、システム100から受信することを可能にし、システム100を他のデバイス又はシステムに電気的に又は無線で接続するインタフェースを表現する。ネットワークインタフェース308は、USB、HDMI、又はイーサネットのポート、シリアルデバイスポートのような有線で接続されたネットワークポート及び/又はブルートゥースTMデバイス、Wi-FiTMデバイス、又は携帯電話ネットワークトランシーバのような無線デバイスを含む。
【0032】
ユーザ入力は、ユーザ入力デバイス310を通してシステム100に与えられ得て、ユーザ入力デバイス310は、タッチスクリーンディスプレイ又はキーボード又はキーパッド及び付随するディスプレイを含み得る。ユーザ入力デバイス310は、ネットワークインタフェース308又は他の手段を通してシステム100に接続されたコンピュータ又はスマートフォンのような外部デバイスも表現し得る。ある実施形態では、ユーザ入力デバイス310は、乗り物に統合され、乗り物のセンターコンソール内に設置されたディスプレイインタフェースを通して操作されるコンピュータシステムを表現する。
【0033】
ユーザ入力デバイス310を通してシステム100に入力され得る例示的データは、
・乗り物のキャビンの3次元モデル又は乗り物シーンの2次元画像を含む乗り物シーン参照データ、
・カメラ101-104についての初期又は参照の位置及び方向のデータ、
・乗り物内の他の参照点の位置、
・乗り物又は乗り物キャビンのモデルデータ、
・顔認識のための運転者の画像、
・乗り物内での目の位置を求めるための運転者身長のような運転者の詳細、及び
・アップデートされた注視追跡アルゴリズムのようなプロセッサ302のためのソフトウェアアップデート
を含む。
【0034】
ユーザ入力デバイス301を通してシステム100から抽出され得る例示的データは、
・統計的注視方向データ、
・カメラ較正又は再アラインメントのデータ、及び
・カメラ101-104からの生の又は処理された画像/ビデオデータ
を含む。
【0035】
それぞれのカメラは、電気ケーブル及び関連付けられたポートを含むそれぞれの接続322-325を通して中央処理装置300に電気的に接続される。これら電気的接続は、プロセッサ302によるカメラ101-104の制御、及びカメラ101-104からの画像データの伝送を提供する。
【0036】
カメラ101-104は、画像化光学系と組み合わせて、さまざまなタイプの既知の画像センサを利用し得る。例示的画像センサは、後の画像処理に適切したフォーマットである画像及び/又はビデオシーケンスをキャプチャするための関連する処理電子回路及びメモリと組み合わせられた、電荷結合素子(CCD)又は相補性金属酸化膜半導体(CMOS)チップを含む。カメラ101-104は、2次元又は3次元で画像をキャプチャすることが可能であり得る。
【0037】
モニタリングシステム100は、運転者108を照射することでキャプチャされた画像の品質を改善するための1つ以上のLED(不図示)も好ましくは含む。運転者の気が散ることを低減するために、これらLEDは、人間の目には見えない赤外線放射を好ましくは放出する。よって、カメラ101-104の画像センサは、好ましくは、LEDによる照射を活用するために、赤外領域での画像化が可能である。
【0038】
システム100のカメラが効率よくかつ正確に運転者の振る舞いをモニタするためには、カメラの姿勢を正確に知らなければならない。
【0039】
カメラ101-104の姿勢を求める方法400を実行するシステム100の動作が
図4を参照して説明される。方法400は、システム100においてそれぞれのカメラについて実行される(これらカメラが乗り物シーンのうちの一部を見ることができる場合)ので、カメラ102についてだけ説明され、カメラ101、103、及び104については同様であることに注意されたい。この方法は、単一のカメラの場合も含めて、異なる個数のカメラを有するシステムについても実行され得ることが理解されよう。
【0040】
ステップ401において、カメラ102は、その現在の姿勢からの乗り物シーンの画像をキャプチャする。カメラの姿勢は、カメラの3次元位置及び3次元方向(orientation)を含み、後述のように、既定の基準系に対して定義される。画像データは、プロセッサ302による処理のために、接続322によって中央処理装置300に転送される。
【0041】
ステップ402において、乗り物シーンを示す参照データがメモリ304からロードされる。ある実施形態において、参照データは、乗り物の製造時に作られたCADモデルのような乗り物シーンの3次元モデルを含む。他の実施形態では、参照データは、事前に、正確に知られているカメラの姿勢においてキャプチャされた乗り物シーンの2次元画像を含む。例としては、乗り物へのその最初の設置の直後にカメラによってキャプチャされた画像であり得る。いずれの実施形態でも、参照データは、基準座標系で定義された乗り物シーン内での既知の特徴(known features)の位置及び方向を含む。例として、既知の特徴は、個々の乗り物ダッシュボードの計器、定義可能なキャビンの外形、エッジ、又は物体、又は乗り物キャビンそのものの全体を含み得る。1つの要件は、これら特徴は、基準系に対して時間的及び空間的に固定されていなければならないことである。
【0042】
乗り物シーンの場合、基準系は、乗り物フレームの領域に対して定義され得る。例として、基準座標系(reference coordinate system)は、乗り物の駆動軸に沿ってアラインされたz軸(長手方向の次元)、右車輪が正の方向である、前輪軸に沿ってアラインされたx軸(横方向の次元を定義する)、及びおおまかには垂直の次元を定義するy軸を有することで、直交座標系を完成するものとして定義され得る。この例示的座標系は、本発明を説明するためにここで用いられる。しかし他の任意の基準座標系が選ばれ得ることが理解されよう。
【0043】
ステップ403において、プロセッサ302は、キャプチャされた画像を処理し、1つ以上の既知の特徴の幾何学的な外観を特定する。ある実施形態では、これには、キャプチャされた画像における既知の特徴の2次元位置を求めるための顔認識と似たやり方で、既知の特徴に対して画像又はパターンマッチング手法を実行することが含まれる。類似の画像マッチングプロシージャは、Edwards et al.のFacial Image Processing Systemと題され、Seeing Machines Pty Ltdに譲受された米国特許7,043,056(以下「Edwards et al.」)において実行される。米国特許7,043,056の内容は、ここで相互参照によって援用される。この手法は、画像をサブ領域に分割し、これらサブ領域を処理することによって、記憶されたテンプレートパターンと一致するパターンを特定することを含む。
【0044】
特定された特徴は、画像内のサブセット領域又は画素の座標として記憶される。これは、
図5に概略的に示され、ここで、従来の幾何学的図形として図示される4つの例示的な参照特徴(reference features)501-504が見られる。それぞれの特徴の周りの破線ボックス505-508は、これら特徴に対応すると指定された画像内の画素領域を示す。画素は、センサアレイの2次元画素座標において個別に特定可能であり得る。画素領域は、四角形であるように図示されるが、他の実施形態においては、画素領域は、他の形状によって定義され得る。
【0045】
ステップ404において、プロセッサ302は、幾何学的外観から、ステップc)において特定された既知の特徴に対するカメラの3次元位置及び方向を求め、乗り物シーン内でのカメラの姿勢を計算する。参照データがシーンの3次元モデルを含む場合は、ステップ404は、モデル中の対応する特徴と共に、画像内の既知の特徴の位置の最小化を用いて、画像を3次元モデル上に当てはめることを伴い得る。これは、モデルに当てはめるために、画像中で特定された参照特徴の2次元位置を3次元に投射することを伴い得る。代替として、2次元画像は、モデル及びキャプチャされた画像及びレンダリングされた画像の間で実行された比較から、レンダリングされ得る。よって、最小化することは、画像中の2次元特徴位置を、モデル中の2次元特徴位置と比較することによって、又は画像中の3次元特徴位置及びモデル中の3次元特徴位置を比較することによって、実行され得る。
【0046】
ステップ404は、好ましくは、画像中の特徴位置及びモデル内の対応する特徴位置の間の誤差を最小化することを含むが、これはモデルが、異なる固定されたカメラの姿勢をシミュレートするために変更されるからである。モデルを変更することは、1つ以上の回転軸においてモデルを回転すること、及び1つ以上の直線軸においてモデルを平行移動させることを含む。参照情報が、既知のカメラの姿勢で以前にキャプチャされた2次元画像を含む場合、ステップ404は、
現在の画像における既知の特徴を、以前の画像における対応する特徴とアラインさせるために、誤差最小化を実行すること、及び要求されるアラインメントからカメラ姿勢を抽出することを含む。
【0047】
このプロセスを概略的に示すために、
図6の上側領域は、シーン内で既知の位置及び方向を有する既知の特徴を表す、4つの幾何学的形状のモデルを示す。代替として、上側領域は、正確に知られたカメラの姿勢でキャプチャされた2次元画像を表し得る。下側領域は、較正されるべきカメラによってキャプチャされた、4つの形状の同じシーンの画像を示すが、変動したカメラの姿勢を表すように、わずかに回転され、オフセットされている。パターンマッチングを通して、幾何学的形状は、下側画像において特定されて、モデル中の形状と一致させられる。もしシーン内の幾何学的形状の位置及び方向がモデル中で正確に知られているなら、カメラの姿勢は、画像から推定され得る。カメラ姿勢は、上側領域に示されるモデルの幾何学的制約に形状を当てはめるのに必要とされる回転の量から計算され得る。同様に、参照データは、以前にキャプチャされた画像である場合、新しいカメラ姿勢は、以前に知られていたカメラ姿勢から、2つの画像にわたる形状の位置及び方向の差によって計算され得る。
【0048】
図6で示された例では、円形の図形は、回転しても不変であることに注意されたい。同様に、球体も3次元において回転しても不変である。よって、カメラの姿勢を区別するためには、他の特徴に対するこれら物体の位置のような追加情報が必要となる。
【0049】
他の実施形態において、ステップ404は、特定された既知の特徴からカメラ姿勢を認識するよう訓練されたニューラルネットワークのような機械学習アルゴリズムを用いて実行される。ニューラルネットワークは、乗り物シーン内で、又は乗り物シーンについて、さまざまな異なる位置及び方向から既知の特徴を認識するように訓練され得る。ニューラルネットワークの訓練は、
図7に示される方法700によって実行され得る。
【0050】
ステップ701において、所定の観察参照点(observation reference point)から見られたときのシーンの2次元画像が3次元モデルからレンダリングされる。この参照点は、特定のカメラ姿勢でシーンを見るカメラをシミュレートする、シーン内又はシーンの周辺での姿勢及び方向である。ステップ702において、プロセッサ302は、レンダリングされた画像中の既知の特徴の幾何学的外観の詳細を知るために画像分析を実行する。実行されるこの画像分析は、パターンマッチング及び/又は形状認識を含み得る。幾何学的外観は、既知の特徴のサイズ、形状、及び方向を含み得る。ステップ703において、既知の特徴の幾何学的外観の得られた詳細は、現在の観察参照点によって定義されたカメラ姿勢と関連付けられる。ステップ704において、観察参照点が調整され、ステップ701-703が繰り返される。観察参照点は、参照位置又は方向のうちの1つ又は両方を変化させることによって調整され得る。ステップ706において、十分なデータが集められると、ニューラルネットワーク又は他の機械学習アルゴリズムがプロセッサ302によって実行され、カメラ姿勢及び参照特徴の幾何学的外観を関連付ける規則又はパターンを知ることができる。
【0051】
ニューラルネットワーク又は他の機械学習アルゴリズムは、最初の正確に知られたカメラ姿勢から、カメラ姿勢の推定のためには画像のどの部分が用いられるかを「知る」ためにも用いられ得る。これは、例えば、運転者又は他の物体による閉鎖、誤った露出等の難しい問題であり得る。ある実用的なアプローチは、
図8に方法800として図示される。
【0052】
ステップ801において、カメラのカメラ姿勢は、乗り物シーン内で較正される。これは、手動較正によって、又は上述のプロセスを用いて実行され得る。ステップ802において、通常の乗り物の運転状況の間には、多数の画像がカメラによって記録され、カメラ姿勢が一定状態を維持することを確実にする。これは、時間単位、日単位、週単位、又は月単位の記録された画像データを含み得る。ステップ803において、記録された画像を回転及び/又は平行移動することによってカメラの動きがシミュレーションされる。これは、機械学習アルゴリズムのための多くの追加のトレーニングデータを作る。ステップ804において、畳み込みニューラルネットワーク又は他の機械学習プロセスが用いられて、画像及び3次元模擬回転(three dimensional simulated rotation)の間のマッピングを学習する。もし十分な変動(異なる運転者、ライティング、外部シーン等)が画像中に存在するなら、ネットワークは、カメラ姿勢を推定するためには、画像のどの部分を用いるべきかを自動的に知る。
【0053】
加えて、畳み込みニューラルネットワークは、より堅固な推定を得るために、加速度計又はジャイロスコープのようなさらなるセンサ入力から入力されたデータを用い得る。
【0054】
いったん方法700及び/又は方法800が実行されたなら、カメラによってキャプチャされた画像は、処理がされて、ルール及びパターンが適用されて、特定された参照特徴から現在のカメラ姿勢が推定される。
【0055】
ある実施形態では、参照データは、カメラに搭載された方向センサから受け取られたカメラ方向のデータを含む。このシナリオは、以下により詳細に記載される。センサからの方向データは、オンボード乗り物センサのような、乗り物フレームに装着された方向センサから受け取られた第2方向データとも比較され得る。
【0056】
上述の方法400は、必要な場合及び必要な時には、カメラ姿勢を再較正するために繰り返して実行され得る。ある実施形態では、方法400は、乗り物が始動され、システム100が起動されるたびに実行される。継続的に実行されるとき、方法400は、さらなるシステムハードウェアの必要なしでカメラ姿勢を自動的に求めることを可能にする。この進行中の獲得は、運転者注視モニタリングのような、モニタリングシステムの実行を大きく改善する。
【0057】
3次元モデルを使用することも、カメラの搭載プロセスを簡略化する点で有利である。特に、カメラは、カメラ姿勢の初期決定を実行する必要なく、所望の位置に簡単に装着され得る。むしろ、カメラ姿勢は、方法400から初期的には決定され得る。
【0058】
代替の実施形態
代替の実施形態システム900が
図9に示される。ここでシステム100の対応する特徴には、同じ参照番号が付される。システム900は、4つのカメラユニット312-315を含み、これらは、乗り物シーン内、又は乗り物シーンに対して相対的な位置に装着される。それぞれのカメラユニット312-315は、それぞれ、そのそれぞれの視野内のシーンの画像をキャプチャするカメラ101-104、及び参照方向に対するカメラの方向を測定する方向センサ317-320を含む。
【0059】
方向センサ317-320は、加速度計及びジャイロスコープのような単純な慣性デバイス及び磁気計及びより発展型の慣性測定ユニットのような他のデバイス、又はそれらの組み合わせを含み得る。方向センサ317-320は、乗り物の座標系に対して固定された参照方向に対して1次元、2次元、又は3次元における方向を測定することが可能であり得る。適切な基準系(reference system)は、乗り物の駆動軸及び前輪軸を用いる上述のものである。しかし、参照方向は、具体的な応用例に基づいて任意のものが選ばれ得ることが理解されよう。例えば、もし2つ以上のカメラが共通の軸に沿ってアラインされているなら、その軸は、参照方向として好ましくあり得る。方向は、3次元デカルト座標系で好ましくは表現される。しかし、方向は、方向ベクトルが、垂直平面における半径方向距離(r)、天頂角(θ)及び水平平面における方向角(φ)で表現される球座標系のような任意の座標系で表現され得ることが理解されよう。
【0060】
ある実施形態では、方向センサ317-320は、それぞれのカメラ101-104に一体化して取り付けられる。他の実施形態では、方向センサ317-320は、カメラも装着される中間支持フレーム上にそれぞれのカメラ101-104に対してマウントされる。いずれの場合も、センサは、それぞれの対応するカメラに対して固定されなければならない。
【0061】
システム900では、電気的接続322-325は、方向センサ317-320からの方向データのプロセッサ302及びメモリ304への伝送も提供する。
【0062】
さらなる代替のシステム1000が
図10に概略的に示される。システム1000では、それぞれのカメラユニットは、固定された又は調整可能なカメラマウント326-329によって乗り物に取り付けられる。それぞれのマウント326-329は、電気機械的アクチュエータ330-333に動作可能なように関連付けられ、又は電気機械的アクチュエータ330-333を含む。電気機械的アクチュエータ330-333は、調整可能なマウントを動かすことによって1次元、2次元、又は3次元における少なくとも1つのカメラの方向を選択的に調整するよう構成される。図示されたシステム1000では、それぞれのカメラユニット312-315は、調整可能なマウント326-329及び関連付けられたアクチュエータ330-333を含む。しかし他の実施形態では、カメラユニットのサブセットだけがアクチュエータを含み、又はアクチュエータが提供されず、カメラの方向は、それぞれのマウント内で手動で調整可能であってもよい。
【0063】
さまざまなタイプのカメラマウント及びアクチュエータが本発明では用いられ得て、それらは以下には限定されないが、Cタイプ又はTタイプのねじ込み式マウント、液圧アクチュエータマウント、熱又は磁気アクチュエータマウント、及び圧電アクチュエータマウントであり得る。
【0064】
システム100及び900について、それぞれのユニットは、中央処理装置300に、電気ケーブル及び関連する電気ポートを含む、それぞれの接続322-325を通して電気的に接続される。上述の機能を提供するのに加えて、接続322-325は、プロセッサ302からそれぞれのアクチュエータ330-333へのアクチュエータ調整信号の伝送も促進する。
【0065】
システム1000の動作は、マルチカメラ画像化システムにおける複数のカメラの方向を自動的に物理的に再較正するために用いられ得る。この動作は、
図11の処理フロー図に示される方法1100を参照して説明される。
【0066】
まずステップ1101において、カメラが、モニタリングされるべきシーン内のそれらの所望の位置において取り付けられ、それらの位置及び初期方向は、ユーザ入力デバイス310を通してメモリ304中に登録される。運転者モニタリングシステムの場合、カメラは、
図1及び2におけるように、乗り物内又は乗り物周囲の位置において好ましくはマウントされることによって、運転者及び前方道路シーンをそれらの視界内に入れるようにする。ステップ1101は、乗り物の製造中に、又はその後の乗り物106へのシステム100の装着時に実行され得る。
【0067】
ステップ1101の初期位置/方向登録は、手動で、又は2016年6月29日に出願されたオーストラリア仮特許出願2016902544に記載されるように、方向センサ317-320及び深度画像化デバイス340を利用して疑似自動化されたやり方で実行され得る。オーストラリア仮特許出願2016902544の内容は、ここで参照によって援用される。深度画像化デバイス(Depth imaging device)340は、1つ以上のスキャニング又はパルス化飛行時間カメラ(pulsed time of flight camera)、LIDARシステム、ステレオカメラ構成、構造化された光3Dスキャナ、位相検出又は3次元でシーンの画像をキャプチャできる任意の他の画像化システムを持つ画像センサを含み得る。深度画像化デバイス340は、デバイス340に制御を提供し、生の3次元画像データ又はプリプロセスされた深度マップデータ(pre-processed depth map data)をデバイス340から受け取るために、専用の電気的接続を通してプロセッサ302と動作可能に関連付けられている。ある実施形態では、深度画像化デバイス340は、中央処理装置300及びプロセッサ302にネットワークインタフェース308を通して接続される。
【0068】
代替としてステップ1101は、上述の方法400を用いて、かつシーンの3次元モデルを用いて自動的に実行され得る。
【0069】
カメラユニット312-315の取り付けの間、それぞれのユニットは、それぞれの接続322-325を通して中央処理ユニット300に電気的に接続される。ステップ1001において、シーン内の参照位置及び方向が定義される。ある実施形態では、参照方向は、シーンの形状によって定義される世界座標系である。乗り物モニタリングシステムの場合、世界座標系は、乗り物の駆動軸及び前輪軸を用いた上述の座標系であり得る。しかし上述のように、任意の参照方向は、特定のアプリケーションに基づいてユーザ入力デバイス310を通じてユーザによって選ばれ得る。例えば、もし2つ以上のカメラが共通の軸に沿ってアラインされるなら、その軸は、参照方向として好ましい軸であり得る。好ましくは、参照方向は、時間が経っても一定であり続けるようなシーン形状によって定義される。
【0070】
参照位置及び方向は、システム100内の全ての測定値が測られる中央参照フレーム(又は世界参照)として機能する。この共通参照フレームは、異なる画像にわたって、物体又は関心点(points of interest、人の注視点のような)のマッピング及びトラッキングを可能にする。シーン内のカメラ101-104の位置及び方向は、参照位置/方向に対する座標で特定される。
【0071】
ステップ1102において、それぞれのカメラ方向を表す方向信号は、それぞれの方向センサ317-320から信号322-325を通してプロセッサ302において受け取られる。好ましくは、方向信号は、2つ以上の次元におけるカメラ方向を含む。しかし方向センサは、1次元の方向だけしか提供しなくてもよく、残りの次元は、手動で測定されてもよく、又は変化しないと推定されてもよい。方向は、上述の参照方向に対して定義される。
【0072】
ステップ1103において、プロセッサ302は、乗り物の速度又は加速度のデータ、乗り物のGPS位置、又はオンボードセンサ(例えば車が坂道に駐車している時に検出するための)によって測定された、乗り物の現在の方向のような外部入力を受け取る。例として、システム100は、乗り物のGPS位置、速度、及び加速度のような乗り物データのフィードを提供するネットワークインタフェース308を通してオンボード乗り物コンピュータシステムに接続され得る。外部入力データは、方向データを増強して、カメラ方向の計算を助けるために用いられるが、これは、方向センサが1つ又は2つの次元における方向しか測定できないときには特にそうである。例として、ヨー方向(垂直軸)は、重力の一定の力を受けてカメラが静止しているときには、求めるのが典型的には難しい。乗り物が動いているときに、カメラの位置、速度、又は加速度の変化を測定することは、3次元におけるカメラの方向が推測され得る、全体的力を求めるのに役立ち得る。
【0073】
ステップ1104において、プロセッサ302は、それぞれのカメラの現在の方向を計算し、モニタリングアルゴリズムによって後で使うために、メモリ304に現在の方向を記憶させる。現在のカメラ方向を測定するために、方向信号は、30秒のようなある期間の間、データのウィンドウを観測するためにモニタリングされる。これは、プロセッサ302が、定常状態の方向を求め、カメラ群の方向の短時間で変化する差を識別することができるようにする。特に乗り物が動いている時には、ステップ403で得られたデータが、ここで組み込まれ得る。
【0074】
ある実施形態では、現在のカメラ方向データは、それらのアルゴリズムにおいて直接にアップデートされ、それらもメモリ304に記憶される。ステップ1104は、実時間で、実時間に近いかたちで、又は所定の時間間隔で実行され得る。
【0075】
ある実施形態では、現在のカメラ方向の計算は、2つのカメラの間の、又はカメラと、乗り物オンボード加速度計のような他の参照点との間の、差分方向又は相対方向を求めることを含む。例として、最初に、カメラ101は、前方を向いた視界を表す、方向<0,0,1>(単位方向ベクトルとして表現される)を有し、カメラ102は、後方を向いた視界を表す、方向<0,0,-1>を有する。カメラ101及び102の間の初期差分方向又は初期相対方向は、<0,0,2>である。乗り物の運転の期間の後、カメラ101の方向は、<0.2,0.1,1.2>にシフトされ、カメラ102の方向は、<0.3,-0.2,-0.9>にシフトされている。カメラ101及び102の間の差分方向又は相対方向は、ここで<-0.1,0.3,2.1>である。
【0076】
ステップ1105において、プロセッサ302は、それぞれのカメラの現在の方向をそれぞれのカメラの参照方向と比較し、その比較に基づいてそれぞれの調整信号を導出する。ステップ1106において、コントローラ302は、調整信号をそれぞれの電気的接続322-325に沿って送り、それぞれのカメラモジュール312-315の関連付けられたアクチュエータ330-333を制御することによって、カメラの方向を選択的に調整する。
【0077】
調整信号は、アクチュエータを制御して、関連付けられたカメラの方向を、参照方向又は参照方向に対して予め定められた他の方向に十分に近い状態に戻す(誤差の範囲まで)ための制御信号を表す。例として、カメラ101の参照方向は、まっすぐ前方を見た視界を示す単位方向ベクトル<0,0,1>として表現され得る。乗り物運転のある期間の後、実際の方向ベクトルは、<0.2,0.1,1.2>にシフトしたかもしれない。プロセッサ302は、ベクトル比較を実行することによって、カメラをその参照位置に向け直すためには、補正<-0.2,-0.1,-0.2>が必要であると判断する。メモリ304中に記憶された角度対電圧/電流ルックアップテーブルを参照することによって、プロセッサ302は、このベクトル補正値を対応する電気制御信号に変換し、対応するアクチュエータを電気的に制御する。
【0078】
アクチュエータ/マウントが3次元で調整可能である場合は、調整信号は、3つの個別の制御要素又は3つの別々の信号を含み得る。アクチュエータ/マウントが3次元より少ない次元で調整可能である場合は、調整可能ではない方向要素は、無視され、ゼロであると推定される。代替として、プロセッサ302は、ユーザに対して、自動的には調整可能ではない方向要素が所望の範囲外にずれたことを示す警報を発行し得る。この場合、カメラは、手動で再び向きが変えられることが必要となり得るか、又は自動的に実行された方法400が現在のカメラ姿勢を求めることが必要となり得る。
【0079】
ある実施形態では、予め定められた閾値方向誤差が定義され、ここで、もしカメラの現在方向及び参照方向の間の差が閾値方向誤差より小さいなら、カメラの調整は行われない。例として、閾値方向誤差は、方向センサの誤差限界、又は関連付けられたアクチュエータの最小解像度を表し得る。
【0080】
ステップ1102-1106は、システム1100内でカメラの方向を自動的に較正するメインの較正ループを表す。ステップ1102-1106は、乗り物の始動において、及びその後の一定間隔においてのような、乗り物運転の間の所定の定期的なタイミングで実行され得る。代替として、ステップ1102-1106は、乗り物運転の間に実時間で、又は実時間に近く実行され得る。
【0081】
ステップ1107において、システム1100の通常の動作の間に、カメラ101-104は、プロセッサ302によって処理されるべきさまざまなカメラ位置/方向からシーンの画像群のストリームをキャプチャする。例示的な処理は、カメラ102-104による顔特徴特定、及び乗り物運転者の追尾であり、これにより、例えばEdwards et al.に記載されるように、運転者の眠気、注意、及び視線注視方向を求めることができる。
【0082】
シーン内で正確に知られたそれぞれのカメラの3次元位置及び3次元方向の両方を用いて、それぞれのカメラのカメラ姿勢を求め得る。ステップ1108において、プロセッサ302は、3次元位置データ、方向データ、及びオプションとして、それぞれのカメラがそれぞれのカメラについてのカメラ姿勢を求めるための外部入力データを組み合わせる。カメラ姿勢には、カメラセンサアレイの3次元位置、及びカメラの光学軸の3次元方向を示す6次元ベクトルを含む。プロセッサ302は、異なるカメラ姿勢を組み合わせることによって、シーン内の異なるカメラ視界をマッピングする変換関数を導出する。
【0083】
要約
上述のシステム及び方法は、効率的かつ正確にカメラモニタリングシステム内のカメラ群の現在の姿勢を求めることを提供することが理解されよう。ある実施形態では、この姿勢を求めることは、いかなる追加のハードウェアも必要とすることなく、参照情報に対する比較を通じてなされる。例えば、システムは、シーンの正確な3次元モデル、又は正確に知られたカメラ姿勢においてカメラによってキャプチャされた以前の画像を参照し得る。上述のように、この情報は、仮にそれが時間と共にシフトしたとしても、カメラの現在の姿勢を求めることを可能にするためには十分である。3次元モデルの使用は、初期の難しい手動較正手続を実行することなくカメラが容易に取り付けられる点で、特に優位性をもつ。
【0084】
他の実施形態では、システムは、カメラにマウントされたオンボード方向センサを積極的に利用してカメラ姿勢を求め得る。さらなる実施形態では、カメラは、カメラの方向を積極的に調整するためのアクチュエータが取り付けられる。この自動較正は、システムが、もしカメラ方向が衝撃等によって大きく変動したなら、乗り物運転の間に自らアラインさせることを可能にする。カメラの姿勢を正確に知ることによって、あるカメラ姿勢から他の姿勢へと物体を追尾又は投影することに関連する誤差は大幅に減少する。
【0085】
解釈
具体的にそうではないと述べない限り、以下の議論から明らかなように、明細書を通して、「処理すること」、「コンピューティングすること」、「計算すること」、「求めること」、「分析すること」等のような語は、例えば電子的な、物理的な量として表されるデータを同様に物理量として表される他のデータに操作及び/又は変換する、コンピュータ又はコンピューティングシステム、又は類似の電子計算装置の動作及び/又は処理を指すことが理解されよう。
【0086】
同様に、「コントローラ」又は「プロセッサ」という語は、レジスタ及び/又はメモリからの電子データを処理することによって、その電子データを、例えばレジスタ及び/又はメモリに記載され得る他の電子データに変換する、任意の装置又は装置の一部を指し得る。「コンピュータ」又は「コンピューティングマシン」又は「コンピューティングプラットフォーム」は、1つ以上のプロセッサを含み得る。
【0087】
ここで記載される手法は、ある実施形態では、1つ以上のプロセッサによって実行されたときに、ここで記載された方法のうちの少なくとも1つを実行する一連の命令を含むコンピュータで読み取り可能な(機械読み取り可能なとも呼ばれる)コードを受け入れる、1つ以上のプロセッサによって実行可能である。とられるべき動作を特定する一連の命令(順次の又は他の)を実行できる任意のプロセッサが含まれる。よって、1つの例としては、1つ以上のプロセッサを含む典型的な処理システムがある。それぞれのプロセッサは、1つ以上のCPU、グラフィックスプロセシングユニット、及びプログラマブルDSPユニットを含み得る。処理システムは、メインRAM及び/又はスタティックRAM、及び/又はROMをさらに含み得る。バスサブシステムは、要素間で通信するために含まれ得る。処理システムは、さらに、ネットワークによって結合されたプロセッサ群を持つ分散化された処理システムであり得る。もしこの処理システムがディスプレイを要求するなら、そのようなディスプレイは、例えば、液晶ディスプレイ(LCD)又は陰極線管(CRT)ディスプレイを含み得る。もし手動データ入力が必要なら、処理システムは、1つ以上の、キーボードのようなアルファベット数字の入力ユニット、マウスのようなポインティングコントロールデバイス等のような入力デバイスも含む。ここで用いられるメモリユニットという語は、もし文脈から明らかであり、明示的にそうではないと述べられないなら、ディスクドライブユニットのような記憶システムも包含する。ある構成の処理システムは、サウンド出力デバイス及びネットワークインタフェースデバイスを含み得る。メモリサブシステムは、よって、1つ以上のプロセッサによって実行されたときに、ここで記載された1つ以上の方法を実行させる一連の命令を含むコンピュータ読み取り可能なコード(例えばソフトウェア)を担持するコンピュータ読み取り可能な担持媒体を含む。この方法がいくつかの要素、例えば、いくつかのステップを含むとき、具体的に述べられない限り、そのような要素の順番付けは暗示されていない。ソフトウェアは、ハードディスク中に常駐し得て、又は、コンピュータシステムによるその実行の間には、完全に又は少なくとも部分的にはRAM内に及び/又はプロセッサ内に常駐し得る。よって、メモリ及びプロセッサも、コンピュータ読み取り可能なコードを担持するコンピュータ読み取り可能な担持媒体を構成する。
【0088】
さらに、コンピュータ読み取り可能な担持媒体は、コンピュータプログラム製品を形成し得て、又はその中に含まれ得る。
【0089】
代替の実施形態では、1つ以上のプロセッサは、スタンドアローンの装置として動作し、又はネットワークされた展開において、他のプロセッサ(群)と例えばネットワークで接続し得て、1つ以上のプロセッサは、サーバ・ユーザネットワーク環境におけるサーバ又はユーザマシンの役割で、又はピアツーピア又は分散ネットワーク環境でのピアマシンとして動作し得る。1つ以上のプロセッサは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブ機器、ネットワークルータ、スイッチ又はブリッジ、又はそのマシンによってとられるべき行為を特定する一連の命令(順次に又は他のやり方で)を実行することができる任意のマシンを形成し得る。
【0090】
図は、単一のプロセッサ及びコンピュータ読み取り可能なコードを担持する単一のメモリしか示していないが、本発明の局面を不明瞭にしないために、上述の多くの要素は、明示的に示され、又は記載されていなくても含まれていることが当業者には理解できるだろう。例えば、単一の機器しか図示されていないが、「機器」という語は、一つのセットの(又は複数のセットの)命令を個別に又は連携して実行することによって、ここで説明された手法のうちの任意の1つ以上のものを実行する機器群の任意の集まりを含むよう解釈されるべきである。
【0091】
よって、ここで記載された方法のうちのそれぞれの1つの実施形態は、例えば1つ以上のプロセッサ、例えばウェブサーバの構成の一部である1つ以上のプロセッサ上で実行される、一連の命令、例えばコンピュータプログラムを担持するコンピュータ読み取り可能な担持媒体の形態をとる。よって当業者には理解されるように、本発明の実施形態は、方法、特別な目的のための装置のような装置、データ処理システムのような装置、又はコンピュータ読み取り可能な担持媒体、例えばコンピュータプログラム製品として実現され得る。コンピュータ読み取り可能な担持媒体は、1つ以上のプロセッサで実行されたときに、プロセッサ又はプロセッサ群に方法を実行させる一連の命令を含むコンピュータ読み取り可能なコードを担持する。したがって、本発明の局面は、方法、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェア及びハードウェアの局面が組み合わせられた実施形態の形態をとり得る。さらに本発明は、媒体に実現されたコンピュータ読み取り可能なプログラムコードを担持する担持媒体の形態(例えばコンピュータ読み取り可能な記憶媒体上のコンピュータプログラム製品)をとり得る。
【0092】
ソフトウェアは、ネットワークインタフェースデバイスを介してネットワークを通じてさらに送信され、又は受信され得る。担持媒体は、例示的実施形態では単一の媒体として示されているが、「担持媒体」という語は、命令の1つ以上のセットを記憶する単一の媒体又は複数の媒体(例えば中央化された又は分散化されたデータベース、及び/又は関連するキャッシュ及びサーバ)を含むように解釈されるべきである。「担持媒体」という語は、1つ以上のプロセッサによって実行されるための命令のセットを記憶、エンコード、又は担持することができ、1つ以上のプロセッサに本発明の方法のうちの任意の1つ以上のものを実行させる任意の媒体を含むようにも解釈されるべきである。担持媒体は、これらには限定されないが、不揮発性媒体、揮発性媒体、及び伝送媒体を含む多くの形態をとり得る。不揮発性媒体は、例えば、光学、磁気ディスク、及び光磁気ディスクを含む。揮発性媒体は、メインメモリのようなダイナミックメモリを含む。伝送媒体は、バスサブシステムを含む電線を含む、同軸ケーブル、銅線、及び光ケーブルを含む。伝送媒体は、ラジオ波及び赤外データ通信の間に発生されるもののような音響的又は光学的波の形態もとり得る。例えば、「担持媒体」という語は、したがって、これらには限定されないが、固体メモリ、光学的及び磁気的媒体に実現されたコンピュータ製品、少なくとも1つのプロセッサによって検出され得て、実行されるときに方法を実現する命令のセットを表す伝搬される信号を担持する媒体、及び少なくとも1つのプロセッサのうちの少なくとも1つによって検出可能であり、命令のセットを表す伝搬される信号を担持するネットワーク中の伝送媒体を含むよう解釈されるべきである。
【0093】
説明された方法のステップは、ある実施形態では、記憶装置に記憶された命令(コンピュータ読み取り可能なコード)を実行する処理(すなわちコンピュータ)システムの適切なプロセッサ(又はプロセッサ群)によって実行されることが理解されよう。本発明は、いかなる具体的な実現法又はプログラミング手法にも限定されないこと、及び本発明は、ここで記載された機能を実現する任意の適切な手法を用いて実現され得ることが理解されよう。本発明は、いかなる特定のプログラミング言語又はオペレーティングシステムにも限定されない。
【0094】
本明細書を通して「1つの実施形態」、「いくつかの実施形態」、又は「ある実施形態」という言い方は、実施形態に関連して記載された特定の特徴、構造、又は特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。よって、本明細書を通してさまざまな箇所に「1つの実施形態」、「いくつかの実施形態」、又は「ある実施形態」という文言が現れることは、必ずしも全てが同一の実施形態を指すのではない。さらに、特定の特徴、構造、又は特性は、本開示から当業者には明らかなように、1つ以上の実施形態において任意の適切なやり方で組み合わせられてもよい。
【0095】
ここで用いられるように、特にそうではないと述べられない限り、共通の物体を記載するために用いられる順序を表す形容詞「第1」、「第2」、「第3」等は、単に類似の物体の異なる例が参照されることを示すだけであり、そのように記載された物体が、時間的、空間的、序列において、又は任意の他の点において、与えられた順序で存在しなければならないことを示唆するようには意図されていない。
【0096】
以下の特許請求の範囲及びここでの説明において、備える、備わった、又は備えられているという語のいずれも開放的な語であり、少なくとも後に続く要素/特徴を含むことを意味するのであって、他のものを排除することを意味しない。よって備えるという語は、特許請求の範囲で用いられるときは、その後に列挙された手段又は要素又はステップに限定されるようには解釈されるべきではない。例えば、A及びBを備える装置という表現の範囲は、要素A及びBだけからなる装置に限定されるべきではない。ここで使われているように含むという語のいずれもやはり開放的な語であり、その語の後に続く要素/特徴を少なくとも含むということを意味するが、他の物を排除する意味はない。よって含むは、備えると同義であり、備えるという意味である。
【0097】
本開示の例示的実施形態の上の説明において、本開示のさまざまな特徴は、時として、本開示を効率的にし、1つ以上のさまざまな発明の局面の理解を助けるために、単一の実施形態、図、又はその記載においてまとめられている。しかしこの開示方法は、特許請求の範囲がそれぞれの特許請求の範囲において明示的に記載されたよりも多くの特徴を要求するという意図を反映するようには解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、本発明の局面は、単一の前述の開示された実施形態の全ての特徴よりも少ない所に存する。よって詳細な説明の後の特許請求の範囲は、ここで明示的にこの詳細な説明に援用され、それぞれの請求項は、本開示の別々の実施形態として、それ自身で有効である。
【0098】
さらに、当業者に理解されるように、ここで記載されたいくつかの実施形態は、いくつかの特徴を含むが、他の実施形態中に含まれる他の特徴は含まないが、異なる実施形態の特徴の組み合わせも本開示の範囲内にあると意図され、異なる実施形態を形成するものと意図される。例えば、以下の特許請求の範囲において、請求された実施形態の任意のものは、任意の組み合わせにおいて用いられ得る。
【0099】
ここに提供された記載において、多くの具体的な詳細が述べられている。しかし、本開示の実施形態は、これら具体的な詳細なしでも実施され得ることが理解されよう。換言すれば、本記載の理解を不明瞭にさせないために、よく知られた方法、構造、及び技術は詳細には示されていない。
【0100】
同様に、結合されるという語は、特許請求の範囲で使われるときには、直接的接続だけに限定されて解釈されるべきではないことに注意されたい。「結合された」及び「接続された」という語が、それらの派生形もあわせて、用いられ得る。これら語は、互いの同義語としては意図されていない。よって装置Bに結合された装置Aという表現の範囲は、装置Aの出力が直接に装置Bの入力に接続されている装置又はシステムに限定されるべきではない。それは、Aの出力及びBの入力の間のパスが存在し、これは、他の装置又は手段を含むパスであってもよいということを意味する。「結合された」は、2つ以上の要素が直接的な物理的、電気的、又は光学的接触のいずれかにあること、又は2つ以上の要素が直接的な接触にはないが、依然として互いに協働又は相互作用することを意味し得る。
【0101】
よって、本開示の好ましい実施形態であるべきものが記載されてきたが、他のさらなる改変が本開示の精神から逸脱することなくなされ得て、そのような変更及び改変が本開示の範囲内に入るものとして請求されていると意図されていることが当業者にはわかるだろう。例えば、上で与えられた任意の表現は、用いられ得る手続を代表するものに過ぎない。機能が、ブロック図から追加又は削除されてもよく、操作は、機能ブロック間で相互交換されてもよい。本開示の範囲内で、記載された方法に対してステップが追加又は削除されてもよい。