JP3833786B2 - 移動体の3次元自己位置認識装置 - Google Patents
移動体の3次元自己位置認識装置 Download PDFInfo
- Publication number
- JP3833786B2 JP3833786B2 JP20931997A JP20931997A JP3833786B2 JP 3833786 B2 JP3833786 B2 JP 3833786B2 JP 20931997 A JP20931997 A JP 20931997A JP 20931997 A JP20931997 A JP 20931997A JP 3833786 B2 JP3833786 B2 JP 3833786B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- image
- distance
- moving body
- position recognition
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 115
- 238000012545 processing Methods 0.000 claims description 105
- 238000003384 imaging method Methods 0.000 claims description 68
- 238000013519 translation Methods 0.000 claims description 54
- 239000011159 matrix material Substances 0.000 claims description 36
- 238000005259 measurement Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 description 49
- 238000010586 diagram Methods 0.000 description 28
- 230000015654 memory Effects 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 14
- 101000786631 Homo sapiens Protein SYS1 homolog Proteins 0.000 description 13
- 102100025575 Protein SYS1 homolog Human genes 0.000 description 13
- 239000013598 vector Substances 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000004297 night vision Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000000575 pesticide Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0251—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/239—Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/296—Synchronisation thereof; Control thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/246—Calibration of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/257—Colour aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0081—Depth or disparity estimation from stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0085—Motion estimation from stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0096—Synchronisation or controlling aspects
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
- Measurement Of Optical Distance (AREA)
- Image Processing (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Navigation (AREA)
Description
【発明の属する技術分野】
本発明は、自律航法によって移動する移動体の3次元自己位置認識装置に関する。
【0002】
【従来の技術】
従来より、無人ロボット、自律走行作業車、無人ヘリコプター等の自律的に移動する移動体に関し、移動制御、経路検出、航路検出、ロケーション検出等の各種技術が開発されており、これらの中でも、自己位置認識は重要な技術の一つである。
【0003】
この自己位置認識の技術としては、例えば、自律走行作業車等の地上を自律的に走行する移動体では、振動ジャイロや光ジャイロによって2次元の角速度を検出するとともに、対地速度を測定するセンサによって並進速度を検出し、基準位置からの移動量を演算して自己位置を測定する技術があり、また、無人ヘリコプター等の飛行移動体では、慣性航法装置により、重力加速度を検出して飛行体の加速度を検出し、この加速度を積分することで移動量を知る技術がある。
【0004】
さらに、近年では、GPS衛星等のように、少なくとも3つの人工衛星の電波を受信し、2台のGPS受信機で受ける電波の位相差あるいは単独で符号通信内容(衛星の位置と電波の発射更新時間)を解析し、自己位置を割り出す技術も採用されており、本出願人は、先に、特願平8−249061号公報において、衛星利用の測位データにより基準位置からの走行履歴に基づく測位データを補正し、制御安定性を向上した自律走行車を提案している。
【0005】
【発明が解決しようとする課題】
しかしながら、無人ヘリコプター等のような飛行体では、3次元空間における自己の回転や並進の速度を知る必要があるばかりでなく、低空飛行の際には正確な対地高度や木目細かな航法情報を得る必要がある。
【0006】
このような場合、従来の装置では、測位精度低下の原因となるドリフトの影響によって精度が不足するばかりでなく、地形が複雑であると、正確な対地高度を得ることは困難である。すなわち、従来の技術では、3次元空間における周囲環境を細かく分析し、航法情報に反映させるという点で不十分である。
【0007】
本発明は上記事情に鑑みてなされたもので、3次元空間における周囲環境を分析して航法情報に反映させ、高精度で緻密な航法情報を得ることのできる移動体の3次元自己位置認識装置を提供することを目的としている。
【0008】
【課題を解決するための手段】
請求項1記載の発明は、移動体に搭載されるステレオカメラにより、一定時間毎に遠方風景と下方風景とを撮像する手段と、遠方風景の撮像画像と下方風景の撮像画像とに対し、それぞれの撮像画像の中から特徴的な絵柄の領域を第1のブロックとして複数箇所抽出し、次のタイミングで撮像した画像の中から第1のブロックと同じ絵柄を有する領域を第2のブロックとして探索する手段と、遠方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、遠方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における回転速度成分を求める手段と、下方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、下方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における速度成分を求め、この速度成分から上記回転速度成分を除去して移動体のフレーム間のカメラ固定の座標系における並進速度成分を求める手段と、上記フレーム間のカメラ固定の座標系における並進速度成分を測距開始地点で空間に固定した座標系における並進速度成分に変換し、この変換した並進速度成分を累積して3次元空間における航法軌跡を求めることにより、移動体の自己位置を認識する手段とを備えたことを特徴とする。
【0010】
請求項2記載の発明は、請求項1記載の発明において、上記フレーム間のカメラ固定の座標系における並進速度成分を、測距開始地点で空間に固定した座標系の原点から見た移動体の最新の姿勢を表す回転成分で補正し、測距開始地点で空間に固定した座標系における並進速度成分に変換することを特徴とする。
【0011】
請求項3記載の発明は、請求項2記載の発明において、測距開始地点で空間に固定した座標系における移動体の姿勢を表す行列を単位行列化して初期化した後、今回処理時のフレーム間のカメラ固定の座標系における回転速度成分を表す行列を測距開始地点で空間に固定した座標系の原点から見た前回までの移動体の姿勢を表す行列に積算し、上記移動体の最新の姿勢を表す回転成分とすることを特徴とする。
【0012】
請求項4記載の発明は、請求項1記載の発明において、第1のブロックを抽出する際、撮像画面を所定範囲で分割した複数の探索エリアを設定し、各探索エリア毎に第1のブロックを最大1個抽出することを特徴とする。
【0013】
請求項5記載の発明は、請求項1記載の発明において、第1のブロックをm個抽出する際、撮像画面をn個の領域に分割し、各領域で抽出する第1のブロックを最大m/n個とすることを特徴とする。
【0014】
請求項6記載の発明は、請求項1記載の発明において、第1のブロックを遠方風景の撮像画像から抽出する際、上記距離画像の対応する領域の距離画像値が小さく、測距点から十分に遠方にある小領域を、第1のブロックの候補とすることを特徴とする。
【0015】
請求項7記載の発明は、請求項1記載の発明において、第1のブロックを下方風景の撮像画像から抽出する際、上記距離画像の対応する領域の距離画像値のバラツキが少ない平面的な小領域を、第1のブロックの候補とすることを特徴とする。
【0016】
請求項8記載の発明は、請求項1記載の発明において、第1のブロックを下方風景の撮像画像から抽出する際、画面の中央ラインから進行方向側に所定量オフセットさせたラインを探索開始ラインとして設定し、この探索開始ラインを上記並進速度成分によって可変することを特徴とする。
【0017】
請求項9記載の発明は、請求項1記載の発明において、第1のブロックを抽出する際、対象とする領域の画像品質を、上記距離画像の対応する領域の距離画像値を用いて作成したヒストグラムによって評価することを特徴とする。
【0018】
請求項10記載の発明は、請求項9記載の発明において、上記ヒストグラムを、抽出ピクセルが所定の閾値以上の度数をカウントして作成することを特徴とする。
【0019】
請求項11記載の発明は、請求項9記載の発明において、最大ヒストグラムを記録する距離画像値に対して所定範囲にあるヒストグラム値の総度数が所定の比率以上のとき、対象とする領域の画像品質が良好であると判定することを特徴とする。
【0020】
請求項12記載の発明は、請求項1記載の発明において、第2のブロックを探索する際、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアから第2のブロックを探索することを特徴とする。
【0021】
請求項13記載の発明は、請求項1記載の発明において、第2のブロックを探索する際、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアから第2のブロックを探索することを特徴とする。
【0022】
請求項14記載の発明は、請求項1記載の発明において、第2のブロックを探索する際、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることを特徴とする。
【0023】
請求項15記載の発明は、請求項1記載の発明において、第2のブロックを探索する際、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることを特徴とする。
【0024】
請求項16記載の発明は、請求項1記載の発明において、第1のブロックと第2のブロックとの対を所定数取得できないとき、前回処理で求めた回転速度成分及び並進速度成分を今回処理の回転速度成分及び並進速度成分として更新することを特徴とする。
【0025】
請求項17記載の発明は、請求項1記載の発明において、複数の第1のブロックの配列パターンと複数の第2のブロックの配列パターンとの相違を調べて配置が異なるブロックを排除した後、第1のブロックと第2のブロックとの対を所定数確保できたとき、上記フレーム毎の移動体の回転速度成分を求める処理へ移行し、第1のブロックと第2のブロックとの対を所定数確保できないときには、前回処理で求めた回転速度成分を今回処理の回転速度成分として更新することを特徴とする。
【0026】
請求項18記載の発明は、請求項17記載の発明において、上記配列パターンの相違を、各ブロック間の距離と各ブロックによって構成される三角形の面積とによって調べることを特徴とする。
【0027】
請求項19記載の発明は、請求項1記載の発明において、上記測距開始地点の位置を、測位装置からの情報あるいは既知の地図情報によって初期化し、上記航法軌跡から移動体の絶対位置を認識することを特徴とする。
【0028】
請求項20記載の発明は、請求項1記載の発明において、上記ステレオカメラを、遠方風景撮像用のステレオカメラと下方風景撮像用のステレオカメラとから構成し、互いのステレオカメラの撮像面の方向が直交するよう配置することを特徴とする。
【0029】
請求項21記載の発明は、請求項20記載の発明において、上記遠方風景撮像用のステレオカメラと上記下方風景撮像用のステレオカメラとを、互いの基準カメラ同士が近接した状態に配置することを特徴とする。
【0030】
すなわち、本発明による移動体の自己位置認識装置では、一定時間毎に遠方風景と下方風景とを撮像し、それぞれの撮像画像の中から特徴的な絵柄の領域を第1のブロックとして複数箇所抽出し、次のタイミングで撮像した画像の中から第1のブロックと同じ絵柄を有する領域を第2のブロックとして探索すると、遠方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、遠方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における回転速度成分を求め、また、下方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、下方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における速度成分を求め、この速度成分から上記回転速度成分を除去して移動体のフレーム間のカメラ固定の座標系における並進速度成分を求める。そして、このフレーム間のカメラ固定の座標系における並進速度成分を測距開始地点で空間に固定した座標系における並進速度成分に変換し、この変換した並進速度成分を累積して3次元空間における航法軌跡を求め、移動体の自己位置を認識する。
【0031】
この場合、測距開始地点の位置を測位装置からの情報あるいは既知の地図情報によって初期化することで移動体の絶対位置を認識することができ、また、フレーム間のカメラ固定の座標系における並進速度成分は、測距開始地点で空間に固定した座標系の原点から見た移動体の最新の姿勢を表す回転成分で補正して測距開始地点で空間に固定した座標系における並進速度成分に変換することができる。
【0032】
測距開始地点で空間に固定した座標系の原点から見た移動体の最新の姿勢を表す回転成分は、測距開始地点で空間に固定した座標系における移動体の姿勢を表す行列を単位行列化して初期化した後、今回処理時のフレーム間のカメラ固定の座標系における回転速度成分を表す行列を測距開始地点で空間に固定した座標系の原点から見た前回までの移動体の姿勢を表す行列に積算することで得られる。
【0033】
また、第1のブロックを抽出する際には、撮像画面を所定範囲で分割した複数の探索エリアを設定し、各探索エリア毎に第1のブロックを最大1個抽出する、あるいは、第1のブロックをm個抽出する際、撮像画面をn個の領域に分割し、各領域で抽出する第1のブロックを最大m/n個とすることが望ましく、撮像画面の特定の領域に抽出箇所が集中せずに画面全体に分散した特徴的な絵柄を抽出することができる。
【0034】
また、第1のブロックを下方風景の撮像画像から抽出する際には、画面の中央ラインから進行方向側に所定量オフセットさせたラインを探索開始ラインとして設定し、この探索開始ラインを上記並進速度成分によって可変することが望ましく、下方画像の動きを考慮して前・後進速度に応じて撮像面を有効に利用することができる。
【0035】
さらに、第2のブロックを探索する際には、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアから第2のブロックを探索することで、限定した領域から確実な画像マッチングを行うことができ、特に、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアから第2のブロックを探索することが望ましい。
【0036】
また、第1のブロックと第2のブロックとの対を所定数取得できないときには、前回処理で求めた回転速度成分及び並進速度成分を今回処理の回転速度成分及び並進速度成分として更新する、あるいは、複数の第1のブロックの配列パターンと複数の第2のブロックの配列パターンとの相違を調べて配置が異なるブロックを排除した後、第1のブロックと第2のブロックとの対を所定数確保できたとき、フレーム毎の移動体の回転速度成分を求める処理へ移行し、第1のブロックと第2のブロックとの対を所定数確保できないときには、前回処理で求めた回転速度成分を今回処理の回転速度成分として更新することが望ましく、誤った情報による誤差を排除することができる。この配列パターンの相違は、各ブロック間の距離と各ブロックによって構成される三角形の面積とによって調べることができる。
【0037】
一方、距離画像を用いる場合には、第1のブロックを遠方風景の撮像画像から抽出する際、距離画像の対応する領域の距離画像値が小さく、測距点から十分に遠方にある小領域を第1のブロックの候補とし、第1のブロックを下方風景の撮像画像から抽出する際、上記距離画像の対応する領域の距離画像値のバラツキが少ない平面的な小領域を第1のブロックの候補とすることが望ましく、航法計算に適した特徴的な絵柄を抽出することができる。
【0038】
また、距離画像を用いて第1のブロックを抽出する際には、対象とする領域の画像品質を、距離画像の対応する領域の距離画像値を用いて作成したヒストグラムによって評価することが望ましく、ヒストグラムを、抽出ピクセルが所定の閾値以上の度数をカウントして作成し、最大ヒストグラムを記録する距離画像値に対して所定範囲にあるヒストグラム値の総度数が所定の比率以上のとき、対象とする領域の画像品質が良好であると判定することが望ましい。
【0039】
また、第2のブロックを探索する際には、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることが望ましく、特に、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることが望ましい。
【0040】
さらに、ステレオカメラを、遠方風景撮像用のステレオカメラと下方風景撮像用のステレオカメラとから構成し、互いのステレオカメラの撮像面の方向が直交するよう配置することが望ましく、遠方風景撮像用のステレオカメラと下方風景撮像用のステレオカメラとを、互いの基準カメラ同士が近接した状態に配置することで、移動体の回転運動の検出中心と並進運動の検出中心とを略一致させることができる。
【0041】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。図面は本発明の実施の一形態に係わり、図1は自己位置認識装置の機能構成図、図2は3次元空間計測用カメラアセンブリの構成図、図3は自己位置認識装置の回路ブロック図、図4は並列処理のタイムチャート、図5はSYS1初期化処理ルーチンのフローチャート、図6はSYS2初期化処理ルーチンのフローチャート、図7はNo1ブロック群取得処理ルーチンのフローチャート、図8はNo2ブロック群取得処理ルーチンのフローチャート、図9は回転演算処理ルーチンのフローチャート、図10は並進演算処理ルーチンのフローチャート、図11は航法演算処理ルーチンのフローチャート、図12は遠方のNo1ブロックの取得パターンを示す説明図、図13は画像評価におけるヒストグラム分布の好ましくない例を示す説明図、図14は画像評価におけるヒストグラム分布の好ましい例を示す説明図、図15は下方のNo1ブロックの取得パターンを示す説明図、図16は探索エリアの設定を示す説明図、図17は遠方画像の特徴を示す説明図、図18は遠方画像に探索エリアを設定した例を示す説明図、図19は下方の撮像面上の動きを示す説明図、図20は下方画像に探索エリアを設定した例を示す説明図、図21は三角測量による撮像面座標から実距離への換算を示す説明図、図22は測距開始地点のランドマークを示す説明図、図23は自律航法による航法軌跡の説明図である。
【0042】
図1は、3次元空間計測用の複数のカメラからなるカメラアセンブリ10と、このカメラアセンブリ10で撮像した画像から距離情報を取得するステレオ画像処理装置20と、画像情報から3次元空間における移動体の自己位置を認識し、航法データを外部のターゲットコントロールシステム100に出力する自己位置認識装置30等から構成される移動体の3次元自己位置認識装置であり、本形態においては、例えば、農薬散布等に使用される無人ヘリコプターに搭載される自律航法装置への適用例を示し、ハンドシェイクまたはタイムスケジュールによる並列処理によってデータ処理が行われる。
【0043】
上記カメラアセンブリ10は、移動体に搭載されて周囲環境を一定時間毎に撮像し、周囲環境の変化を1画面単位で捕らえるとともに、水平ズレに応じた距離情報を取得するための測距センサ的役割を果たすものであり、図2に示すように、架台11に、移動体の回転速度成分を演算するために必要な遠方風景を撮像するための1組の遠方用ステレオカメラ12と、移動体の並進速度成分を演算するのに必要な下方風景(地表面)を撮像するための1組の下方用ステレオカメラ13とが設置されている。
【0044】
上記遠方用ステレオカメラ12は、メインカメラ(基準カメラ)12aと、このメインカメラ12aと同じ仕様のサブカメラ12bとが基線長LSの関係で、且つ、互いの撮像面垂直軸が平行となるよう配置されており、また、上記下方用ステレオカメラ13は、メインカメラ(基準カメラ)13aと、このメインカメラ13aと同じ仕様のサブカメラ13bとが基線長SSの関係で、且つ、互いの撮像面垂直軸が平行となるように配置されている。
【0045】
本発明による自己位置認識装置では、遠方風景の撮像画像及び下方風景の撮像画像のそれぞれについて、撮像時間の異なる画像間の動きから移動体の運動を検出するようにしており、遠方画像の動き、下方画像の動きを、それぞれの距離画像に基づいて実空間での移動量に換算し、図23に示すように、下方画像の動きによる速度成分から遠方画像の動きによる回転速度成分を除去して純並進速度成分を求めた後、測距開始地点(スタート地点)から見た並進速度成分に変換して累積することにより、3次元空間における航法軌跡を求めて移動体の自己位置を認識する。
【0046】
この場合、遠方用ステレオカメラ12によって移動体の回転速度を検出し、下方用ステレオカメラ13によって移動体の回転・並進速度を検出するためには、遠方用ステレオカメラ12の撮像面垂直軸と下方用ステレオカメラ13の撮像面垂直軸とが互いに直交し、且つ、遠方のメインカメラ軸と下方のメインカメラ軸とが同一平面で互いの基準点が一致していることが理想的である。
【0047】
しかしながら、2つのメインカメラ12a,13aの基準点を同じにすることは現実的には困難であるため、遠方用ステレオカメラ12の撮像面垂直軸と上記下方用ステレオカメラ13の撮像面垂直軸とが互いに直交するよう配置するとともに、遠方用のメインカメラ12aと下方用のメインカメラ13aとを寄せた配置とし、一方のカメラの3軸が他方のカメラの3軸のいずれかと平行関係になるよう配置することで、2組のステレオカメラ12,13から得られる遠方画像及び下方画像の動きに対し、1つの実空間座標系での取り扱いを可能とする。
【0048】
この場合、下方用ステレオカメラ13に3軸中心を置くが、遠方用ステレオカメラ12が下方用ステレオカメラ13の周囲を回転し、両者のオフセット量が生じても、後述するように、遠方画像の性質から、遠方画像の動きには影響せず、下方のカメラ軸と遠方のカメラ軸とが直交関係にあることから、並進と回転を含む速度成分から回転速度成分を除く処理や原点(測距開始地点で空間に固定したXYZ座標系原点)から見た航法計算処理を簡素化し、画像の動きを的確に把握することを可能としている。
【0049】
尚、上記カメラアセンブリ10に使用するカメラは、EIA準拠の白黒カメラの他、カラーCCDカメラ(3−CCD方式をも含む)、赤外線カメラ、暗視カメラ等のエリア・スキャンを行う方式のカメラや、撮像素子からの情報をデジタルで出力する方式のカメラ等が使用可能である。
【0050】
上記ステレオ画像処理装置20は、主として、メインカメラ12a(13a)の撮像対象領域と同じパターン(模様)を持つ領域箇所をサブカメラ12b(13b)の撮像座標から探して撮像素子から対象物までの距離に応じて生じる画素のズレ(=視差)を求め、このズレ量から得られる対象物までの遠近情報を数値化した3次元画像情報を取得する(ステレオ画像処理)ものであり、遠方元画像メモリ21、下方元画像メモリ22、遠方距離画像メモリ23、下方距離画像メモリ24等の処理結果を情報内容別に記録するメモリを備えている。
【0051】
上記遠方元画像メモリ21には、遠方用のメインカメラ12aで撮像した画像をAD変換及びLOG変換して数値化した画像データが時系列的に記録され、上記下方元画像メモリ22には、下方用のメインカメラ13aで撮像した画像をAD変換及びLOG変換して数値化した画像データが時系列的に記録される。
【0052】
また、上記遠方用距離画像メモリ23には、遠方用ステレオカメラ12から得られる2つの画像をステレオ画像処理し、メインカメラ12aで撮像した撮像対象箇所または対象物までの距離値を数値化したデータが時系列的に記録され、同様に、上記下方用距離画像メモリ24には、下方用ステレオカメラ13から得られる2つの画像をステレオ画像処理し、メインカメラ13aで撮像した撮像対象箇所または対象物までの距離値を数値化したデータが時系列的に記録される。
【0053】
尚、上記ステレオ画像処理については、本出願人による特開平5−114099号公報に詳述されている。
【0054】
上記自己位置認識装置30では、所定時間毎に撮像した遠方画像・下方画像の各々に対してパターンの同じ箇所を複数箇所抽出し、それぞれの画像の動きと画面毎の時間経過とから回転・並進速度成分を求めてフレーム間の並進速度成分を原点(測距開始地点で空間に固定したXYZ座標系原点)から見た並進速度成分に変換し、3次元空間で蓄積して航法軌跡を求めることにより、自己位置をリアルタイムで認識する。
【0055】
上記自己位置認識装置30の機能は、図1に示すように、初期化処理部31、No1ブロック群取得処理部32、No2ブロック群取得処理部33、回転演算処理部34、並進演算処理部35、航法計算処理部36、通信処理部37によって示すことができる。
【0056】
初期化処理部31では、ハードウエアの初期化、各定数値、各変数値の初期化を行うと共に、以下に述べるNo1ブロック群及びNo2ブロック群の初期データを蓄積する。
【0057】
No1ブロック群取得処理部32では、遠方元画像及び下方元画像のそれぞれから、航法演算処理に適正な画像領域の絵柄箇所(以下、No1ブロックと称する)を所定の間隔で切り出す処理を行い、複数のNo1ブロック(No1ブロック群)を、遠方画像、下方画像のそれぞれについて取得する。
【0058】
この場合、上記No1ブロックは適度に小さい領域とし、画像が多少回転しても平行移動のみで個々のNo1ブロックに対して以下のNo2ブロックを確実にマッチング可能なようにし、また、膨大な情報量の中から測距点までの距離を確実に絞れるようにする。本形態では、No1ブロックの大きさを12×6ピクセルの小領域とする。
【0059】
このNo1ブロック群の取得に際しては、12×6ピクセルの領域に対して出現する距離画像値のヒストグラムを作成し、このヒストグラム情報によって撮像画像の信頼性を評価し、切り出し箇所の良否を判定する。すなわち、距離画像は、左右のカメラが捕らえた画像パターンが同じならば、走査線方向のズレ量に応じた距離画像値が得られるため、この特徴を利用し、同じ距離画像値が周辺に所定の数があれば、対象画像は実在する確かな画像であると判断する。
【0060】
No2ブロック群取得処理部33では、所定時間後に撮像した画像に対し、No1ブロックの絵柄と同じ箇所を探索するための探索エリアを設定し、各探索エリア毎にシティブロック距離を計算してマッチング具合を判定し、No1ブロックの絵柄と同じ箇所(以下、No2ブロックと称する)を抽出する。この処理を、遠方画像、下方画像のそれぞれについて行い、複数のNo2ブロック(No2ブロック群)を取得する。
【0061】
回転演算処理部34では、遠方画像(遠方元画像)のNo1ブロック群からNo2ブロック群へのオプティカルフロー(No1ブロックのイニシャル座標からNo2ブロックの特定座標までの撮像座標面での動きを表した移動ベクトルの分布)に基づいて実距離成分の差を求め、この実距離成分の差から回転速度成分(ロール・ピッチ・ヨーの角速度)を算出する。
【0062】
並進演算処理部35では、下方画像(下方元画像)のNo1ブロック群からNo2ブロック群へのオプティカルフローに基づいて実距離成分の差を求め、この実距離成分の差による速度成分から回転速度成分を除いて3次元方向(X,Y,Z方向)の純並進速度を求める。
【0063】
航法計算処理部36では、上記並進演算処理部35での演算結果を原点から見た3次元方向の速度に変換し、イニシャル地点から速度成分を累積して原点からの移動量や現在位置を割り出す。また、通信処理部37では、パラレルあるいはシリアル通信によって航法データを外部のターゲットコントロールシステム100に出力する。
【0064】
以上の時系列的なアルゴリズムに対し、実際には、遠方・下方の画像の取り込みは同時に行う必要があり、無人移動システムにおけるナビゲーションとしての実用性を考慮した場合、短い時間周期(例えば、0.1sec毎)で航法データを外部システムに送出することが望ましい。
【0065】
従って、上記自己位置認識装置30は、具体的には、図3に示すハードウエア構成となっており、このハードウエア構成によって並列処理による高速処理を実現している。
【0066】
すなわち、上記自己位置認識装置30は、マスタースレーブ関係にあるNo1ブロック群取得処理用のマスタープロセッサ(SYS1マスター)40及び通信処理用のスレーブプロセッサ(SYS1スレーブ)41と、同じくマスタースレーブ関係にあるNo2ブロック群取得処理用のマスタープロセッサ(SYS2マスター)42及び回転・並進・航法計算用のスレーブプロセッサ(SYS2スレーブ)43とがデュアルポートRAM(DPRAM)44を介して接続され、さらに、シティブロック計算処理用のマイクロプロセッサ45、ヒストグラム計算処理用のマイクロプロセッサ46が接続された基本構成となっている。
【0067】
上記SYS1マスター40側のバスには、ワークエリア・処理履歴記録用のDRAM47、12×6ピクセル領域における距離画像値のヒストグラム作成結果が記録されるDPRAM48、及び、No1ブロック群の探索エリア座標データが記録されるDPRAM49が接続されている。
【0068】
一方、上記SYS2マスター42側のバスには、同様にワークエリア・処理履歴記録用のDRAM50、No1ブロック元画像のパターンデータが記録されるDPRAM51、No2ブロックのシティブロック距離計算結果が記録されるDPRAM52が接続され、さらに、上記ステレオ画像処理装置20の各メモリ21〜24が接続されている。
【0069】
そして、上記ヒストグラム計算処理用マイクロプロセッサ46に、遠方距離画像メモリ23及び下方距離画像メモリ24からのデータが入力され、処理結果が上記DPRAM48に記録されるとともに、上記シティブロック計算処理用マイクロプロセッサ45に、遠方元画像メモリ21及び下方元画像メモリ22からのデータ、DPRAM49,51からのデータが入力され、処理結果が上記DPRAM52に記録される。
【0070】
尚、図3においては、片方向のデータの流れを矢印の線によって示し、双方向性のデータの流れは矢印の無い線によって示す。
【0071】
以上のハードウエア構成による処理の流れについて概略すると、図4に示すように、まず、遠方用ステレオカメラ12で撮像した画像に対し、12×6ピクセルの距離画像評価を経てNo1ブロック群の取得処理を行い、この処理が終わると、下方用ステレオカメラ13で撮像した画像に対し、12×6ピクセルの距離画像評価を経てNo1ブロック群の取得処理が開始される。
【0072】
同時に、遠方画像に対し、シティブロック距離(CBK)評価によるNo2ブロック群のマッチング処理が開始され、この遠方マッチング処理が完了して航法処理が始まると、下方画像に対するCBK評価を経てNo2ブロック群のマッチング処理が始まる。
【0073】
航法処理では、回転速度計算から並列速度計算を経て航法軌跡を求める航法計算を行い、航法データが算出されると、通信処理によって外部システムへデータが送信される。そして、この航法データによる自己位置に基づいて、予め設定された絶対座標の航路あるいは地上の目標物に対して設定された航路をとるよう、ヘリコプターの対地高度や飛行方向が精密に制御される。
【0074】
以下、主として自己位置認識装置30において実行される自己位置認識に係わる処理について、図5〜図11のフローチャートに従って説明する。
【0075】
図5はSYS1マスター31におけるSYS1初期化処理ルーチン、図6はSYS2マスター33におけるSYS2初期化処理ルーチンであり、システム起動時には、No1ブロック群取得処理用のSYS1マスター31側のSYS1初期化処理ルーチンが先に実行される。
【0076】
図5のSYS1初期化処理ルーチンでは、ステップS10でSYS1側のハードウエア各部を初期化し、ステップS11でステレオカメラの仕様定数値を初期化すると、ステップS12で、航法処理変数値や、その他の変数値を初期化する。次いで、ステップS13へ進み、アイドル処理としてNo1ブロック群の取得処理を実行し、No1ブロックを1個取得すると、ステップS14へ進み、アイドル処理終了か否かを判断する。
【0077】
そして、アイドル処理終了でないときには、上記ステップS14からステップS13へ戻ってNo1ブロックの取得を続行し、アイドル処理終了のとき、SYS1初期化処理ルーチンを終了する。このアイドル処理は、航法処理の開始に際してバッファ内にNo1ブロックのデータを蓄積する処理であり、例えば、バッファが3個の場合には、ステップS13→ステップS14→ステップS13のループを3回繰り返す。
【0078】
以上のSYS1初期化処理ルーチンでNo1ブロックが取得されると、図6のSYS2初期化処理ルーチンがスタートし、ステップS20で、同様に、SYS2側のハードウエア各部を初期化し、ステップS21でステレオカメラの仕様定数値を初期化すると、ステップS22で、航法処理変数値や、その他の変数値を初期化する。
【0079】
そして、同様に、ステップS23でのNo2ブロック群の取得処理、ステップS24でのアイドル処理終了判断を経てステップS23→ステップS24→ステップS23の処理ループを所定回数繰り返し、SYS2初期化処理ルーチンを終了する。
【0080】
次に、図7に示すNo1ブロック群の取得処理について説明する。この処理では、まず、ステップS30で、取り込んだ撮像画像に対し、遠方処理をすべきか下方処理をすべきかを選択する。この処理の選択は、撮像画像の処理タイミングが遠方画像が先で下方画像が次であることから、先に取り込んだ画像は遠方画像であるとしてステップS31以降の遠方処理へ進み、次に取り込む画像に対してはステップS33以降の下方処理へ進む。
【0081】
まず、ステップS31以降の遠方処理では、ステップS31で、遠方画像に対してNo1ブロックを探す走査範囲をイニシャル処理として設定する。この走査範囲は、図12に示すように、撮像面(LBは遠方元画像、LDは遠方距離画像)の水平走査方向をW、垂直走査方向をTとする全領域W×Tの内、水平走査方向の画面両端の検索しろi2と、垂直走査方向の画面両端の検索しろj2とを除いた領域WA×TSL(WA=W−2・i2、TSL=T−2・j2)を対象とする。
【0082】
そして、水平走査方向の幅WAを均等に10分割して10個の探索エリアWS×TSLを設定し、各探索エリアWS×TSL毎に最大1個のNo1ブロックを抽出することで、同じ探索エリアから2個以上のNo1ブロックを抽出することなく、撮像画面の特定の領域に抽出箇所が集中しないようにする。
【0083】
次に、ステップS32で、探索エリアWS×TSLの中から12×6ピクセルの絵柄箇所を切り出し、切り出し箇所の画像品質を評価してNo1ブロックを決定する。12×6ピクセルの絵柄箇所の画像品質は、対応する距離画像の12×6ピクセルの領域の距離情報を下記の条件で選別してヒストグラムを作成し、このヒストグラムによって良否を判定する。
【0084】
すなわち、12×6ピクセルの距離画像値を所定の閾値に照らし合わせ、個々のデータの数値が閾値に定める許容範囲内の数値なら「OK情報」として度数をカウントし、ヒストグラムを作成する。また、許容範囲外なら「NG情報」として度数をカウントする。この「OK情報」と「NG情報」とを選別するための閾値は、12×6ピクセルの距離画像データから目的に応じた遠方画像として認識できる数値を定める。
【0085】
この場合、回転速度の計算を行う遠方画像からは、建物や山並み等の稜線を含んだNo1ブロックが取得できることが望ましい。このため、 遠方用ステレオカメラ12は、画面全体に対して走査線処理が速い領域を天側にし、走査線処理が遅い領域を地側に向けて設置しており、「OK情報」と「NG情報」との含有率を調整することにより、図12に示すように、稜線を含んだ画像をNo1ブロックN1Bn(n=0,1,2,…,9)として抽出できる。
【0086】
具体的には、遠方画像の動きから回転速度成分を計算するため、距離画像データが多く存在する領域で、ズレ量が少なく(つまり、距離が遠い)、且つ、バラツキが小さい領域をNo1ブロックの候補として閾値を定める。
【0087】
すなわち、図13に示すように、もし、12×6ピクセルの距離画像領域の距離情報にバラツキがあると、これから定めようとするNo1ブロックは、ある1箇所(1点)を見ているのではなく、同じ窓(小領域)の中に遠近が異なる複数箇所の対象物M,E1,E2を見ていることになり、ヒストグラム中のe1,e2に対象物E1,E2がノイズとして出現することになる。
【0088】
従って、12×6ピクセルの距離画像値を上記閾値でフィルタにかけてノイズを除去し、さらに、OK情報の中から最も出現頻度が多い距離画像値maxzと、その最大ヒストグラム値maxnumを求め、この最大ヒストグラム値maxnum近辺の他の距離画像値の出現頻度を調べることにより、図14に示すように、使用する領域の対象物Mの候補を定めることができる。
【0089】
本形態では、maxz±2の範囲に絞って12×6ピクセルの距離画像領域に含まれる距離画像値と、それぞれのヒストグラム値を調査するようにしており、maxz±2の範囲の出現頻度の総度数dsumを以下の(1)式で算出し、「OK情報」の度数が所定の数を満足し、且つ、maxz±2の範囲の総度数dsumが「OK情報」の度数の内の大部分を占める(例えば、80%以上)とき、切り出した12×6ピクセルの絵柄箇所は信頼性のある画像と判断し、No1ブロックとして決定する。
dsum=m2+m1+maxnum+p1+p2 …(1)
但し、m2:maxz−2における出現頻度
m1:maxz−1における出現頻度
p1:maxz+1における出現頻度
p2:maxz+2における出現頻度
【0090】
次に、No1ブロックの絵柄抽出が決定すると、航法計算に必要な対象物までの距離値を正確に知るため、12×6ピクセルの距離画像領域の平均距離画像値fz1を以下の(2)式によって求める。
fz1=zsum/dsum …(2)
但し、zsum=(maxz−2)・m2+(maxz−1)・m1
+maxz・maxnum
+(maxz+1)・p1+(maxz+2)・p2
【0091】
以上の遠方画像に対するNo1ブロック取得処理を、各探索エリアWS×TSL毎に行い、画像全体で最大10個のNo1ブロックを取得すると、ステップS33以降の下方処理に移行する。尚、探索エリアWS×TSLで適正なNo1ブロックが見つからないときには、該当する探索エリアでの抽出を中止する。
【0092】
下方処理では、ステップS33において、下方画像に対するイニシャル処理として、No1ブロックを探す走査範囲を設定する。この下方画像の走査範囲は、遠方画像の10個の探索エリアWS×TSLに対し、図15に示すように、垂直走査方向をTAとした領域WS×TAで、画面の中央ラインThから進行方向側に所定量オフセットさせたラインTtを探索開始ラインとする領域であり、画面全体に分散した特徴的な絵柄を抽出できるよう、垂直走査方向の幅TAを3分割して30個の探索エリアWS×TSGを設定する。
【0093】
この場合、上記オフセットラインTtは、前回処理で求めた並進速度によって可変するようにしており、下方画像の動きを考慮し、前・後進速度に応じて撮像面を有効に利用するようにしている。
【0094】
次に、ステップS34では、探索エリアWS×TSGの中から12×6ピクセルの絵柄箇所を切り出し、切り出し箇所の画像品質を評価してNo1ブロックを決定する。この下方画像におけるNo1ブロックの決定は、前述した遠方画像におけるNo1ブロックの決定と同様であるが、「OK情報」と「NG情報」とを選別するための閾値が異なる。すなわち、下方画像の動きから並進速度成分を計算するため、距離画像データが多く存在する領域で、且つ、バラツキが小さい平面的な領域をNo1ブロックの候補として閾値を定める。
【0095】
そして、上記ステップS34において、水平走査方向に最大10個のNo1ブロックを取得すると、ステップS35へ進んで下方画像における全ての探索エリアの処理が済んだか否かを調べ、全ての処理が終了していない場合には、ステップS34へ戻って、一段下の探索エリアに対する処理を続行する。そして、このステップS34→ステップS35→ステップS34のループを3回繰り返して30個の探索エリアについての処理を行う。
【0096】
この場合においても、探索エリアWS×TSGで適正なNo1ブロックが見つからないときには、該当する探索エリアでの抽出を中止する。図15では、下方画像について、No1ブロックをN1B0,1,2,…,22,23,24までの計25個取得した例を示している。
【0097】
以上により、遠方画像・下方画像のそれぞれについてNo1ブロック群を取得すると、No1ブロックと同じ絵柄を持つNo2ブロックを探す処理に移行する。航法計算の品質を確保するためには、No1ブロックの取得数分n個を評価し、できるだけ多く(最大n個)のNo2ブロックを探し出す必要がある。n個のNo1・No2ブロックは、それぞれペアの関係であり、ペアにならなかったNo1ブロックは排除し、新たなNo1・No2ブロック群を求める。
【0098】
以下、図8に示すNo2ブロック群の取得処理について説明する。この処理では、ステップS40でNo1ブロック取得数の評価を行い、所定の取得数に達していないときには不合格と判定してルーチンを抜け、所定の取得数に達して合格判定のときには、ステップS41へ進んで遠方・下方処理の判定を行う。
【0099】
そして、遠方画像に対する処理のときには、上記ステップS41からステップS42へ進んで、遠方用ステレオカメラ12の焦点距離、2台のカメラの間隔、無限遠方でのズレ量(視差)等の距離の算出に必要な遠方処理定数値を設定してステップS44へ進み、下方画像に対する処理のときには、上記ステップS41からステップS43へ進み、同様に、下方用ステレオカメラ13の撮像画像から距離を算出するのに必要な下方処理定数値を設定してステップS44へ進む。
【0100】
ステップS44では、No2ブロックの探索エリアを設定する。このNo2ブロックの探索エリアは、撮像画像全体からNo1ブロックと同じ絵柄を探すのではなく、所定時間経過後のNo1ブロックの所在を予測して設定する。
【0101】
すなわち、No1ブロックが決定すると、No1ブロックの撮像面での代表座標が決まるため、まず、図16に示すように、No1ブロックの代表座標を中心として、上下左右に所定のオフセット量(xf,yf)を与えた4点a,b,c,dを決定する。そして、この4点a,b,c,dを結んだ4角形の枠内すなわち(2・xf)×(2・yf)の領域を、画面に動きが無いときの撮像情報でNo1ブロックと同じ絵柄が存在すると予測した探索エリアとし、この探索エリアを、遠方・下方画像のそれぞれの特徴を考慮して配置する。
【0102】
遠方画像の場合には、図17に示すように、回転・並進が伴わない基準画面G0に対し、短時間の並進では、画面G1に示すように、遠方の雲m1及び山m2は変化がほとんど無く、近くの木立m3が横方向へ移動するのみであるが、回転成分ヨーが生じたときの画面G2では、雲m1、山m2、木立m3を含めた画面全体が横方向へ移動して、木立m3の一部が視野から外れる。また、回転成分ロールが生じたときの画面G3では画面全体が傾き、回転成分ピッチが生じたときの画面G4では画面全体が下方に移動する。
【0103】
すなわち、遠方画像の場合には、測定点から十分遠く(例えば、30m以上)離れた箇所を測距するため、短時間での上下・左右の並進移動による画像の変化を受け難く、遠方画像で得たNo1ブロックの動きは、回転成分による動きとして捉えられる。従って、遠方画像では、図18に示すように、原点Oの回りの回転角αによって探索エリアの4点a,b,c,dの座標値を変換し、No1ブロックN1B0,N1B1,N1B2,…に対して4点an,bn,cn,dn(n=0,1,2,…)を結んだ4角形の探索エリアS0,S1,S2,…を設定する。そして、各探索エリアから以降のステップの処理を経てNo2ブロックN2B0,N2B1,N2B2,…を抽出する。
【0104】
一方、下方画像の場合には、図19に示すように、撮像面上の移動量Vwは、並進成分Va、回転成分Vrのどちらの動きで生じたものか判断し難い。このため、一定時間経過後のNo1ブロックの所在を予測し、その移動先に、次フレーム以降のNo2ブロックの検索エリアを設定する。すなわち、ヘリコプターの動きに対して処理速度が十分に速いときや、実撮像範囲が広いときには、画面毎の画像の動きは大きくないため、探索エリアは単位時間当たりの最大変化量を探索範囲と置けば良いが、ヘリコプターが大きく動く場合には、処理速度や撮像範囲が十分でないと仮定して動きを予測し、過去の速度成分を参考にして探索エリアを設定する。
【0105】
一定時間経過後のNo1ブロックの所在を予測するには、前回の角速度計算で得られたロール・ピッチ・ヨー成分と前回の並進速度計算で得られた純並進量とから、所定時間後のNo1ブロックの移動先を撮像面座標の動き(仮想的なオプティカルフロー)に変換する。そして、図20に示すように、No1ブロックN1B0,N1B1,N1B2,N1B3,N1B4,…を決定したフレームFmとNo2ブロックN2B0,N2B1,N2B2,N2B3,N2B4,…を探し出す対象フレームFm+1との間の仮想的なオプティカルフローOPFLに基づいて、フレームFm+1上にNo2ブロックの探索エリアS0,S1,S2,S3,S4,…を設定する。
【0106】
以上のようにしてNo2ブロックの探索エリアを設定すると、ステップS44からステップS45へ進み、No2ブロックの探索エリアからNo1ブロックと同じ形状で元画像の輝度を最小単位で(1ピクセル毎に)抽出し、No1ブロックの対応する画素の輝度との差の絶対値をとって総和する(シティブロック距離)。そして、このシティブロック距離が最小値となる領域を、No2ブロックの候補地として探索エリア内から選別し、該当する撮像面座標を求めてステップS46へ進む。
【0107】
ステップS46では、No2ブロックの候補地について、No1ブロックの場合と同様に、フィルタ処理及びヒストグラム処理によってNo2ブロックの元画像の信頼性を評価し、合格のとき、ステップS47でNo2ブロックの取得処理を行い、不合格のときには該当データを破棄してステップS48へジャンプする。
【0108】
ステップS47におけるNo2ブロックの取得処理では、必要に応じてサブピクセル処理を行ってサブピクセル値(1ピクセル以下の値)を求め、このサブピクセル値を含めたNo2ブロックの撮像面座標値を計算する。そして、No2ブロックの12×6ピクセル距離画像領域の平均距離画像値fz2を求め、No2ブロック取得数Num2を記録してステップS48へ進む。
【0109】
ステップS48では、No1ブロック・No2ブロックの最終取得数を更新し、No1ブロック群及びNo2ブロック群のデータをパッキング処理により圧縮して序列化する。そして、ステップS49でNo2ブロックの取得処理回数がNo1ブロックの取得数に達したか否かを調べ、No2ブロック取得処理回数<No1ブロック取得数のときには、ステップS44へ戻るループとなり、No2ブロック取得処理の回数がNo1ブロックの取得数に達したとき、処理を終了する。
【0110】
次に、遠方画像の動きから回転速度成分を演算する処理について説明する。図9の回転演算処理ルーチンでは、まず、ステップS50で、計算精度を維持するのに必要な所定のサンプル数だけNo2ブロック群を取得できたか否かを調べ、所定の数を取得できないとき、ステップS55で前回の角速度成分の計算結果を今回処理の値としてメモリを更新し、ステップS56へ進む。
【0111】
一方、計算精度を維持するに必要な所定のサンプル数だけNo2ブロック群を取得できたときには、上記ステップS50からステップS51へ進み、No1ブロック群の配列パターンとNo2ブロック群の配列パターンとを比較してオプティカルフローの信頼性を評価する。
【0112】
すなわち、遠方画像の性質から、回転速度成分によるNo1ブロック→No2ブロックの理想的な画像の動きでは、各ブロックの相対位置関係(配列パターン)は殆ど変わらない。従って、No1ブロック群の配列パターンとNo2ブロック群の配列パターンとを比較し、各ブロックの配置が明らかに異なる場合には、該当するブロックをNo1・No2ブロック群について共に排除する。
【0113】
この配列パターンの評価は、No1ブロック群における各ブロック間の距離及び各ブロックで構成する三角形の面積を、No2ブロック群における値と比較することで行う。例えば、一つのブロックAについて着目すると、ブロックAがNo2ブロック群において正しい位置に選択されたか否かを評価するには、まず、No1ブロック群におけるブロックAと他のブロックBとの距離(A1−B1)を、No2ブロック群におけるブロックAとブロックBとの距離(A2−B2)と比較し、同様に、ブロックA−ブロックC、ブロックA−ブロックDについても距離を比較する。
【0114】
そして、3つともNo1ブロック群とNo2ブロック群とにおける距離が等しければ距離のチェックはOKとし、そうでなければ、次のブロックE,G,…と順次比較するブロックを変えてゆき、先に3個OKになれば距離のチェックはOK、先に3個NGになれば距離のチェックはNGとする。
【0115】
このように、ブロックAの3点(B,C,D)に対する距離のチェックがOKになった場合、次に、ブロックA、B,Cの各代表座標で構成される三角形の面積ABCをNo1ブロック群とNo2ブロック群とについて求め、大きさを比較する。この比較を三角形ACDについても行い、どちらもNo1ブロック群とNo2ブロック群とで同じ面積であれば、最終的に、ブロックAの位置はNo2ブロック群において正しく選択されたと判定する。
【0116】
この際、距離のチェックは、ピタゴラスの定理による二乗値のまま比較し、また、三角形の面積のチェックは、ベクトルの外積を計算して三角形の面積の2倍の値(平行四辺形の面積)で比較することにより、計算効率を高める。
【0117】
以上の配列パターンの評価により適正でないブロックを排除した後、ステップS52へ進み、適正でないブロックを排除した後のNo2ブロック数が所定の数か否かを調べる。そして、所定の数に達していないときには、上記ステップS52から前述のステップS55を経てステップS56へ進み、所定の数のNo2ブロックを確保できたときには、上記ステップS52からステップS53へ進む。
【0118】
ステップS53では、No2ブロックの撮像面座標を、カメラ固定のX,Y,Z直交座標である実空間座標に直す。図21に示すように、レンズの焦点距離f、メインカメラ軸Zmとサブカメラ軸Zsとの基線長LS(Ss)、ステレオ画像のズレ量Xrとすると、測距対象点Mまでの距離Zは、三角測量によって以下の(3)式で与えられるため、この関係に基づいて撮像面座標を実空間座標に変換する。
Z=LS(SS)・f/Xr …(3)
【0119】
続くステップS54では、非線形型最小二乗法によってNo1ブロック群とNo2ブロック群との間の位置の差分に相当する角速度(ロール・ピッチ・ヨー)を求める。すなわち、前回の回転・並進の速度成分を初期値として撮像素子上の動きに換算してNo1ブロックとNo2ブロックとの位置の差を求め、さらに、線形近似を行って3軸(X,Y,Z軸)の回転成分毎に偏微分し、適当な偏角を与えてロール・ピッチ・ヨー毎に撮像素子上のNo1ブロックとの位置の差の変化量(dx,dy)を求める。ロール・ピッチ・ヨーの各成分は、この変化量(dx,dy)の極限として与えられる。
【0120】
従って、上記変化量(dx,dy)を求める処理をNo1・No2ブロック全てについて行い、最小二乗法で回転成分を求める。この最小二乗法では、3元1次方程式を解くことになるが、係数行列についての転置行列が等しく、対角要素が他の要素に比べて十分に大きい値であるため(正定値対称)、コレスキー法による数値計算を適用することができ、No1ブロックに対してのロール・ピッチ・ヨーの各々の値を求めることができる。
【0121】
実際には、上記手法による解は、非線形のため真値にはならない。従って、得られた値を初期値にして再び最小二乗法を繰り返す非線形型最小二乗法によって真値に近づけるわけであるが、真値を求める際には、上記変化量(dx,dy)の収束具合(理想的には0)を監視して決定すべき処置が必要である。すなわち、限定した範囲の角速度成分を適度な精度で得る場合には、繰り返し計算回数を所定の回数(例えば、5回)で打ち切り、処理に要する時間を短縮することができる。
【0122】
上記ステップS54の処理によってカメラ固定のXYZ直交座標系における角速度成分を求めると、次に、ステップS56へ進み、ロール成分rl、ピッチ成分pt、及び、ヨー成分ywを、回転行列Rotの要素に展開してルーチンを抜ける。この回転行列Rotは、ロール、ピッチ、ヨーの各軸毎の回転行列の積であり、例えば、以下の(4)〜(12)式で示すように、3×3の正方行列の要素として展開できる。
Rot[0][0]=(cy・cr)−(sy・ans) …(4)
Rot[1][0]=−(cp・sr) …(5)
Rot[2][0]=(sy・cr)+(cy・ans) …(6)
Rot[0][1]=(cy・sr)+(sy・ans') …(7)
Rot[1][1]=(cp・cr) …(8)
Rot[2][1]=(sy・sr)−(cy・ans') …(9)
Rot[0][2]=−(sy・cp) …(10)
Rot[1][2]=sp …(11)
Rot[2][2]=(cy・cp) …(12)
但し、cy=cos(yw) cr=cos(rl)
cp=cos(pt) sy=sin(yw)
sr=sin(rl) sp=sin(pt)
ans=sp・sr ans'=sp・cr
【0123】
次に、回転速度成分と並進速度成分とを含む下方画像の動きから純並進速度成分を求める処理について説明する。
【0124】
図10の並進演算処理ルーチンでは、ステップS60で、計算精度を維持するに必要な所定のサンプル数だけNo2ブロック群を取得できたか否かを調べ、所定のサンプル数を取得できたときには、ステップS60からステップS61へ進み、所定のサンプル数を取得できないとき、ステップS60からステップS71へ進んで前回の並進速度成分の計算結果を今回処理の値としてメモリを更新し、ルーチンを抜ける。
【0125】
ステップS61では、No2ブロックの平均距離画像値を評価する。この評価は、No1ブロックとNo2ブロックとで距離画像値が閾値以上に異なっているブロックを排除するためのものであり、該当するブロックがあるときには、そのブロックを除いてNo2ブロック群全てを評価したか否かを調べるステップS67へジャンプし、このステップS67からステップS61へ戻るループによってNo1ブロック群及びNo2ブロック群全体から距離画像値が閾値以上に異なっているブロックを排除する。
【0126】
その後、上記ステップS61によるNo2ブロックの平均距離画像値の評価を経てステップS62へ進み、No1・No2ブロック群の個々のサンプルを、レンズ歪み分を補正した撮像面座標値に修正し、測距精度のバラツキが少ない新たなNo1・No2ブロック群に更新する。尚、ステップS61→ステップS67→ステップS61のループで排除したブロック数が多く、計算精度を維持するに必要なサンプル数を確保できないときには、前回の並進速度成分の計算結果を今回処理の値として並進演算処理を終了する。
【0127】
続くステップS63では、No1・No2ブロックの撮像面座標値と、それぞれの距離画像値とから実空間の座標(カメラ固定のXYZ直交座標)値を求め、ステップS64で、No2ブロックから求めた実空間座標値を、最新の回転行列で回転成分を差し引いた純並進成分の実空間座標値に変換し、ステップS65へ進んで、画像の動き(移動ベクトル)を実空間座標値の差分で求める。
【0128】
すなわち、遠方画像の撮像面と下方画像の撮像面とは互いに直交関係にあることから、回転移動と並進移動とを含んだNo1・No2ブロック間の移動ベクトル量に、先に求めた回転行列Rot(No2→No1ブロックへの回転行列)を掛け合わせることにより(相対的に回転させることにより)、回転成分の動きを実距離のクラスで除去することができる。
【0129】
次いで、ステップS66へ進み、実空間移動量を新たに記録して測距したブロック数を勘定すると、ステップS67で、No2ブロック群の全てを評価したか否かを調べる。そして、全部の評価が終わっていないときには、ステップS61へ戻り、全部の評価が終わったとき、ステップS68へ進み、区間推定等の統計処理によってオプティカルフロー全体に対して方向や大きさが異常である移動ベクトル(特異ベクトル)を排除するフィルタ処理を行い、特異ベクトルを排除した後の平均移動量を算出する。
【0130】
その後、ステップS69で、特異ベクトルの除去結果を調べ、特異ベクトルの数が多く、航法計算の精度を維持するのに必要なデータ数が確保できなくなったときには、前述のステップS71で前回の並進速度成分の計算結果を今回処理の値としてメモリを更新してルーチンを抜ける。一方、特異ベクトルが殆ど無いか、あるいは航法計算の精度を損なわない程度の数であるときには、上記ステップS69からステップS70へ進んで、成分(Xl,Yl,Zl)の3次元並進速度|S|を求め、この新しい並進速度でメモリ値を更新してルーチンを抜ける。
【0131】
以上の並進演算処理に続いて航法軌跡を求める図11の航法演算処理が実行される。この航法演算処理では、まず、ステップS80で原点(測距開始地点)から見た移動体の姿勢状態を求める。原点から見た移動体の姿勢状態は、測距開始地点で空間に固定したXYZ直交座標系から見た回転行列Rotsによって示される。このため、まず、測距開始地点で回転行列を単位行列化して初期化することで撮像面に直交する平面を実空間を表す基準面とし、この初期化時点の行列にフレーム間の回転行列(カメラ固定のXYZ直交座標系から見た回転行列)Rotを右から掛け込んだ行列を原点から見た移動体の姿勢を表す回転行列Rotsとする。
【0132】
すなわち、原点から見た姿勢を表す回転行列Rotsは、カメラ固定の座標系から見たフレーム毎の回転行列Rotを時系列的に積算した正方行列であり、以下の(13)式に示すように、前回までの原点から見た姿勢状態を表す回転行列Rotsに今回の回転演算処理で求めたフレーム間の回転行列Rotを右から積算した正方行列で今回処理における原点から見た姿勢を表す回転行列Rotsとして更新することにより、原点から見た移動体の最新の姿勢を表すことができる。
【0133】
Rots=Rots・Rot …(13)
【0134】
次に、ステップS81へ進み、フレーム間の並進速度成分を原点から見た並進速度成分に変換すると、ステップS82で、原点から見た速度成分をフレーム毎に累積し、イニシャル地点からの移動体の実空間座標を求める。
【0135】
原点から見た並進速度Soは、原点から見た姿勢を表す回転行列Rotsとフレーム間の3次元並進速度Sとの積を、以下の(17)式に示すように、前回までの原点から見た並進速度Soに累積することで求めることができ、累積したベクトル量に所定の距離換算値を掛け合わせることで、図23に示すような、航法軌跡を得ることができ、原点からの移動体の移動量を知ることができる。
So=So+(Rots)・S …(17)
【0136】
この場合、地上の適当な地点に、図22に示すようなランドマークを設置しておき、このランドマークをパターン認識等によって識別し、測距開始地点として原点をイニシャルすることで、上記航法軌跡から自己の相対位置を認識することができる。
【0137】
さらには、GPS等の衛星測位システムからの測位情報や既知の地図情報によって地上の適当な地点を原点としてイニシャルすることで、航法軌跡から自己の絶対位置を認識することができる。
【0138】
以上により、撮像対象物までの距離を細かく認識して、極めて正確な測量を行うことができ、複雑な地形での低空飛行においても高精度な対地高度が得られる。すなわち、従来に比較してドリフトの少ない高精度の自律航法機能を担うことが可能であり、膨大な情報量を有する画像ならではの周囲環境分析を航法処理に反映することができる。
【0139】
【発明の効果】
以上説明したように本発明によれば、一定時間毎に遠方風景と下方風景とを撮像し、それぞれの撮像画像の中から特徴的な絵柄の領域を第1のブロックとして複数箇所抽出し、次のタイミングで撮像した画像の中から第1のブロックと同じ絵柄を有する領域を第2のブロックとして探索すると、遠方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、遠方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における回転速度成分を求め、また、下方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、下方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における速度成分を求め、この速度成分から上記回転速度成分を除去して移動体のフレーム間のカメラ固定の座標系における並進速度成分を求める。そして、このフレーム間のカメラ固定の座標系における並進速度成分を測距開始地点で空間に固定した座標系における並進速度成分に変換し、この変換した並進速度成分を累積して3次元空間における航法軌跡を求め、移動体の自己位置を認識するため、ドリフトの少ない高精度の自律航法機能を担うことができ、膨大な情報量を有する画像ならではの周囲環境分析を航法処理に反映することができる等優れた効果が得られる。
【図面の簡単な説明】
【図1】自己位置認識装置の機能構成図
【図2】3次元空間計測用カメラアセンブリの構成図
【図3】自己位置認識装置の回路ブロック図
【図4】並列処理のタイムチャート
【図5】SYS1初期化処理ルーチンのフローチャート
【図6】SYS2初期化処理ルーチンのフローチャート
【図7】No1ブロック群取得処理ルーチンのフローチャート
【図8】No2ブロック群取得処理ルーチンのフローチャート
【図9】回転演算処理ルーチンのフローチャート
【図10】並進演算処理ルーチンのフローチャート
【図11】航法演算処理ルーチンのフローチャート
【図12】遠方のNo1ブロックの取得パターンを示す説明図
【図13】画像評価におけるヒストグラム分布の好ましくない例を示す説明図
【図14】画像評価におけるヒストグラム分布の好ましい例を示す説明図
【図15】下方のNo1ブロックの取得パターンを示す説明図
【図16】探索エリアの設定を示す説明図
【図17】遠方画像の特徴を示す説明図
【図18】遠方画像に探索エリアを設定した例を示す説明図
【図19】下方の撮像面上の動きを示す説明図
【図20】下方画像に探索エリアを設定した例を示す説明図
【図21】三角測量による撮像面座標から実距離への換算を示す説明図
【図22】測距開始地点のランドマークを示す説明図
【図23】自律航法による航法軌跡の説明図
【符号の説明】
10…カメラアセンブリ
20…ステレオ画像処理装置
30…自己位置認識装置
Claims (21)
- 移動体に搭載されるステレオカメラにより、一定時間毎に遠方風景と下方風景とを撮像する手段と、
遠方風景の撮像画像と下方風景の撮像画像とに対し、それぞれの撮像画像の中から特徴的な絵柄の領域を第1のブロックとして複数箇所抽出し、次のタイミングで撮像した画像の中から第1のブロックと同じ絵柄を有する領域を第2のブロックとして探索する手段と、
遠方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、遠方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における回転速度成分を求める手段と、
下方風景の撮像画像における第1のブロックから第2のブロックへの画像の動きを、下方風景の撮像画像をステレオ画像処理して求めた距離画像に基づいて撮像面座標を実距離に換算した実空間座標での移動量として求め、該移動量とフレーム間の時間経過とから、移動体のフレーム間のカメラ固定の座標系における速度成分を求め、この速度成分から上記回転速度成分を除去して移動体のフレーム間のカメラ固定の座標系における並進速度成分を求める手段と、
上記フレーム間のカメラ固定の座標系における並進速度成分を測距開始地点で空間に固定した座標系における並進速度成分に変換し、この変換した並進速度成分を累積して3次元空間における航法軌跡を求めることにより、移動体の自己位置を認識する手段とを備えたことを特徴とする移動体の3次元自己位置認識装置。 - 上記フレーム間のカメラ固定の座標系における並進速度成分を、測距開始地点で空間に固定した座標系の原点から見た移動体の最新の姿勢を表す回転成分で補正し、測距開始地点で空間に固定した座標系における並進速度成分に変換することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 測距開始地点で空間に固定した座標系における移動体の姿勢を表す行列を単位行列化して初期化した後、今回処理時のフレーム間のカメラ固定の座標系における回転速度成分を表す行列を測距開始地点で空間に固定した座標系の原点から見た前回までの移動体の姿勢を表す行列に積算し、上記移動体の最新の姿勢を表す回転成分とすることを特徴とする請求項2記載の移動体の3次元自己位置認識装置。
- 第1のブロックを抽出する際、撮像画面を所定範囲で分割した複数の探索エリアを設定し、各探索エリア毎に第1のブロックを最大1個抽出することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックをm個抽出する際、撮像画面をn個の領域に分割し、各領域で抽出する第1のブロックを最大m/n個とすることを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックを遠方風景の撮像画像から抽出する際、上記距離画像の対応する領域の距離画像値が小さく、測距点から十分に遠方にある小領域を、第1のブロックの候補とすることを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックを下方風景の撮像画像から抽出する際、上記距離画像の対応する領域の距離画像値のバラツキが少ない平面的な小領域を、第1のブロックの候補とすることを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックを下方風景の撮像画像から抽出する際、画面の中央ラインから進行方向側に所定量オフセットさせたラインを探索開始ラインとして設定し、この探索開始ラインを上記並進速度成分によって可変することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックを抽出する際、対象とする領域の画像品質を、上記距離画像の対応する領域の距離画像値を用いて作成したヒストグラムによって評価することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 上記ヒストグラムを、抽出ピクセルが所定の閾値以上の度数をカウントして作成することを特徴とする請求項9記載の移動体の3次元自己位置認識装置。
- 最大ヒストグラムを記録する距離画像値に対して所定範囲にあるヒストグラム値の総度数が所定の比率以上のとき、対象とする領域の画像品質が良好であると判定することを特徴とする請求項9記載の移動体の3次元自己位置認識装置。
- 第2のブロックを探索する際、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアから第2のブロックを探索することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第2のブロックを探索する際、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアから第2のブロックを探索することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第2のブロックを探索する際、第1のブロックを囲む所定の探索エリアを設定し、この探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第2のブロックを探索する際、前回の回転速度成分あるいは並進速度成分から次の画面での第1のブロックの移動先の撮像面座標を予測し、予測した撮像面座標を囲む所定の探索エリアと第1のブロックとの間でシティブロック距離が最小となる領域を第2のブロックの候補とすることを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 第1のブロックと第2のブロックとの対を所定数取得できないとき、前回処理で求めた回転速度成分及び並進速度成分を今回処理の回転速度成分及び並進速度成分として更新することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 複数の第1のブロックの配列パターンと複数の第2のブロックの配列パターンとの相違を調べて配置が異なるブロックを排除した後、第1のブロックと第2のブロックとの対を所定数確保できたとき、上記フレーム毎の移動体の回転速度成分を求める処理へ移行し、第1のブロックと第2のブロックとの対を所定数確保できないときには、前回処理で求めた回転速度成分を今回処理の回転速度成分として更新することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 上記配列パターンの相違を、各ブロック間の距離と各ブロックによって構成される三角形の面積とによって調べることを特徴とする請求項17記載の移動体の3次元自己位置認識装置。
- 上記測距開始地点の位置を、測位装置からの情報あるいは既知の地図情報によって初期化し、上記航法軌跡から移動体の絶対位置を認識することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 上記ステレオカメラを、遠方風景撮像用のステレオカメラと下方風景撮像用のステレオカメラとから構成し、互いのステレオカメラの撮像面の方向が直交するよう配置することを特徴とする請求項1記載の移動体の3次元自己位置認識装置。
- 上記遠方風景撮像用のステレオカメラと上記下方風景撮像用のステレオカメラとを、互いの基準カメラ同士が近接した状態に配置することを特徴とする請求項20記載の移動体の3次元自己位置認識装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20931997A JP3833786B2 (ja) | 1997-08-04 | 1997-08-04 | 移動体の3次元自己位置認識装置 |
US09/127,843 US6025790A (en) | 1997-08-04 | 1998-08-03 | Position recognizing system of autonomous running vehicle |
DE69836522T DE69836522T2 (de) | 1997-08-04 | 1998-08-04 | Lagenerkennungssystem eines selbstbewegenden Kraftwagens |
EP98114677A EP0896267B1 (en) | 1997-08-04 | 1998-08-04 | Position recognizing system of autonomous running vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20931997A JP3833786B2 (ja) | 1997-08-04 | 1997-08-04 | 移動体の3次元自己位置認識装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1151650A JPH1151650A (ja) | 1999-02-26 |
JP3833786B2 true JP3833786B2 (ja) | 2006-10-18 |
Family
ID=16570988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20931997A Expired - Lifetime JP3833786B2 (ja) | 1997-08-04 | 1997-08-04 | 移動体の3次元自己位置認識装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6025790A (ja) |
EP (1) | EP0896267B1 (ja) |
JP (1) | JP3833786B2 (ja) |
DE (1) | DE69836522T2 (ja) |
Families Citing this family (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3624799B2 (ja) * | 1999-08-31 | 2005-03-02 | セイコーエプソン株式会社 | プリンタ、印刷実行装置、印刷システム、印刷方法および記録媒体 |
JP3255360B2 (ja) * | 1999-09-22 | 2002-02-12 | 富士重工業株式会社 | 距離データの検査方法およびその検査装置 |
US6296317B1 (en) * | 1999-10-29 | 2001-10-02 | Carnegie Mellon University | Vision-based motion sensor for mining machine control |
WO2001082679A1 (en) * | 2000-05-03 | 2001-11-08 | Eco-Dan A/S | A method of segmentation of a digital image and a method of controlling an implement |
JP2002148269A (ja) * | 2000-11-08 | 2002-05-22 | Sumitomo Rubber Ind Ltd | ボール運動計測装置 |
US6819780B2 (en) * | 2001-02-02 | 2004-11-16 | Cnh America Llc | Method and apparatus for automatically steering a vehicle in an agricultural field using a plurality of fuzzy logic membership functions |
US6770863B2 (en) | 2001-10-26 | 2004-08-03 | Agilent Technologies, Inc. | Apparatus and method for three-dimensional relative movement sensing |
US6694228B2 (en) | 2002-05-09 | 2004-02-17 | Sikorsky Aircraft Corporation | Control system for remotely operated vehicles for operational payload employment |
US7002551B2 (en) * | 2002-09-25 | 2006-02-21 | Hrl Laboratories, Llc | Optical see-through augmented reality modified-scale display |
US20070035562A1 (en) * | 2002-09-25 | 2007-02-15 | Azuma Ronald T | Method and apparatus for image enhancement |
KR100493159B1 (ko) * | 2002-10-01 | 2005-06-02 | 삼성전자주식회사 | 이동체의 효율적 자기 위치 인식을 위한 랜드마크 및 이를이용한 자기 위치 인식 장치 및 방법 |
US20040066391A1 (en) * | 2002-10-02 | 2004-04-08 | Mike Daily | Method and apparatus for static image enhancement |
US20040068758A1 (en) * | 2002-10-02 | 2004-04-08 | Mike Daily | Dynamic video annotation |
DE10251949A1 (de) | 2002-11-08 | 2004-05-19 | Robert Bosch Gmbh | Fahrdynamikregelung mit Bildsensorsystem |
JP2004354134A (ja) * | 2003-05-28 | 2004-12-16 | Nippon Telegr & Teleph Corp <Ntt> | 三次元位置検出装置,三次元位置検出方法および三次元位置検出プログラム |
US7343232B2 (en) * | 2003-06-20 | 2008-03-11 | Geneva Aerospace | Vehicle control system including related methods and components |
JP2005214914A (ja) * | 2004-02-02 | 2005-08-11 | Fuji Heavy Ind Ltd | 移動速度検出装置および移動速度検出方法 |
US7609156B2 (en) | 2004-04-07 | 2009-10-27 | Jeffrey D Mullen | Advanced cooperative defensive military tactics, armor, and systems |
US8224574B2 (en) * | 2004-05-12 | 2012-07-17 | Northrop Grumman Guidance And Electronics Company, Inc. | System for multiple navigation components |
US7818127B1 (en) * | 2004-06-18 | 2010-10-19 | Geneva Aerospace, Inc. | Collision avoidance for vehicle control systems |
JP4032052B2 (ja) * | 2004-11-30 | 2008-01-16 | 本田技研工業株式会社 | 位置検出装置及びその補正方法 |
JP4461091B2 (ja) * | 2004-11-30 | 2010-05-12 | 本田技研工業株式会社 | 位置検出装置及びその補正方法 |
DE102004061998A1 (de) | 2004-12-23 | 2006-07-06 | Robert Bosch Gmbh | Stereokamera für ein Kraftfahrzeug |
JP2006338272A (ja) * | 2005-06-01 | 2006-12-14 | Nissan Motor Co Ltd | 車両挙動検出装置、および車両挙動検出方法 |
JP4977339B2 (ja) * | 2005-07-11 | 2012-07-18 | 株式会社トプコン | 地理データ収集装置 |
US7933001B2 (en) * | 2005-07-11 | 2011-04-26 | Kabushiki Kaisha Topcon | Geographic data collecting system |
WO2007038622A2 (en) * | 2005-09-28 | 2007-04-05 | The Government Of The United State Of America , As Represented By The Secretary Of The Navy | Open-loop controller |
JP4020143B2 (ja) * | 2006-02-20 | 2007-12-12 | トヨタ自動車株式会社 | 測位システム、測位方法及びカーナビゲーションシステム |
US20080208468A1 (en) * | 2006-03-09 | 2008-08-28 | Martin Jose V | Forward looking virtual imaging |
JP4828274B2 (ja) * | 2006-03-27 | 2011-11-30 | 株式会社エヌ・ティ・ティ・データ | 構造物異常判別システム及び構造物異常判別方法ならびにプログラム |
KR101013392B1 (ko) * | 2006-03-31 | 2011-02-14 | 무라타 기카이 가부시키가이샤 | 이동체 위치 추정 장치와 추정 방법 및 추정 프로그램 |
US8666661B2 (en) * | 2006-03-31 | 2014-03-04 | The Boeing Company | Video navigation |
WO2007124014A2 (en) * | 2006-04-19 | 2007-11-01 | Swope John M | System for position and velocity sense and control of an aircraft |
JP4341649B2 (ja) * | 2006-07-12 | 2009-10-07 | トヨタ自動車株式会社 | ナビゲーション装置、位置検出方法 |
JP4702802B2 (ja) * | 2006-09-11 | 2011-06-15 | アルパイン株式会社 | 車両方位補正システム |
JP4341705B2 (ja) * | 2007-07-17 | 2009-10-07 | トヨタ自動車株式会社 | 車載画像処理装置 |
JP5062626B2 (ja) * | 2007-10-23 | 2012-10-31 | 学校法人玉川学園 | 物体識別装置 |
JP5150307B2 (ja) * | 2008-03-03 | 2013-02-20 | 株式会社トプコン | 地理データ収集装置 |
JP5150310B2 (ja) * | 2008-03-04 | 2013-02-20 | 株式会社トプコン | 地理データ収集装置 |
JP5107154B2 (ja) | 2008-06-23 | 2012-12-26 | アイドゲノッシッシェ テヒニッシェ ホッホシューレ チューリッヒ | 運動推定装置 |
JP5278878B2 (ja) * | 2009-03-23 | 2013-09-04 | 国立大学法人 宮崎大学 | 管内面形状測定装置 |
KR101686170B1 (ko) * | 2010-02-05 | 2016-12-13 | 삼성전자주식회사 | 주행 경로 계획 장치 및 방법 |
WO2011123758A1 (en) * | 2010-04-03 | 2011-10-06 | Centeye, Inc. | Vision based hover in place |
FR2961601B1 (fr) * | 2010-06-22 | 2012-07-27 | Parrot | Procede d'evaluation de la vitesse horizontale d'un drone, notamment d'un drone apte au vol stationnaire autopilote |
JP5698480B2 (ja) | 2010-09-02 | 2015-04-08 | 株式会社トプコン | 測定方法及び測定装置 |
CN104204726B (zh) * | 2012-03-06 | 2017-05-31 | 日产自动车株式会社 | 移动物体位置姿态估计装置和移动物体位置姿态估计方法 |
GB2500214A (en) * | 2012-03-13 | 2013-09-18 | Thomas Ladyman | Robot vision apparatus and control method and corresponding land robot |
JP2014009975A (ja) * | 2012-06-28 | 2014-01-20 | Hitachi Automotive Systems Ltd | ステレオカメラ |
US9245428B2 (en) | 2012-08-02 | 2016-01-26 | Immersion Corporation | Systems and methods for haptic remote control gaming |
CA2884771C (en) | 2012-09-10 | 2021-06-29 | Aemass, Inc. | Multi-dimensional data capture of an environment using plural devices |
US9162642B2 (en) * | 2012-10-05 | 2015-10-20 | Ford Global Technologies | Method and system for determining a primary direction of force resulting from a vehicle collision |
WO2014118391A2 (de) * | 2013-02-04 | 2014-08-07 | Dnv Gl Se | Inspektionskameraeinheit, verfahren zur inspektion von innenräumen sowie sensoreinheit |
US9074892B2 (en) | 2013-03-15 | 2015-07-07 | Ian Michael Fink | System and method of determining a position of a remote object |
KR101488947B1 (ko) * | 2013-03-15 | 2015-02-06 | 삼성중공업(주) | 사진 계측 장치 및 방법 |
KR101507242B1 (ko) * | 2013-10-21 | 2015-03-31 | 포항공과대학교 산학협력단 | 영상 분석을 통하여 모션 햅틱 효과를 제공하는 장치 및 방법 |
KR102016551B1 (ko) * | 2014-01-24 | 2019-09-02 | 한화디펜스 주식회사 | 위치 추정 장치 및 방법 |
CN104596513B (zh) * | 2014-12-26 | 2018-05-18 | 北京爱科迪通信技术股份有限公司 | 一种光纤陀螺与微机械陀螺组合的惯导系统及导航方法 |
US11140326B2 (en) | 2015-05-22 | 2021-10-05 | The United States Of America, As Represented By The Secretary Of The Navy | Aerial video based point, distance, and velocity real-time measurement system |
JP6872128B2 (ja) * | 2015-09-30 | 2021-05-19 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、およびプログラム |
US10635909B2 (en) * | 2015-12-30 | 2020-04-28 | Texas Instruments Incorporated | Vehicle control with efficient iterative triangulation |
DE102016206982B4 (de) | 2016-04-25 | 2022-02-10 | Siemens Aktiengesellschaft | Flugmobil zum Scannen eines Objekts und System zur Schadensanalyse des Objekts |
JP6585006B2 (ja) * | 2016-06-07 | 2019-10-02 | 株式会社東芝 | 撮影装置および車両 |
WO2018000037A1 (en) * | 2016-06-29 | 2018-01-04 | Seeing Machines Limited | Systems and methods for identifying pose of cameras in a scene |
US10642271B1 (en) * | 2016-08-26 | 2020-05-05 | Amazon Technologies, Inc. | Vehicle guidance camera with zoom lens |
WO2018051746A1 (ja) * | 2016-09-16 | 2018-03-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ作成方法及び三次元データ作成装置 |
JP6815935B2 (ja) | 2017-06-05 | 2021-01-20 | 日立オートモティブシステムズ株式会社 | 位置推定装置 |
JP6878219B2 (ja) * | 2017-09-08 | 2021-05-26 | 株式会社東芝 | 画像処理装置および測距装置 |
US10402646B2 (en) * | 2017-09-21 | 2019-09-03 | Amazon Technologies, Inc. | Object detection and avoidance for aerial vehicles |
CN109163707B (zh) * | 2018-09-06 | 2019-11-26 | 百度在线网络技术(北京)有限公司 | 障碍物感知方法、系统、计算机设备、计算机存储介质 |
CN109900274B (zh) * | 2019-03-25 | 2022-09-16 | 哈尔滨工业大学 | 一种图像匹配方法及系统 |
CN110249793B (zh) * | 2019-05-09 | 2021-06-18 | 江苏大学 | 一种棚架葡萄收获的机器人末端-深度相机配置方法与伺服控制方法 |
CN112035992B (zh) * | 2019-05-14 | 2024-01-09 | 中国科学院沈阳自动化研究所 | 一种基于多目标优化的自主遥控水下机器人共享控制方法 |
CN111445533B (zh) * | 2020-03-27 | 2023-08-01 | 广东博智林机器人有限公司 | 一种双目相机标定方法、装置、设备及介质 |
US20220066451A1 (en) * | 2020-08-25 | 2022-03-03 | Panasonic Intellectual Property Management Co., Ltd. | Mobile robot |
CN113009175A (zh) * | 2020-08-28 | 2021-06-22 | 西华大学 | 车辆坠崖勘测计算方法 |
CN112612295B (zh) * | 2020-12-23 | 2022-07-12 | 长光卫星技术股份有限公司 | 一种遥感卫星地面站测控和数传资源自动分配方法 |
CN114721365A (zh) * | 2021-01-04 | 2022-07-08 | 宝能汽车集团有限公司 | 自动驾驶方法、装置及车辆 |
WO2022165614A1 (zh) * | 2021-02-08 | 2022-08-11 | 浙江吉利控股集团有限公司 | 一种路径构建方法、装置、终端及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5712678A (en) * | 1988-12-08 | 1998-01-27 | Messerschmitt Bolkow Blohm Gmbh | Method and apparatus for scanning a terrain surface |
US5035382A (en) * | 1989-04-17 | 1991-07-30 | Aerovironment, Inc. | Rapid assembly aircraft for ground surveillance |
US5015187A (en) * | 1990-02-28 | 1991-05-14 | Byron Hatfield | Helicopter remote control system |
FR2696843B1 (fr) * | 1992-10-14 | 1994-12-09 | Matra Sep Imagerie Inf | Appareil de prise de vues à distance, à haute résolution, pour porteur aérien. |
US5581250A (en) * | 1995-02-24 | 1996-12-03 | Khvilivitzky; Alexander | Visual collision avoidance system for unmanned aerial vehicles |
US5604534A (en) * | 1995-05-24 | 1997-02-18 | Omni Solutions International, Ltd. | Direct digital airborne panoramic camera system and method |
US5904724A (en) * | 1996-01-19 | 1999-05-18 | Margolin; Jed | Method and apparatus for remotely piloting an aircraft |
US5894323A (en) * | 1996-03-22 | 1999-04-13 | Tasc, Inc, | Airborne imaging system using global positioning system (GPS) and inertial measurement unit (IMU) data |
US5716032A (en) * | 1996-04-22 | 1998-02-10 | United States Of America As Represented By The Secretary Of The Army | Unmanned aerial vehicle automatic landing system |
-
1997
- 1997-08-04 JP JP20931997A patent/JP3833786B2/ja not_active Expired - Lifetime
-
1998
- 1998-08-03 US US09/127,843 patent/US6025790A/en not_active Expired - Lifetime
- 1998-08-04 EP EP98114677A patent/EP0896267B1/en not_active Expired - Lifetime
- 1998-08-04 DE DE69836522T patent/DE69836522T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE69836522D1 (de) | 2007-01-11 |
US6025790A (en) | 2000-02-15 |
EP0896267A3 (en) | 2004-03-31 |
EP0896267B1 (en) | 2006-11-29 |
JPH1151650A (ja) | 1999-02-26 |
DE69836522T2 (de) | 2007-10-04 |
EP0896267A2 (en) | 1999-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3833786B2 (ja) | 移動体の3次元自己位置認識装置 | |
JP3880702B2 (ja) | 画像のオプティカルフロー検出装置及び移動体の自己位置認識システム | |
CN111156998B (zh) | 一种基于rgb-d相机与imu信息融合的移动机器人定位方法 | |
JP5992184B2 (ja) | 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム | |
US9946264B2 (en) | Autonomous navigation using visual odometry | |
CN106017463B (zh) | 一种基于定位传感装置的飞行器定位方法 | |
Kanade et al. | Real-time and 3D vision for autonomous small and micro air vehicles | |
US7747151B2 (en) | Image processing device and method | |
US7747150B2 (en) | Image processing device and method | |
JP4800163B2 (ja) | 位置測定装置及びその方法 | |
US9998660B2 (en) | Method of panoramic 3D mosaicing of a scene | |
CN112785702A (zh) | 一种基于2d激光雷达和双目相机紧耦合的slam方法 | |
JP2012118666A (ja) | 三次元地図自動生成装置 | |
EP3155369B1 (en) | System and method for measuring a displacement of a mobile platform | |
CN113551665A (zh) | 一种用于运动载体的高动态运动状态感知系统及感知方法 | |
CN114608554A (zh) | 一种手持slam设备以及机器人即时定位与建图方法 | |
CN115371673A (zh) | 一种未知环境中基于Bundle Adjustment的双目相机目标定位方法 | |
US20210304518A1 (en) | Method and system for generating an environment model for positioning | |
CN114529585A (zh) | 基于深度视觉和惯性测量的移动设备自主定位方法 | |
CN112762929B (zh) | 一种智能导航方法、装置和设备 | |
JP4116116B2 (ja) | 移動体の測距原点認識装置 | |
CN113701750A (zh) | 一种井下多传感器的融合定位系统 | |
CN116380079A (zh) | 一种融合前视声呐与orb-slam3的水下slam方法 | |
JPH08261719A (ja) | 相対的移動量算出装置及び相対的移動量算出方法 | |
JP5409451B2 (ja) | 3次元変化検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040727 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060609 |
|
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: 20060711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060720 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090728 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100728 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130728 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |