JP3855812B2 - 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 - Google Patents
距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 Download PDFInfo
- Publication number
- JP3855812B2 JP3855812B2 JP2002073383A JP2002073383A JP3855812B2 JP 3855812 B2 JP3855812 B2 JP 3855812B2 JP 2002073383 A JP2002073383 A JP 2002073383A JP 2002073383 A JP2002073383 A JP 2002073383A JP 3855812 B2 JP3855812 B2 JP 3855812B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- reliability
- distance
- stereo
- generating
- 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 title claims description 57
- 238000012545 processing Methods 0.000 claims description 56
- 238000003702 image correction Methods 0.000 claims description 28
- 230000002194 synthesizing effect Effects 0.000 claims description 18
- 230000006872 improvement Effects 0.000 claims description 16
- 238000003384 imaging method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 238000012937 correction Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 10
- 239000002131 composite material Substances 0.000 claims description 9
- 238000000691 measurement method Methods 0.000 claims description 5
- 230000001172 regenerating effect Effects 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 claims 2
- 230000009471 action Effects 0.000 description 34
- 230000006399 behavior Effects 0.000 description 32
- 230000008451 emotion Effects 0.000 description 31
- 238000010586 diagram Methods 0.000 description 23
- 230000007704 transition Effects 0.000 description 23
- 230000000873 masking effect Effects 0.000 description 20
- 238000005259 measurement Methods 0.000 description 17
- 210000004394 hip joint Anatomy 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 10
- 230000001276 controlling effect Effects 0.000 description 9
- 210000002414 leg Anatomy 0.000 description 9
- 210000002683 foot Anatomy 0.000 description 7
- 210000000544 articulatio talocruralis Anatomy 0.000 description 6
- 230000035945 sensitivity Effects 0.000 description 6
- 210000000323 shoulder joint Anatomy 0.000 description 6
- 210000002310 elbow joint Anatomy 0.000 description 5
- 210000003857 wrist joint Anatomy 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 239000006185 dispersion Substances 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 210000000245 forearm Anatomy 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 210000000629 knee joint Anatomy 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 210000001364 upper extremity Anatomy 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000036528 appetite Effects 0.000 description 2
- 235000019789 appetite Nutrition 0.000 description 2
- 210000001624 hip Anatomy 0.000 description 2
- 210000003141 lower extremity Anatomy 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 206010039740 Screaming Diseases 0.000 description 1
- 241000872198 Serjania polyphylla Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
- Image Input (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Measurement Of Optical Distance (AREA)
Description
【発明の属する技術分野】
本発明は、ロボット等が環境認識又は物体認識をするために、距離データを取得するための距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置に関し、特に、画像から信頼度を求めて距離データの精度の向上を図った距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置に関する。
【0002】
【従来の技術】
電気的又は磁気的な作用を用いて人間(生物)の動作に似た運動を行う機械装置を「ロボット」という。我が国においてロボットが普及し始めたのは、1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化等を目的としたマニピュレータ及び搬送ロボット等の産業用ロボット(Industrial
Robot)であった。
【0003】
最近では、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットの開発が進められている。このような実用ロボットは、産業用ロボットとは異なり、人間の生活環境の様々な局面において、個々に個性の相違した人間、又は様々な環境への適応方法を自ら学習する能力を備えている。例えば、犬又は猫のように4足歩行の動物の身体メカニズム及びその動作を模した「ペット型」ロボット、或いは、2足直立歩行を行う人間等の身体メカニズム及びその動作をモデルにしてデザインされた「人間型」又は「人間形」ロボット(Humanoid Robot)等のロボット装置は、既に実用化されつつある。
【0004】
これらのロボット装置は、産業用ロボットと比較して、エンターテインメント性を重視した様々な動作を行うことができるため、エンターテインメントロボットと呼称される場合もある。また、そのようなロボット装置には、外部からの情報及び内部の状態に応じて自律的に動作するものがある。
【0005】
ところで、ロボットが環境認識又は物体認識をするためには、距離データを取得する必要がある。距離データ取得の手法の1つとして、ステレオ画像による距離測定手法(以下、ステレオ距離計測ともいう。)がある。ステレオ距離計測では、空間的に離れた場所に設置された2つ以上のカメラから得られる画像を比較して、三角測量の原則で距離を計測する。この際、測定対象物のテクスチャによってはカメラ間で対応関係が正しく得られず、正しい距離測定ができないことがある。なお、ここでのステレオ距離測定とは、2台以上の複数のカメラを用いた方法も含むものである。
【0006】
ステレオ距離測定結果より得られる距離データの精度及び信頼度を上げることは、特にロボットにおいては、距離データを用いた後段の認識精度を大きく左右する点で、極めて重要な問題である。
【0007】
従来、ステレオカメラのステレオ画像から信頼度画像を取得し距離データを得る技術がある。図2(a)乃至図2(e)は、夫々左カメラの入力画像(左カメラ画像)、右カメラの入力画像(右カメラ画像)、距離画像、信頼度画像、及び距離画像を信頼度画像でマスクした後のマスク距離画像を示す模式図である。
【0008】
距離画像は、例えば色が白いほどカメラからの距離が近いことを示し、色が黒くなるほどカメラからの距離が遠いことを示す。ステレオ距離計測による距離データの取得には、テンプレートマッチングによって左右画像を比較する方法が使用される。従って、図2(a)及び図2(b)の夫々左カメラ画像600L及び右カメラ画像600Rに示すように、無地の壁面601L,601R又は本の表紙部分602L,602R等、テクスチャが乏しい部分は、ノイズが生じて正しい距離データが得られず、図2(c)に示すように、距離画像603において、ノイズ領域604が現れる。
【0009】
図2(d)に示す信頼度画像607は、分散値(複雑度)を信頼度値とした画像の例を示している。図2(d)に示す例での信頼度画像607は、分散値が大きい程、信頼度が高く白く表示され、分散値が小さいと信頼度が低く黒く表示される。上述したように、図2(c)の距離画像603で距離の値が正しく計測されないテクスチャが乏しい壁に相当する領域及び本の表紙に相当する領域604は分散値が小さいと計測され、黒く示される低信頼度領域608となる。一方、図2(c)に示す距離画像において、距離が正しく計測できて距離によって濃さが異なる濃淡領域605は、信頼度画像においては、白く示される高信頼度領域609となる。
【0010】
図2(e)に示すマスク後の距離画像610は、図2(d)の信頼度画像の分散値が低い低信頼度領域608を輝度を0(黒)として、図2(c)の距離画像603からマスクしたものである。これにより、低信頼度領域612がマスクされ、信頼度が高い距離データを有する領域611のみが図2(e)のマスク後の距離画像610に反映される。
【0011】
【発明が解決しようとする課題】
しかしながら、従来のステレオカメラを搭載した移動ロボット等においては、上述のステレオ距離計測で距離データを測定しているため、イメージ撮像デバイスの性能限界を超えるようなダイナミックレンジの広いシーンに対しては、以下の対象物を含むような低信頼度部の画像においてステレオ距離計測が正確にできないという問題点がある。即ち、
1.輝度のダイナミックレンジが大きく、濃淡が淡い部分はその濃淡がつぶれてしまう対象物を有する画像
2.反射率が高い表面を有し、照明の光が反射して高輝度部分が飽和する対象物を有する画像
3.照度が低く、感度が不足して黒い部分を生じる対象物を有する画像
これらの画像は濃淡が得られない部分が生じ、その部分においてステレオ距離計測ができない。これは、環境内を移動できるロボットは、一定でない照明環境内において、照度が高い明るい場所では画像が飽和することにより、高輝度部分が白く撮影されてしまったり、逆に、照度が低い位暗い場所では感度が不足して真っ黒に撮影されてしまうためである。
【0012】
更に、従来のテンプレートマッチングによるステレオ距離計測においては、比較画像中の一部を基準画像中の画像と輝度値とにおいて、エピポーララインに沿って比較するという動作原理上、
4.単一輝度及び単一色のテクスチャを有する対象物
5.エピポーララインに平行なテクスチャを有する対象物
の距離を正確に測定することは困難であるという問題点がある。
【0013】
本発明は、このような従来の実情に鑑みて提案されたものであり、上述のような信頼度が低い部分を含む画像においても、照度及び対象物に関係なく、高精度に距離情報を取得することができる距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置を提供することを目的とする。
【0014】
【課題を解決するための手段】
上述した目的を達成するために、本発明に係る距離計測方法は、異なるパラメータで撮像された複数のステレオ画像を入力する画像入力工程と、上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成工程と、各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成工程と、上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正工程とを有し、上記距離画像補正工程は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理工程を有し、上記距離画像補正工程は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する工程と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する工程とを有することを特徴とする。
【0015】
本発明においては、信頼度向上処理工程により信頼度画像の信頼度を向上して、この信頼度が向上した信頼度画像に基づいて距離データを算出して距離画像を生成するため、距離画像の精度及び信頼度を高めることができる。
【0016】
また、上記画像入力工程はステレオ画像を入力する工程であり、上記信頼度向上処理工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手工程と、この再入手ステレオ画像から距離画像を生成する距離画像再生成工程とを有するので、例えばステレオ画像入力手段に設けられたステレオカメラのダイナミックレンジ等の撮像条件、又は撮像位置等のパラメータを種々変更して信頼度が高い画像を得ることができる。
【0017】
更に、上記ステレオ画像入力工程は、第1のステレオ画像を入力する工程であり、上記距離画像生成工程は、上記第1のステレオ画像から第1の距離データを算出し該第1の距離データから第1の距離画像を生成する工程であり、上記信頼度画像生成工程は、上記第1の距離画像を生成するのに使用した上記第1のステレオ画像の少なくとも1つから第1の信頼度画像を生成する工程であって、上記距離画像補正工程は、上記第1の信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記低信頼度領域の信頼度を高める方へパラメータを変更した第2のステレオ画像を再入手する画像再入手工程と、この第2のステレオ画像から第2の距離データを算出して第2の距離画像を生成する距離画像再生成工程と、上記第1の距離画像の上記低信頼度領域の上記第1の距離データを上記第2の距離画像の上記低信頼度領域における上記第2の距離データに置換して合成距離画像を生成する距離画像合成工程とを有するので、例えばパラメータを制御しても信頼度が向上しない領域を有する場合等は、高信頼度領域における距離データのみを使用し、この距離データを合成することにより、信頼度が高い距離画像を得ることができる。
【0020】
本発明に係る距離計測装置は、異なるパラメータで撮像された視差を有する複数のステレオ画像を入力するステレオ画像入力手段と、上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成手段と、各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成手段と、上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正手段とを有し、上記距離画像補正手段は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理手段を有し、上記距離画像補正手段は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する手段と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する手段とを有することを特徴とする。
【0022】
本発明に係るロボット装置は、供給された入力情報に基づいて動作を行う自律型のロボット装置であって、異なるパラメータで撮像された複数のステレオ画像を入力するステレオ画像入力手段と、上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成手段と、各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成手段と、上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正手段とを有し、上記距離画像補正手段は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理手段を有し、上記距離画像補正手段は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する手段と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する手段とを有することを特徴とする。
【0023】
本発明においては、信頼度画像を使用して求められた正確な補正距離データが得られるため、ロボット装置は、距離計測データを用いた環境認識及び物体認識等、ロボット装置の後段の認識精度を高めることができる。
【0024】
また、上記信頼度向上処理手段は、該低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手手段と、この再入手ステレオ画像から距離画像を生成する距離画像再生成手段とを有するので、ステレオ画像の撮像条件及び撮像位置等のカメラパラメータだけではなく、ロボット装置のロボットパラメータを種々変更したステレオ画像を再入手することにより、更に信頼度が高い距離画像を得ることができる。
【0026】
【発明の実施の形態】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。本実施の形態においては、本発明の距離計測装置をロボット等に搭載されるステレオ距離計測装置とした場合について説明する。図1は、本実施の形態の距離計測装置を示すブロック図である。ステレオ距離計測装置において、ステレオ距離計測結果の距離画像における距離データは、元画像のテンプレートの分散値及びマッチング時のエラー値等からその信頼性を測定することができる。本実施の形態においては、ステレオ画像から得られる距離データの信頼度が高い部分(領域)のデータを使用して信頼度が低い部分(領域)のデータを補完(又は補間)する手法により、ステレオ画像の距離データの精度及び信頼性を向上させるものである。
【0027】
図1は、信頼度画像を使用した本実施の形態のステレオ距離計測装置501を示すブロック図である。図1に示すように、先ず、ステレオカメラ(ステレオ画像入力手段)510から得られたステレオ画像511は、信頼度画像生成計算部(信頼度画像生成手段)520及び距離画像生成計算部(距離画像生成手段)530に入力される。ステレオカメラは2以上のCCDカメラからなり、このCCDカメラにより視差を有する画像であるステレオ画像を撮像する。そして、信頼度画像生成計算部520及び距離画像生成計算部530から、夫々信頼度画像521及び距離画像531が生成される。生成された信頼度画像521には、後述する信頼度が高い領域(高信頼度領域)と信頼度が低い領域(低信頼度領域)とが検出されるが、例えば、制御手段(図示せず)の検出部(図示せず)により信頼度が低い領域を抽出し、制御手段のパラメータ制御部(図示せず)が、検出部の検出結果に基づいて、ステレオカメラのゲイン及びアイリス等のカメラパラメータをコントロールする(C1)か、又はロボットの運動系等、信頼度が高くなるようにロボットパラメータをコントロールし(C2)、再度ステレオ画像を取り込むことにより信頼度を高める。
【0028】
生成された信頼度画像521及び距離画像531は、画像マスキング処理部540に入力される。そして、画像マスキング処理部540の閾値制御部(図示せず)により、信頼度画像521におけるマスキングの閾値をコントロールし(C3)、低信頼度領域を検出してこの低信頼度領域を距離画像531からマスキングすることによって、低信頼度領域をマスクして距離画像531から除いたマスク距離画像532を生成する。マスキングの閾値コントロールとは、閾値制御部(図示せず)により、例えばカメラのゲインを上げた場合は、画面にノイズが多く含まれるため、閾値を高くする等の調整を行うことである。なお、ここで、後述するロボットの視線方向コントロールをして(C4)、カメラ画像を移動させる等の処理もなされる。
【0029】
マスキング処理部540のマスキング処理によって低信頼度領域における距離データがマスキングされたマスク距離画像532は、低信頼度領域補完処理部550に入力され、後述する低信頼度領域補完処理によって、低信頼度領域における距離データがその周囲の信頼度が高い領域における距離データによって補完される。ここの補完方法は、例えば、ラプラス方程式等を使用した補間方法がある。低信頼度領域が補完処理された完成距離画像533は、距離画像使用モジュール560に入力され、後段の処理がなされる。
【0030】
以下、本実施の形態について更に詳細に説明する。先ず、信頼度画像生成計算部520について説明する。
【0031】
図2(a)乃至図2(e)は、夫々左カメラの入力画像(左カメラ画像)、右カメラの入力画像(右カメラ画像)、距離画像、信頼度画像、及び距離画像を信頼度画像でマスクした後のマスク距離画像を示す図である。
【0032】
距離画像は、例えば輝度の差(単色の濃淡)で表示することができ、例えば、輝度が高い(白で表示される)程、カメラからの距離が近いことを示し、輝度が低い(黒で表示される)程、カメラからの距離が遠いことを示すものとする。ステレオ距離計測による距離データの取得には、テンプレートマッチングによって左右画像を比較する方法を使用することができる。従って、図2(a)及び図2(b)の夫々左カメラ画像600L及び右カメラ画像600Rに示すように、無地の壁面601L,601R又は本の表紙部分602L,602R等、テクスチャが乏しい部分は、ノイズが生じて正しい距離データが得られず、図2(c)に示すように、距離画像603において、ノイズ領域604が現れる。
【0033】
図2(d)に示す信頼度画像607は、後述するように、左カメラ画像600L又は右カメラ画像600Rをテンプレートとし、その分散値(複雑度)を信頼度値とした画像の例を示している。信頼度画像は、左右のいずれか1つのカメラ画像から得ることができる。また、後述するように、左右両方のカメラ画像を使用して作成することもできる。また、分散値を使用する例以外にも信頼度値として、例えばマッチングスコア又は他の値を使用する方法等もある。
【0034】
図2(d)に示す例での信頼度画像607は、分散値が大きい程、信頼度が高くなり、輝度が高い画素として表示(白で表示)され、分散値が小さいと信頼度が低くなり、輝度が低い画素として表示(黒く表示)される。上述したように、図2(c)の距離画像603で距離の値が正しく計測されないテクスチャが乏しい壁に相当する領域及び本の表紙に相当する領域604は分散値が小さいと計測され、夫々黒く表示された低信頼度領域608となる。一方、図2(c)に示す距離画像において、距離が正しく計測できて距離によって濃さが異なる濃淡領域605は、図2(d)に示す信頼度画像においては、白っぽく表示された高信頼度領域609となる。
【0035】
図2(e)に示すマスク後の距離画像610は、図2(d)の信頼度画像の分散値が低い黒い低信頼度領域608の輝度を0として、図2(c)の距離画像603からマスクしたものである。これにより、低信頼度領域612がマスクされ、信頼度が高い距離データを有する領域611のみが図2(e)のマスク後の距離画像610に反映される。ここで、図2(d)の信頼度画像607において、分散値が低いため、信頼度が低い領域608は、信頼度が低い領域と判定するために予め設定された閾値を使用し、この所定の閾値よりも輝度が低い部分を低信頼度領域とすることによりマスキング処理のコントロールを行う。
【0036】
次に、信頼度画像の求め方について説明する。ステレオカメラにおける信頼度画像は、様々な評価値を用いて作成することができるが、本実施の形態においては、上述したテンプレートの分散値による信頼度画像の求め方及びマッチングスコアによる信頼度画像の求め方の2つの方法を説明する。
【0037】
ステレオ距離計測では左右のステレオ画像中の画素の対応関係をテンプレートマッチングによって探索する。図3(a)はテンプレート702を抜き出す基準画像701を示す模式図、図3(b)はテンプレートとマッチング比較を行う先の画像703を示す模式図である。例えば、左のステレオ画像を基準画像701、右のステレオ画像をマッチング先の画像703とすることができる。
【0038】
テンプレートの分散値による信頼度画像の求め方としては、先ず、図3(a)におけるマッチングテンプレート702内の画素の輝度の分散値を下記数式1で求める。
【0039】
【数1】
【0040】
ここで、上記数式1において、Varは画素の輝度の分散値、Nはテンプレート702に含まれる画素数、Yijはテンプレート702内の座標(i,j)における画素の輝度値を表す。この輝度値Yijから、上記数式1によって探索する全てのテンプレートの分散値Varを算出する。そして、この分散値Varの大きさによって分散値による信頼度画像を作成する。上述した図2(d)に示す信頼度画像においては、分散値が高い程信頼度が高いことを示し、分散値が低い程、信頼度が低いことを示す。
【0041】
また、マッチングスコアによる信頼度画像の求め方としては、図3(a)に示すテンプレート702と、図3(b)に示すマッチング先画像703のエピポーラライン(2台のカメラの幾何条件から決定される、対応付けを拘束する直線)704に沿って、例えば距離値(Distance Number)nd1〜nd7に応じて選択された領域とを比較し、これらの領域内の画素の輝度の差からマッチングスコア値を算出する。図3(c)は、横軸に距離値をとり、縦軸にマッチングスコア値をとって、テンプレート702のマッチングスコア値を示すグラフ図である。図3(c)に示すグラフにおいて、例えば、マッチングスコア値、最小スコア値(距離値nd3)付近における横軸方向の幅(距離値Distance Number方向への幅)L、及びグラフの急峻度値等を使用してマッチングスコアによる信頼度画像を作成する。
【0042】
次に、図1に示す信頼度が低い領域の信頼度を高める処理部580について更に詳細に説明する。図4(a)乃至図4(c)に示すのは、ダイナミックレンジが広く、高輝度部分が潰れた場合の夫々左カメラ画像800、信頼度画像810及び距離画像820を示す。なお、図4(a)は、テクスチャ(模様)を有する床801上に置かれた紙802のカメラ画像を示すものである。また、紙801にはランダムパターンのテクスチャを有するものとする。このランダムパターンのテクスチャがカメラの撮像ダイナミックレンジを超えた場合、即ち、カメラの絞りを開き過ぎた場合、図4(a)に示すように、カメラ画像800においては、紙802のテクスチャが現れず、単に白い領域として表示される。従って、紙802は、図4(b)に示すように、分散値が低くなり、信頼度画像810において、紙に相当する領域811は信頼度が低く、黒っぽく表示され、この領域811の距離データが正しくないことが確認される。一方、床に相当する領域812は模様があるため信頼度が高くなって白っぽく表示される。また、紙と床との境界に相当する領域813は、よりコントラストがはっきりするため、信頼度が最も高い部分として最も輝度が高く表示される。よって、図4(c)に示すように、距離画像820においては、信頼度が低い紙に相当する領域821にはノイズが生じ正しい距離データが得られない。一方、床部分及び床と紙との境界に相当する領域822においては、本図の上部から下部にかけて、距離が近くなるため徐々に輝度が上がるような濃淡画像が得られる。
【0043】
そこで、図4(b)に示す領域811のように、信頼度画像810中に信頼度が低い領域がある場合、信頼度が高くなるようにカメラのコントロールパラメータを調節する。図5(a)乃至図5(c)はカメラのコントロールパラメータを調節した後の夫々左カメラ画像900、信頼度画像910及び距離画像920を示す模式図である。図5(a)に示すように、カメラパラメータのうち、アイリス及びゲインを調整すると、図4(a)において単に白く表示されていた紙802は、図5(a)に示すように、床901の模様と共に、紙902にもランダムパターンのテクスチャが表示されるようになる。カメラ入力画像900からランダムパターンのテクスチャを確認できたため、図5(b)に示すように、この場合の信頼度画像910は、床に相当する領域912及び床と紙との境界に相当する領域913と共に、紙に相当する領域911の信頼度が高くなり白っぽく表示される。即ち、画面の紙相当する領域913の信頼度が高くなったため、図5(c)に示すように、距離画像920の床及び床と紙との境界に相当する領域922と共に紙に相当する領域921における距離データが正しく取得できるようになり、距離画像920は全体が濃淡画像となる。このように、信頼度画像910に含まれる信頼度が低い領域の信頼度が高くなるようにカメラパラメータを調整することにより、低信頼度領域においてもステレオ距離計測を可能にすることができる。
【0044】
また、図5(a)に示すようにカメラパラメータを調整することにより信頼度が低い領域の信頼度を高くした場合、又はカメラのダイナミックレンジが低い場合、逆に信頼度が高い領域の信頼度が低くなる場合がある。即ち、図4(a)において、床801は、このときのカメラパラメータでは模様が認識され、信頼度が高い領域812として信頼度画像が得られていたが、図6(a)に示すように、紙1002のテクスチャを表示させた場合に、床1001が黒く表示されて模様が表示されない場合がある。すると、図6(b)に示す信頼度画像1010において、床に相当する領域1012は信頼度が低下して黒っぽく表示されてしまう。従って、図6(c)に示す距離画像1020において、床に相当する領域1022はノイズが発生して、距離に応じた適切な濃淡で示されるべき画像が得られない。
【0045】
このように、例えば、パラメータを変更しても図4及び図6に示す信頼度画像810,1010しか得られないような場合は、各距離画像において、信頼度が高い部分のみを組み合わせた距離画像を合成することにより、全ての領域において信頼度が高い合成距離画像(距離データ)を得ることができる。即ち、図4に示す床に相当し、正しい距離データが得られた領域822と図6に示す紙に相当し、正しい距離データが得られた領域1021とを組み合わせることにより、全ての領域で正確な距離データを有する図5(c)に示す距離画像920と同様な距離画像を合成することができる。
【0046】
更に、カメラパラータを予め変化させながら画像を取得しておき、信頼度が高い部分を組み合わせて信頼度が高い距離データを得ることもできる。また、変化させるカメラパラメータは、アイリス及びゲインパラメータに限らず、ロボットが画像を取得する際にコントロールできる全てのパラメータを含むものとすることができる。
【0047】
また、信頼度画像をトリガーとしてコントロールするのは、上述したようなロボットにおける受動的なパラメータだけではなく、ロボットが、発光したり、ランダムドットパターンを照射したり、塗料を噴射したり、又は体を動かして視野に移る影を動かしたりして信頼度が高い領域を得る等の能動的な動作による方法をとることも可能である。
【0048】
更に、首をかしげる、及び移動して対象物と光源との位置関係を変化させる等の動作により、信頼度画像中の信頼度を高めることもできる。
【0049】
次に、上述した低信頼度領域の信頼度を高くする処理部580の動作について説明する。図7及び図8は、信頼度を高くする処理部580の動作を示すフローチャートであって、夫々信頼度によってパラメータをコントロールして信頼度が高い領域の距離データを合成する方法及びパラメータを変化させながら画像を取得し、信頼度が高い領域の距離データを合成する方法を示す。
【0050】
先ず、信頼度によってパラメータをコントロールして信頼度が高い領域の距離データを合成する方法について説明する。図7に示すように、ステレオカメラからのステレオ映像により、ステレオ画像及び信頼度画像を取得する(ステップS1)。そして、信頼度画像から、信頼度が低い領域があるか否かを検出する(ステップS2)。ここで、信頼度が低い領域がある場合は、ロボット又はカメラパラメータの例えばゲイン若しくはアイリス等をコントロールする(ステップS3)。信頼度が低い領域がない場合は、ステップS1に戻る。ステップS3にてパラメータをコントロールした後、再度ステレオカメラによりステレオ画像を撮影してステレオ画像及び信頼度画像を取得する。この再度得られた信頼度画像において、ステップS2で検出された信頼度が低い領域の信頼度が高くなったか否かを検出し(ステップS4)、信頼度が高くなった場合は、ステップS1及びステップS3で夫々得られた信頼度画像の信頼度が高い領域の距離データを合成し(ステップS5)、距離データを出力する。この距離データは、後段の距離画像使用モジュールへ供給される。また、ステップS4にて、信頼度が低い領域の信頼度が高くならなかった場合は、再びステップS3に戻り、パラメータを再度コントロールしてステレオ画像を撮影し、再びステレオ画像及び信頼度画像を取得する。こうして信頼度が低い領域の信頼度が高くなるまでロボット又はカメラパラメータをコントロールし、得られた距離データを合成して信頼度が高い距離データを得る。
【0051】
次に、パラメータを変化させながら画像を取得し、信頼度が高い領域の画像データを合成して距離データを取得する方法について説明する。図8に示すように、ロボット又はカメラパラメータの例えばゲイン若しくはアイリス等をコントロールする(ステップS11)。そしてステレオカメラによりステレオ画像を撮影し、ステレオ画像及び信頼度画像を取得する(ステップS12)。次いで、十分な枚数の画像を取得したか否かを判定し(ステップS13)、十分取得したと判定された場合は、取得した複数の信頼度画像から信頼度が高い領域を抽出しその領域の距離データを合成し(ステップS14)、距離データを出力する。ステップS13にて、十分でないと判定された場合は、ステップS11に戻り、再びパラメータをコントロールしたステレオカメラでステレオ画像を撮影し、ステレオ画像及び信頼度画像を取得する(ステップS12)。
【0052】
次に、上述の方法により、カメラパラメータをコントロールしても信頼度を高めることができない場合について説明する。図5(a)に示した紙902とは異なり、ランダムパターン等のテクスチャがない場合等は、ゲインコントロール等して信頼度を高めようとしても、信頼度を高くすることができず、このような信頼度の低い領域の距離データは上述の方法では得ることができない。この場合、低信頼度領域をそのままにしておき、後段の距離画像使用モジュールにおいて使用しない方法と、低信頼度領域をその周囲の高信頼度領域の正しい距離データで補完(補間)する方法とがある。
【0053】
距離データを得ることができなかった低信頼度領域を使用しない方法においては、後段の処理で、その低信頼度領域をマスクすることになるが、マスクする領域を正確に把握する必要があり、低信頼度領域の処理に関して特別な扱いを必要として処理が複雑になる。一方、距離データが認識できなかった低信頼度領域をその周囲の高信頼度領域の距離データで補完(補間)する方法においては、低信頼度領域においても距離データが算出されるため、マスクすることなく、高信頼度領域と同様の処理を施すことができる。従って、後段の処理で扱いやすいという利点がある。
【0054】
次に、信頼度が低く、距離データが認識できなかった低信頼度領域をその周囲の高信頼度領域の距離データで補完する処理方法について説明する。図9(a)乃至図9(e)は、図1に示す信頼度が低い領域を信頼度が高い領域のデータで補完する処理部(距離画像補完手段)590における処理画像を示す模式図である。
【0055】
図9(a)の左カメラ画像1100に示すように、画像1100の中央部分にパターンを有さない例えば段ボール等の対象物1101がある場合、図9(b)の信頼度画像1110に示すように、対象物のエッジに相当する領域1111以外の領域1112は黒っぽく表示され、信頼度が低くなってしまう。この信頼度画像1110のうち、低信頼度領域である領域1112を図9(a)に示すカメラ画像からマスクして、距離画像を求めると、図9(c)に示すように、低信頼度領域に相当する領域1121の距離データが取り除かれたマスク画像1120が得られる。次に、このマスクされた領域1121に対して、その周囲の信頼度が高い領域1122の距離データを使用してマスク領域1121の距離データを補完し、マスク領域1121の距離データを求める。補完方法に関しては、種々の方法があるが、本実施の形態においては、ラプラス方程式を用いた補間例を示す。
【0056】
ラプラス方定式の理論的な方程式は、下記数式2で示される。
【0057】
【数2】
【0058】
ここで、上記数式2のラプラシアン∇を書き換えると下記数式3で示される。
【0059】
【数3】
【0060】
ここで、上記数式3のu(x,y)は、画面中の座標(x,y)における距離データ値を示す。ラプラス方程式の差分近似を用いた反復方で求める場合、例えば下記数式4を使用することができる。
【0061】
【数4】
【0062】
上記数式4を使用して、適当な回数反復して、図9(d)に示す完成距離画像1130を得ることができる。図9(d)に示すように、図9(b)において信頼度が低く黒く表示されていた領域1112等の低信頼度部がその周囲の信頼度が高い部分の距離データにより補間された距離画像(補正距離画像)1130が得られる。
【0063】
このように、信頼度が低い領域を補完(補間)する際、その周囲の信頼度が高い領域の距離データを使用する。しかしながら、視界角の限界で、必ずしも、1つの画面(画像)において、低信頼度領域の周囲全てが高信頼度領域に囲まれるとは限らない。例えば、補完したい低信頼度領域が画像の周辺部にあり、低信頼度領域の周囲の一部が高信頼度領域に接していない場合等、1つの画像のみからでは低信頼度領域の補完を行うことができない場合がある。このような場合、ステレオカメラの撮像位置を変化させる、即ち、ロボットの首又は体を動かして視点方向を変える必要がある。このような場合の信頼度画像の求め方について説明する。
【0064】
図10(a)及び図10(b)は、互いに別のカメラ位置における夫々信頼度画像1200,1210を示す。図10(a)において、例えば画面下方に信頼度が低い部分の低信頼度部1201を含む低信頼度領域1202を有し、この低信頼度部1201の周囲のうち、下部は高信頼度領域に接していない場合、この低信頼度部1201の距離データは、図10(a)に示す信頼度画像1200のみからは補完することができない。この場合は、例えば、ロボットの視点を下方に移動、即ち、カメラ位置を下方に移動して、低信頼度部1201の周囲が全て高信頼度領域1213となるようにする。つまり、図10(b)に示すように、低信頼度領域1212を画面の中央位置に移動させ、低信頼度部1211の周囲が全て高信頼度領域1213となるようにする。これにより、低信頼度部1211のデータを、高信頼度領域1213の距離データを使用して補完(補間)することができる。
【0065】
また、図10(c)に示すように、低信頼度領域1300が極めて広い領域からなり、1つのステレオ画像に低信頼度領域1300の全体を含むことが不可能な場合、カメラの位置(ロボットの視点)を例えば、図中矢印1301で示すように、左上1302、左下1303、右下1304、右上1305の順に動かし、低信頼度部1300の周囲が全て高信頼度領域1306で囲まれるよう視点を移動させて例えば合計4枚のカメラ画像を得る。そして、これらの4枚のカメラ画像から信頼度画像を計算し、この四枚の信頼度画像を合成した合成信頼度画像を取得する。そして、低信頼度領域1300の周囲を囲む高信頼度領域1306の距離データから低信頼度領域1300の距離データを補完(補間)して、完全な距離画像(補正距離画像)を得ることができる。
【0066】
以下、距離データの補完方法を図1及び図11のフローチャートにより説明する。ステレオカメラ510のステレオ画像511から信頼度画像生成計算部520にて信頼度画像521を生成した後、信頼度画像521は、画像マスキング処理部540に入力される。この画像マスキング処理部540にて、先ず、図11に示すように、信頼度画像521内において、信頼度が低い部分(低信頼度領域)が画像521の境界上にあるか否かを検出する(ステップS21)。ステップS21で信頼度画像521の境界上に低信頼度部(低信頼度領域)が検出された場合は、低信頼度部がマスクされたマスク距離画像が生成され、低信頼度部補完処理部550に入力される。ここで、低信頼度領域周辺の信頼度が高い部分の距離データを保持し(ステップS22)、低信頼度部(低信頼度領域)の縁に沿ってステレオカメラ(ロボットの視点)を移動する(ステップS23)。そして、低信頼度部(低信頼度領域)の縁を一巡したか否かを判定し(ステップS24)、一巡したと判定した場合は、低信頼度部の周囲の高信頼度領域の距離データにより、低信頼度部の距離データを補完(補間)する(ステップS25)。また、ステップS21で低信頼度部(低信頼度領域)が画像の境界上にないと判定された場合もステップS25へ進み、低信頼度部の距離データを補完する。
【0067】
本実施の形態によれば、従来はステレオ距離計測が不可能であった以下の対象物を含む画像、即ち、
1.輝度のダイナミックレンジが大きく濃淡が淡い部分がつぶれる対象物を含む画像
2.反射率が高い表面を有するため、照明の光が反射して高輝度部分が飽和する対象物を含む画像
3.照度が低く、感度が不足し黒い部分が生じる対象物含む画像
4.単一輝度及び単一色のテクスチャを有する対象物含む画像
5.エピポーフラインに平行なテクスチャを有する対象物含む画像
に対しても、信頼度画像を作成し、信頼度が低い場合は、信頼度が高くなるようにカメラ又はロボットパラメータを変化させ再びステレオ画像を入手するか、異なるパラメータで撮像された複数のステレオ画像から信頼度が高い領域を合成し、その信頼度画像に基づいて距離画像を合成するか、又は信頼度が低い領域の距離データをその周囲の信頼度が高い距離データを使用して補完することにより、信頼度が高い距離データを得ることができる。
【0068】
以下、上述した実施の形態におけるステレオ距離計測装置を搭載した2足歩行タイプのロボット装置について詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態(怒り、悲しみ、喜び、楽しみ等)に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。
【0069】
図12に示すように、ロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/Lと、左右2つの脚部ユニット5R/Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
【0070】
このロボット装置1が具備する関節自由度構成を図13に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
【0071】
また、上肢を構成する各々の腕部ユニット4R/Lは、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール軸113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
【0072】
また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
【0073】
また、下肢を構成する各々の脚部ユニット5R/Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
【0074】
以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。ただし、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
【0075】
上述したようなロボット装置1がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【0076】
図14には、ロボット装置1の制御システム構成を模式的に示している。同図に示すように、ロボット装置1は、ヒトの四肢を表現した体幹部ユニット2,頭部ユニット3,腕部ユニット4R/L,脚部ユニット5R/Lと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット10とで構成される。
【0077】
ロボット装置1全体の動作は、制御ユニット10によって統括的に制御される。制御ユニット10は、CPU(Central Processing Unit)や、DRAM、フラッシュROM等の主要回路コンポーネント(図示しない)で構成される主制御部11と、電源回路やロボット装置1の各構成要素とのデータやコマンドの授受を行うインターフェイス(何れも図示しない)などを含んだ周辺回路12とで構成される。
【0078】
本発明を実現するうえで、この制御ユニット10の設置場所は、特に限定されない。図14では体幹部ユニット2に搭載されているが、頭部ユニット3に搭載してもよい。あるいは、ロボット装置1外に制御ユニット10を配備して、ロボット装置1の機体とは有線又は無線で交信するようにしてもよい。
【0079】
図13に示したロボット装置1内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。すなわち、頭部ユニット3には、首関節ヨー軸101、首関節ピッチ軸102、首関節ロール軸103の各々を表現する首関節ヨー軸アクチュエータA2、首関節ピッチ軸アクチュエータA3、首関節ロール軸アクチュエータA4が配設されている。
【0080】
また、頭部ユニット3には、外部の状況を撮像するためのCCD(Charge Coupled Device)カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイク、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
【0081】
また、体幹部ユニット2には、体幹ピッチ軸104、体幹ロール軸105、体幹ヨー軸106の各々を表現する体幹ピッチ軸アクチュエータA5、体幹ロール軸アクチュエータA6、体幹ヨー軸アクチュエータA7が配設されている。また、体幹部ユニット2には、このロボット装置1の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
【0082】
また、腕部ユニット4R/Lは、上腕ユニット41R/Lと、肘関節ユニット42R/Lと、前腕ユニット43R/Lに細分化されるが、肩関節ピッチ軸107、肩関節ロール軸108、上腕ヨー軸109、肘関節ピッチ軸110、前腕ヨー軸111、手首関節ピッチ軸112、手首関節ロール軸113の各々表現する肩関節ピッチ軸アクチュエータA8、肩関節ロール軸アクチュエータA9、上腕ヨー軸アクチュエータA10、肘関節ピッチ軸アクチュエータA11、肘関節ロール軸アクチュエータA12、手首関節ピッチ軸アクチュエータA13、手首関節ロール軸アクチュエータA14が配備されている。
【0083】
また、脚部ユニット5R/Lは、大腿部ユニット51R/Lと、膝ユニット52R/Lと、脛部ユニット53R/Lに細分化されるが、股関節ヨー軸115、股関節ピッチ軸116、股関節ロール軸117、膝関節ピッチ軸118、足首関節ピッチ軸119、足首関節ロール軸120の各々を表現する股関節ヨー軸アクチュエータA16、股関節ピッチ軸アクチュエータA17、股関節ロール軸アクチュエータA18、膝関節ピッチ軸アクチュエータA19、足首関節ピッチ軸アクチュエータA20、足首関節ロール軸アクチュエータA21が配備されている。各関節に用いられるアクチュエータA2,A3・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。
【0084】
体幹部ユニット2、頭部ユニット3、各腕部ユニット4R/L、各脚部ユニット5R/Lなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部20,21,22R/L,23R/Lが配備されている。さらに、各脚部ユニット5R/Lの足底が着床したか否かを検出する接地確認センサ30R/Lを装着するとともに、体幹部ユニット2内には、姿勢を計測する姿勢センサ31を装備している。
【0085】
接地確認センサ30R/Lは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ31は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
【0086】
接地確認センサ30R/Lの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ31の出力により、体幹部分の傾きや姿勢を検出することができる。
【0087】
主制御部11は、各センサ30R/L,31の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部20,21,22R/L,23R/Lの各々に対して適応的な制御を行い、ロボット装置1の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
【0088】
ロボット装置1の機体上での全身運動は、足部運動、ZMP(Zero Moment Point)軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容にしたがった動作を指示するコマンドを各副制御部20,21,22R/L,23R/Lに転送する。そして、各々の副制御部20,21,・・・等では、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・等に対して駆動制御信号を出力する。ここでいう「ZMP」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ZMP軌道」とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
【0089】
以上のように、ロボット装置1は、各々の副制御部20,21,・・・等が、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置1は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
【0090】
また、ロボット装置1における制御ユニット10では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びCCDカメラからの画像情報、マイクからの音声情報等を統括して処理している。制御ユニット10では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイク、スピーカなどの各種センサ、各アクチュエータ、CCDカメラ及びバッテリが各々対応するハブを介して主制御部11と接続されている。
【0091】
主制御部11は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してDRAM内の所定位置に順次格納する。また、主制御部11は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM内の所定位置に格納する。DRAMに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部11がこのロボット装置1の動作制御を行う際に利用される。
【0092】
主制御部11は、ロボット装置1の電源が投入された初期時、制御プログラムを読み出し、これをDRAMに格納する。また、主制御部11は、上述のように主制御部11よりDRAMに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【0093】
さらに、主制御部11は、この判断結果及びDRAMに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置1に、いわゆる「身振り」、「手振り」といった行動をとらせる。
【0094】
このようにしてロボット装置1は、制御プログラムに基づいて自己及び周囲の状況を判断し、使用者からの指示及び働きかけに応じて自律的に行動できる。
【0095】
ところで、このロボット装置1は、内部状態に応じて自律的に行動することができる。そこで、ロボット装置1における制御プログラムのソフトウェア構成例について、図15乃至図20を用いて説明する。
【0096】
図15において、デバイス・ドライバ・レイヤ40は、制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット41から構成されている。この場合、各デバイス・ドライバは、CCDカメラやタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【0097】
また、ロボティック・サーバ・オブジェクト42は、デバイス・ドライバ・レイヤ40の最下位層に位置し、例えば上述の各種センサやアクチュエータ281〜28n等のハードウェアにアクセスするためのインターフェイスを提供するソフトウェア群でなるバーチャル・ロボット43と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ44と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ45と、ロボット装置1の機構を管理するソフトウェア群でなるデザインド・ロボット46とから構成されている。
【0098】
マネージャ・オブジェクト47は、オブジェクト・マネージャ48及びサービス・マネージャ49から構成されている。オブジェクト・マネージャ48は、ロボティック・サーバ・オブジェクト42、ミドル・ウェア・レイヤ50、及びアプリケーション・レイヤ51に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ49は、メモリカードに格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【0099】
ミドル・ウェア・レイヤ50は、ロボティック・サーバ・オブジェクト42の上位層に位置し、画像処理や音声処理などのこのロボット装置1の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ51は、ミドル・ウェア・レイヤ50の上位層に位置し、当該ミドル・ウェア・レイヤ50を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置1の行動を決定するためのソフトウェア群から構成されている。
【0100】
なお、ミドル・ウェア・レイヤ50及びアプリケーション・レイヤ51の具体なソフトウェア構成をそれぞれ図16に示す。
【0101】
ミドル・ウェア・レイヤ50は、図16に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール60〜68並びに入力セマンティクスコンバータモジュール69などを有する認識系70と、出力セマンティクスコンバータモジュール78並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、LED点灯用及び音再生用の各信号処理モジュール71〜77などを有する出力系79とから構成されている。
【0102】
認識系70の各信号処理モジュール60〜68は、ロボティック・サーバ・オブジェクト42のバーチャル・ロボット43によりDRAMから読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール69に与える。ここで、例えば、バーチャル・ロボット43は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【0103】
入力セマンティクスコンバータモジュール69は、これら各信号処理モジュール60〜68から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ41に出力する。
【0104】
アプリケーション・レイヤ51は、図17に示すように、行動モデルライブラリ80、行動切換モジュール81、学習モジュール82、感情モデル83及び本能モデル84の5つのモジュールから構成されている。
【0105】
行動モデルライブラリ80には、図18に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデルが設けられている。
【0106】
そして、これら行動モデルは、それぞれ入力セマンティクスコンバータモジュール69から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル83に保持されている対応する情動のパラメータ値や、本能モデル84に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール81に出力する。
【0107】
なお、この実施の形態の場合、各行動モデルは、次の行動を決定する手法として、図19に示すような1つのノード(状態)NODE0〜NODEnから他のどのノードNODE0〜NODEnに遷移するかを各ノードNODE0〜NODEnに間を接続するアークARC1〜ARCn1に対してそれぞれ設定された遷移確率P1〜Pnに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【0108】
具体的に、各行動モデルは、それぞれ自己の行動モデルを形成するノードNODE0〜NODEnにそれぞれ対応させて、これらノードNODE0〜NODEn毎に図20に示すような状態遷移表90を有している。
【0109】
この状態遷移表90では、そのノードNODE0〜NODEnにおいて遷移条件とする入力イベント(認識結果)が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【0110】
したがって、図20の状態遷移表90で表されるノードNODE100では、「ボールを検出(BALL)」という認識結果が与えられた場合に、当該認識結果とともに与えられるそのボールの「大きさ(SIZE)」が「0から1000」の範囲であることや、「障害物を検出(OBSTACLE)」という認識結果が与えられた場合に、当該認識結果とともに与えられるその障害物までの「距離(DISTANCE)」が「0から100」の範囲であることが他のノードに遷移するための条件となっている。
【0111】
また、このノードNODE100では、認識結果の入力がない場合においても、行動モデルが周期的に参照する感情モデル83及び本能モデル84にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル83に保持された「喜び(Joy)」、「驚き(Surprise)」又は「悲しみ(Sadness)」の何れかのパラメータ値が「50から100」の範囲であるときには他のノードに遷移することができるようになっている。
【0112】
また、状態遷移表90では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードNODE0〜NODEnから遷移できるノード名が列記されているとともに、「入力イベント名」、「データ名」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードNODE0〜NODEnへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードNODE0〜NODEnに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は100[%]となっている。
【0113】
したがって、図20の状態遷移表90で表されるノードNODE100では、例えば「ボールを検出(BALL)」し、そのボールの「SIZE(大きさ)」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30[%]」の確率で「ノードNODE120(node 120)」に遷移でき、そのとき「ACTION1」の行動が出力されることとなる。
【0114】
各行動モデルは、それぞれこのような状態遷移表90として記述されたノードNODE0〜 NODEnが幾つも繋がるようにして構成されており、入力セマンティクスコンバータモジュール69から認識結果が与えられたときなどに、対応するノードNODE0〜NODEnの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール81に出力するようになされている。
【0115】
図17に示す行動切換モジュール81は、行動モデルライブラリ80の各行動モデルからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデルから出力された行動を選択し、当該行動を実行すべき旨のコマンド(以下、行動コマンドという。)をミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78に送出する。なお、この実施の形態においては、図18において下側に表記された行動モデルほど優先順位が高く設定されている。
【0116】
また、行動切換モジュール81は、行動完了後に出力セマンティクスコンバータモジュール78から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール82、感情モデル83及び本能モデル84に通知する。
【0117】
一方、学習モジュール82は、入力セマンティクスコンバータモジュール69から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
【0118】
そして、学習モジュール82は、この認識結果及び行動切換えモジュール71からの通知に基づいて、「叩かれた(叱られた)」ときにはその行動の発現確率を低下させ、「撫でられた(誉められた)」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ70における対応する行動モデルの対応する遷移確率を変更する。
【0119】
他方、感情モデル83は、「喜び(Joy)」、「悲しみ(Sadness)」、「怒り(Anger)」、「驚き(Surprise)」、「嫌悪(Disgust)」及び「恐れ(Fear)」の合計6つの情動について、各情動毎にその情動の強さを表すパラメータを保持している。そして、感情モデル83は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0120】
具体的には、感情モデル83は、入力セマンティクスコンバータモジュール69から与えられる認識結果と、そのときのロボット装置1の行動と、前回更新してからの経過時間となどに基づいて所定の演算式により算出されるそのときのその情動の変動量を△E[t]、現在のその情動のパラメータ値をE[t]、その情動の感度を表す係数をkeとして、下記数式5によって次の周期におけるその情動のパラメータ値E[t+1]を算出し、これを現在のその情動のパラメータ値E[t]と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル83は、これと同様にして全ての情動のパラメータ値を更新する。
【0121】
【数5】
【0122】
なお、各認識結果や出力セマンティクスコンバータモジュール78からの通知が各情動のパラメータ値の変動量△E[t]にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△E[t]に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△E[t]に大きな影響を与えるようになっている。
【0123】
ここで、出力セマンティクスコンバータモジュール78からの通知とは、いわゆる行動のフィードバック情報(行動完了情報)であり、行動の出現結果の情報であり、感情モデル83は、このような情報によっても感情を変化させる。これは、例えば、「叫ぶ」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール78からの通知は、上述した学習モジュール82にも入力されており、学習モジュール82は、その通知に基づいて行動モデルの対応する遷移確率を変更する。
【0124】
なお、行動結果のフィードバックは、行動切換モジュール81の出力(感情が付加された行動)によりなされるものであってもよい。
【0125】
一方、本能モデル84は、「運動欲(exercise)」、「愛情欲(affection)」、「食欲(appetite)」及び「好奇心(curiosity)」の互いに独立した4つの欲求について、これら欲求毎にその欲求の強さを表すパラメータを保持している。そして、本能モデル84は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0126】
具体的には、本能モデル84は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール78からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔI[k]、現在のその欲求のパラメータ値をI[k]、その欲求の感度を表す係数kiとして、所定周期で下記数式6を用いて次の周期におけるその欲求のパラメータ値I[k+1]を算出し、この演算結果を現在のその欲求のパラメータ値I[k]と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル84は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
【0127】
【数6】
【0128】
なお、認識結果及び出力セマンティクスコンバータモジュール78からの通知などが各欲求のパラメータ値の変動量△I[k]にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール78からの通知は、「疲れ」のパラメータ値の変動量△I[k]に大きな影響を与えるようになっている。
【0129】
なお、本実施の形態においては、各情動及び各欲求(本能)のパラメータ値がそれぞれ0から100までの範囲で変動するように規制されており、また係数ke、kiの値も各情動及び各欲求毎に個別に設定されている。
【0130】
一方、ミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78は、図16に示すように、上述のようにしてアプリケーション・レイヤ51の行動切換モジュール81から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング(ボールを追いかける)」といった抽象的な行動コマンドを出力系79の対応する信号処理モジュール71〜77に与える。
【0131】
そしてこれら信号処理モジュール71〜77は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動をするために対応するアクチュエータに与えるべきサーボ指令値や、スピーカから出力する音の音声データ及び又はLEDに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト42のバーチャル・ロボット43及び信号処理回路を順次介して対応するアクチュエータ又はスピーカ又はLEDに順次送出する。
【0132】
このようにしてロボット装置1は、上述した制御プログラムに基づいて、自己(内部)及び周囲(外部)の状況や、使用者からの指示及び働きかけに応じた自律的な行動ができる。
【0133】
このような制御プログラムは、ロボット装置が読取可能な形式で記録された記録媒体を介して提供される。制御プログラムを記録する記録媒体としては、磁気読取方式の記録媒体(例えば、磁気テープ、フレキシブルディスク、磁気カード)、光学読取方式の記録媒体(例えば、CD−ROM、MO、CD−R、DVD)等が考えられる。記録媒体には、半導体メモリ(いわゆるメモリカード(矩形型、正方形型など形状は問わない。)、ICカード)等の記憶媒体も含まれる。また、制御プログラムは、いわゆるインターネット等を介して提供されてもよい。
【0134】
これらの制御プログラムは、専用の読込ドライバ装置、又はパーソナルコンピュータ等を介して再生され、有線又は無線接続によってロボット装置1に伝送されて読み込まれる。また、ロボット装置1は、半導体メモリ、又はICカード等の小型化された記憶媒体のドライブ装置を備える場合、これら記憶媒体から制御プログラムを直接読み込むこともできる。
【0135】
本実施の形態においては、頭部ユニットのCCDカメラ(ステレオカメラ510)及び画像処理回路からなるステレオ距離計測装置から信頼度画像を使用して求められた正確な補正距離データが情報処理手段に入力されるため、ロボット装置は、ステレオ距離計測データを用いた環境認識及び物体認識等、ロボットの後段の認識精度を高めることができる。
【0136】
また、上記パラメータは、CCDカメラのパラメータと、ロボット装置のパラメータとを含み、信頼度画像の信頼度に基づいてカメラパラメータ及びロボットパラメータを制御することで、CCD画像の撮像条件及び撮像位置等のカメラパラメータを制御するだけではなく、ロボット装置の頭部ユニット、左右2つの腕部ユニット4R/L及び左右2つの脚部ユニット5R/L等を動作させるロボットパラメータを種々変更することにより、更に信頼度が高い距離画像を得ることができ、ロボット装置の性能が向上する。
【0137】
【発明の効果】
以上詳細に説明したように本発明に係るステレオ距離計測方法は、ステレオ画像を入力するステレオ画像入力工程と、上記ステレオ画像から距離データを算出し該距離データから距離画像を生成する距離画像生成工程と、1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから信頼度画像を生成する信頼度画像生成工程と、上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正工程とを有し、上記距離画像補正工程は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理工程を有するか、又は上記閾値よりも高い信頼度を有する高信頼度領域の高信頼度距離データを使用して上記低信頼度領域の低信頼度距離データを補完する補完処理工程を有するので、輝度のダイナミックレンジが大きく、淡い濃淡が潰れてしまった画像、反射率が高い表面を有して照明の光が反射し、高輝度部分が飽和した画像、照度が低く感度が足りずに黒い部分がある画像、単一輝度及び単一色のテクスチャ、並びにエピポーラインに平行なテクスチャ等、従来のステレオ距離計測方法では信頼度が低く距離情報が得られなかった対象物に対しても信頼度を向上させて正確な距離画像を得ることができる。
【0138】
また、本発明に係るロボット装置は、供給された入力情報に基づいて動作を行う自律型のロボット装置であって、ステレオ画像を入力するステレオ画像入力手段と、上記ステレオ画像から距離データを算出し該距離データから距離画像を生成する距離画像生成手段と、1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから信頼度画像を生成する信頼度画像生成手段と、上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正手段とを有し、上記距離画像補正手段は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理手段を有するか、又は上記閾値よりも高い信頼度を有する高信頼度領域の高信頼度距離データを使用して上記低信頼度領域の低信頼度距離データを補完する補完処理手段を有するので、距離計測の際に、信頼度画像を用いることにより、距離データの精度及び信頼度を高めることができ、これにより、ステレオ距離計測データを使用した環境認識及び物体認識等、ロボット装置の後段の認識精度を飛躍的に高めることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるステレオ距離計測装置を示すブロック図である。
【図2】(a)乃至(e)は、夫々左カメラの入力画像(左カメラ画像)、右カメラの入力画像(右カメラ画像)、距離画像、信頼度画像、及び距離画像を信頼度画像でマスクした後のマスク距離画像を示す図である。
【図3】(a)はテンプレート702を抜き出す基準画像701を示す模式図、(b)はテンプレートとマッチング比較を行う先の画像703を示す模式図、(c)は、テンプレート702の距離数に対するマッチングスコア値を示すグラフ図である。
【図4】(a)乃至(c)は、ダイナミックレンジが広く、高輝度部分が潰れた場合の夫々左カメラ画像800、信頼度画像810及び距離画像820を示す図である。
【図5】(a)乃至(c)はカメラのコントロールパラメータを調節した後の夫々左カメラ画像900、信頼度画像910及び距離画像920を示す図である。
【図6】(a)乃至(c)は、ダイナミックレンジが狭く、低輝度部分が潰れた場合の夫々左カメラ画像1000、信頼度画像1010及び距離画像1020を示す図である。
【図7】信頼度によってパラメータをコントロールした距離データ取得方法を示すフローチャートである。
【図8】パラメータを変化させながら画像を取得し信頼度が高い部分を合成した距離データの取得方法を示すフローチャートである。
【図9】(a)乃至(e)は、処理部590における処理画像を示す図であって、夫々ステレオ画像、信頼度画像、マスク後の距離画像、及び補完後の距離画像を示す図である。
【図10】(a)及び(b)は、別のカメラ位置における信頼度画像を示す図であり、(c)は複数枚の信頼度画像を示す模式図である。
【図11】低信頼度領域における距離データの補完方法を示すフローチャートである。
【図12】本発明の実施の形態におけるロボット装置の外観構成を示す斜視図である。
【図13】同ロボット装置の自由度構成モデルを模式的に示す図である。
【図14】同ロボット装置の回路構成を示すブロック図である。
【図15】同ロボット装置のソフトウェア構成を示すブロック図である。
【図16】同ロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図17】同ロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図18】アプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図19】同ロボット装置の行動決定のための情報となる有限確率オートマトンを説明する図である。
【図20】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
501 ステレオ距離計測装置、510 ステレオカメラ、511 ステレオ画像、520 信頼画像生成計算部、521 信頼画像、530 距離画像生成計算部、531 距離画像、532 マスク距離画像、540 画像マスキング処理部、550 低信頼度領域補完処理部、533 距離画像、560 距離画像使用モジュール
Claims (18)
- 異なるパラメータで撮像された複数のステレオ画像を入力する画像入力工程と、
上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成工程と、
各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成工程と、
上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正工程とを有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理工程を有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する工程と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する工程とを有する
ことを特徴とする距離計測方法。 - 上記信頼度向上処理工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手工程と、この再入手ステレオ画像から距離画像を生成する距離画像再生成工程とを有することを特徴とする請求項1記載の距離計測方法。
- 上記画像入力工程は、ステレオカメラによるステレオ画像撮像工程を有し、
上記画像再入手工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更して再度撮像することにより上記ステレオ画像を再入手することを特徴とする請求項2記載の距離計測方法。 - 上記パラメータは、上記ステレオカメラのカメラパラメータ及び/又はステレオカメラの撮像位置パラメータであることを特徴とすることを特徴とする請求項3記載の距離計測方法。
- 上記信頼度画像における上記低信頼度領域を検出する検出工程と、この検出結果により信頼度を高める方へ上記ステレオ画像のパラメータをコントロールするパラメータ制御工程を有することを特徴とする請求項4記載の距離計測方法。
- 上記画像入力工程は、第1のステレオ画像を入力する工程であり、
上記距離画像生成工程は、上記第1のステレオ画像から第1の距離データを算出し該第1の距離データから第1の距離画像を生成する工程であり、
上記信頼度画像生成工程は、上記第1の距離画像を生成するのに使用した上記第1のステレオ画像の少なくとも1つから第1の信頼度画像を生成する工程であって、
上記距離画像補正工程は、上記第1の信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記低信頼度領域の信頼度を高める方へパラメータを変更した第2のステレオ画像を再入手する画像再入手工程と、この第2のステレオ画像から第2の距離データを算出して第2の距離画像を生成する距離画像再生成工程と、上記第1の距離画像の上記低信頼度領域の上記第1の距離データを上記第2の距離画像の上記低信頼度領域における上記第2の距離データに置換して合成距離画像を生成する距離画像合成工程と
を有することを特徴とする請求項2記載の距離計測方法。 - 上記画像再入手工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更した上記再入手ステレオ画像を上記複数枚のステレオ画像から選択する工程を有することを特徴とすることを特徴とする請求項2記載の距離計測方法。
- 上記パラメータは、ステレオカメラのカメラパラメータ及び/又はステレオカメラの撮像位置パラメータであることを特徴とすることを特徴とする請求項7記載の距離計測方法。
- 上記パラメータは、ステレオカメラのカメラパラメータ及び/又はステレオカメラの撮像位置パラメータであることを特徴とすることを特徴とする請求項1記載の距離計測方法。
- 上記信頼度画像生成工程は、上記閾値をコントロールする閾値制御工程を有する請求項1記載の距離計測方法。
- 異なるパラメータで撮像された視差を有する複数のステレオ画像を入力するステレオ画像入力手段と、
上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成手段と、
各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成手段と、
上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正手段とを有し、
上記距離画像補正手段は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理手段を有し、
上記距離画像補正手段は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する手段と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する手段とを有する
ことを特徴とする距離計測装置。 - 上記信頼度向上処理手段は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手手段と、この再入手ステレオ画像から距離画像を生成する距離画像再生成手段とを有することを特徴とする請求項11記載の距離計測装置。
- 供給された入力情報に基づいて動作を行う自律型のロボット装置であって、
異なるパラメータで撮像された複数のステレオ画像を入力するステレオ画像入力手段と、
上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成手段と、
各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成手段と、
上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正手段とを有し、
上記距離画像補正手段は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理手段を有し、
上記距離画像補正手段は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する手段と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する手段とを有する
ことを特徴とするロボット装置。 - 上記信頼度向上処理手段は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手手段と、この再入手ステレオ画像から距離画像を生成する距離画像再生成手段を有することを特徴とする請求項13記載のロボット装置。
- 所定の動作をコンピュータに実行させるためのプログラムであって、
異なるパラメータで撮像された複数のステレオ画像を入力するステレオ画像入力工程と、
上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成工程と、
各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成工程と、
上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正工程とを有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理工程を有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する工程と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する工程とを有する
ことを特徴とするプログラム。 - 上記信頼度向上処理工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手工程と、この再入手ステレオ画像から距離画像を生成する距離画像再生成工程を有することを特徴とする請求項15記載のプログラム。
- 所定の動作をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
異なるパラメータで撮像された複数のステレオ画像を入力するステレオ画像入力工程と、
上記複数のステレオ画像から距離データを算出し該距離データから複数の距離画像を生成する距離画像生成工程と、
各1つの上記距離画像を生成するのに使用した上記ステレオ画像の少なくとも1つから各信頼度画像を生成する信頼度画像生成工程と、
上記信頼度画像の信頼度に基づいて補正距離画像を生成する距離画像補正工程とを有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が所定の閾値よりも低い低信頼度領域を有するときは、上記信頼度を高める信頼度向上処理工程を有し、
上記距離画像補正工程は、上記信頼度画像の信頼度が上記閾値よりも高い高信頼度領域を合成し該高信頼度領域のみからなる合成信頼度画像を生成する工程と、この合成信頼度画像に基づいて距離画像を合成し補正距離画像を生成する工程とを有する
ことを特徴とするプログラムを記録した記録媒体。 - 上記信頼度向上処理工程は、上記低信頼度領域の信頼度を高める方へパラメータを変更したステレオ画像を再入手する画像再入手工程と、この再入手ステレオ画像から距離画像を生成する距離画像再生成工程を有することを特徴とする請求項17記載の記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002073383A JP3855812B2 (ja) | 2002-03-15 | 2002-03-15 | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002073383A JP3855812B2 (ja) | 2002-03-15 | 2002-03-15 | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003269917A JP2003269917A (ja) | 2003-09-25 |
JP3855812B2 true JP3855812B2 (ja) | 2006-12-13 |
Family
ID=29203060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002073383A Expired - Lifetime JP3855812B2 (ja) | 2002-03-15 | 2002-03-15 | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3855812B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10306132B2 (en) | 2015-05-11 | 2019-05-28 | Canon Kabushiki Kaisha | Distance calculation apparatus, imaging apparatus and distance calculation method that include confidence calculation of distance information |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7653216B2 (en) | 2003-12-23 | 2010-01-26 | Carnegie Mellon University | Polyhedron recognition system |
JP4694993B2 (ja) * | 2006-03-16 | 2011-06-08 | 富士重工業株式会社 | 相関評価システムおよび相関評価方法 |
JP4899151B2 (ja) * | 2006-05-10 | 2012-03-21 | 独立行政法人産業技術総合研究所 | 視差補間処理方法および処理装置 |
JP4775221B2 (ja) * | 2006-10-02 | 2011-09-21 | コニカミノルタホールディングス株式会社 | 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム |
JP5448617B2 (ja) * | 2008-08-19 | 2014-03-19 | パナソニック株式会社 | 距離推定装置、距離推定方法、プログラム、集積回路およびカメラ |
JP5390813B2 (ja) * | 2008-09-02 | 2014-01-15 | 東急建設株式会社 | 空間情報表示装置及び支援装置 |
JP5271723B2 (ja) * | 2009-01-20 | 2013-08-21 | 本田技研工業株式会社 | 撮像制御装置 |
JP5156654B2 (ja) * | 2009-01-20 | 2013-03-06 | 本田技研工業株式会社 | 撮像制御装置 |
CN102472622B (zh) * | 2010-06-17 | 2015-12-02 | 松下电器产业株式会社 | 距离推定装置以及距离推定方法 |
JP5954668B2 (ja) * | 2011-10-11 | 2016-07-20 | パナソニックIpマネジメント株式会社 | 画像処理装置、撮像装置および画像処理方法 |
JP5865078B2 (ja) * | 2011-12-28 | 2016-02-17 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
JP6351238B2 (ja) * | 2013-11-15 | 2018-07-04 | キヤノン株式会社 | 画像処理装置、撮像装置および距離補正方法 |
JP6395429B2 (ja) * | 2014-04-18 | 2018-09-26 | キヤノン株式会社 | 画像処理装置、その制御方法及び記憶媒体 |
JP6453571B2 (ja) * | 2014-07-24 | 2019-01-16 | 株式会社Soken | 立体物認識装置 |
JP5980294B2 (ja) | 2014-10-27 | 2016-08-31 | キヤノン株式会社 | データ処理装置、撮像装置、およびデータ処理方法 |
US9761015B2 (en) * | 2015-04-28 | 2017-09-12 | Mitsubishi Electric Research Laboratories, Inc. | Method for determining dimensions in an indoor scene from a single depth image |
WO2016194177A1 (ja) * | 2015-06-03 | 2016-12-08 | オリンパス株式会社 | 画像処理装置、内視鏡装置及び画像処理方法 |
US10440355B2 (en) * | 2015-11-06 | 2019-10-08 | Facebook Technologies, Llc | Depth mapping with a head mounted display using stereo cameras and structured light |
WO2017159312A1 (ja) * | 2016-03-15 | 2017-09-21 | ソニー株式会社 | 画像処理装置、撮像装置、および画像処理方法、並びにプログラム |
WO2017199285A1 (ja) | 2016-05-16 | 2017-11-23 | オリンパス株式会社 | 画像処理装置及び画像処理方法 |
JP7009091B2 (ja) | 2017-06-20 | 2022-01-25 | キヤノン株式会社 | 距離情報生成装置、撮像装置、距離情報生成方法、およびプログラム |
JP7071088B2 (ja) | 2017-10-24 | 2022-05-18 | キヤノン株式会社 | 距離検出装置、撮像装置、距離検出方法、及びプログラム |
JP6835455B2 (ja) * | 2017-12-25 | 2021-02-24 | Kddi株式会社 | 時系列の奥行き画像におけるデプス値を補正するプログラム、装置及び方法 |
JP2018200722A (ja) * | 2018-08-29 | 2018-12-20 | キヤノン株式会社 | 画像処理装置及びその制御方法、並びにプログラム及び記憶媒体 |
JP7206726B2 (ja) * | 2018-09-14 | 2023-01-18 | 株式会社リコー | 計測装置、計測システムおよび車両 |
JP6808770B2 (ja) * | 2019-03-20 | 2021-01-06 | キヤノン株式会社 | データ処理装置、撮像装置、およびデータ処理方法 |
JP7353924B2 (ja) | 2019-11-08 | 2023-10-02 | キヤノン株式会社 | 画像処理装置、撮像装置、画像処理方法、及びプログラム |
US11427193B2 (en) | 2020-01-22 | 2022-08-30 | Nodar Inc. | Methods and systems for providing depth maps with confidence estimates |
JP7319003B2 (ja) | 2020-01-22 | 2023-08-01 | ノダー インコーポレイテッド | 非剛性ステレオ・ビジョン・カメラ・システム |
KR102668282B1 (ko) * | 2021-01-06 | 2024-05-29 | 노다르 인크. | 깊이 맵에 신뢰도 추정치를 제공하는 방법 및 시스템 |
US11577748B1 (en) | 2021-10-08 | 2023-02-14 | Nodar Inc. | Real-time perception system for small objects at long range for autonomous vehicles |
US11782145B1 (en) | 2022-06-14 | 2023-10-10 | Nodar Inc. | 3D vision system with automatically calibrated stereo vision sensors and LiDAR sensor |
-
2002
- 2002-03-15 JP JP2002073383A patent/JP3855812B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10306132B2 (en) | 2015-05-11 | 2019-05-28 | Canon Kabushiki Kaisha | Distance calculation apparatus, imaging apparatus and distance calculation method that include confidence calculation of distance information |
US10477100B2 (en) | 2015-05-11 | 2019-11-12 | Canon Kabushiki Kaisha | Distance calculation apparatus, imaging apparatus, and distance calculation method that include confidence calculation of distance information |
Also Published As
Publication number | Publication date |
---|---|
JP2003269917A (ja) | 2003-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
JP3714268B2 (ja) | ロボット装置 | |
JP4609584B2 (ja) | ロボット装置、顔認識方法及び顔認識装置 | |
JP3945279B2 (ja) | 障害物認識装置、障害物認識方法、及び障害物認識プログラム並びに移動型ロボット装置 | |
JP4032793B2 (ja) | 充電システム及び充電制御方法、ロボット装置、及び充電制御プログラム及び記録媒体 | |
US7532743B2 (en) | Object detector, object detecting method and robot | |
JP2004298977A (ja) | 行動制御装置、行動制御方法及び行動制御プログラム、並びに移動型ロボット装置 | |
JP4239635B2 (ja) | ロボット装置、その動作制御方法、及びプログラム | |
US8315454B2 (en) | Robot apparatus and method of controlling the behavior thereof | |
JP2003266345A (ja) | 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置 | |
JP2004133637A (ja) | 顔検出装置、顔検出方法及びプログラム、並びにロボット装置 | |
US7133744B2 (en) | Information processing apparatus and method, program storage medium, and program | |
JP2004110802A (ja) | 環境同定装置、環境同定方法、プログラム及び記録媒体、並びにロボット装置 | |
JP4535096B2 (ja) | 平面抽出方法、その装置、そのプログラム、その記録媒体及び撮像装置 | |
JP2003266349A (ja) | 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置 | |
JP2004302644A (ja) | 顔識別装置、顔識別方法、記録媒体、及びロボット装置 | |
JP2004298975A (ja) | ロボット装置、障害物探索方法 | |
JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 | |
JP4281286B2 (ja) | ロボット装置及びその制御方法 | |
JP2003136456A (ja) | ロボット装置、ロボット装置の明るさ検出方法、明るさ検出プログラム及び記録媒体 | |
JP2002326176A (ja) | ロボット装置、並びに、画像記憶方法及び画像記憶装置、並びに、制御プログラム及び記録媒体 | |
JP2003346150A (ja) | 床面認識装置及び床面認識方法並びにロボット装置 | |
JP4379052B2 (ja) | 動体検出装置、動体検出方法、及びロボット装置 | |
JP4539291B2 (ja) | ロボット装置及びその動作制御方法 | |
JP2003266363A (ja) | ロボット装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040805 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060106 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060731 |
|
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: 20060822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060904 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 6 |