JP5480667B2 - 位置姿勢計測装置、位置姿勢計測方法、プログラム - Google Patents

位置姿勢計測装置、位置姿勢計測方法、プログラム Download PDF

Info

Publication number
JP5480667B2
JP5480667B2 JP2010043061A JP2010043061A JP5480667B2 JP 5480667 B2 JP5480667 B2 JP 5480667B2 JP 2010043061 A JP2010043061 A JP 2010043061A JP 2010043061 A JP2010043061 A JP 2010043061A JP 5480667 B2 JP5480667 B2 JP 5480667B2
Authority
JP
Japan
Prior art keywords
region
distance
orientation
area
information indicating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010043061A
Other languages
English (en)
Other versions
JP2011179909A (ja
JP2011179909A5 (ja
Inventor
真和 藤木
祐介 中里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010043061A priority Critical patent/JP5480667B2/ja
Publication of JP2011179909A publication Critical patent/JP2011179909A/ja
Publication of JP2011179909A5 publication Critical patent/JP2011179909A5/ja
Application granted granted Critical
Publication of JP5480667B2 publication Critical patent/JP5480667B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Numerical Control (AREA)

Description

本発明は、3次元形状が既知である対象物体の位置及び姿勢を計測する技術に関する。特に対象物体を撮影した距離画像に基づいて対象物体の位置及び姿勢を算出する位置姿勢計測装置、位置姿勢計測方法、およびプログラムに関する。
近年、ロボット技術の発展とともに、これまで人間が行っていた複雑なタスクをロボットが代わりに行うようになりつつある。複雑なタスクの代表的な例として、工業製品の組み立てが挙げられる。ロボットが組み立て作業を行うためには、ロボットハンドなどのエンドエフェクタによって部品を把持したり、他の部品と嵌合させたりすることが必要となる。そのためには、把持の対象となる部品あるいは嵌合の対象となる部品とロボットとの相対的な位置及び姿勢を計測し、計測結果に基づいてロボットハンドの移動計画を策定して、実際にロボットハンドを駆動するためのアクチュエータを制御する必要がある。
ロボットの位置姿勢計測は、これまでロボットに搭載されたカメラや距離センサを用いて行われており、2次元画像や距離画像を用いる方法が代表的である。特に、オフィスや工場などのシーンや工業製品の部品など、対象が直線や曲線、濃淡変化の少ない面など単調な特徴しか持たない場合には距離画像を用いることが多い。
非特許文献1では、距離画像へのモデルフィッティングによる物体の位置及び姿勢の計測を行う方法が開示されている。この方法では、距離画像を3次元点群データに変換し、点群データに対象物体の3次元形状モデルを当て嵌めることにより物体の位置及び姿勢を計測する。すなわち、位置及び姿勢の概略値をもとに、点群データの各点について3次元形状モデルの近傍の面を探索し、点と面との距離の和を最小化するように位置及び姿勢の最適化を繰り返すことにより位置及び姿勢を算出するものである。
非特許文献2では、時系列で得られる距離画像をもとに、非特許文献1の方法を用いて、フレーム間での物体の位置及び姿勢の変化を推定する手法が開示されている。非特許文献3では、距離画像へのモデルフィッティングによる物体の位置及び姿勢を推定する手法が開示されている。この方法では、距離画像を3次元点群データに変換し、点群データに陰多項式で表現された対象物体の3次元形状モデルを当て嵌めることにより物体の位置及び姿勢を高速に推定する。すなわち、位置及び姿勢の概略値をもとに、点群データの各点について、陰多項式が定義する距離場で近似される点と3次元モデル表面との距離の和を最小化するように位置及び姿勢の最適化を繰り返すことにより位置及び姿勢を算出するものである。
P. J. Besl and N. D. McKay, "A method for registration of 3-D shapes," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.14, no.2, pp.239-256, 1992. D. A. Simon, M. Hebert, and T. Kanade, "Real-time 3-D pose estimation using a high-speed range sensor," Proc. 1994 IEEE International Conference on Robotics and Automation (ICRA '94), pp.2235-2241, 1994. B. Zheng, R. Ishikawa, T. Oishi, J. Takamatsu, K. Ikeuchi, "6-DOF Pose Estimation from Single Ultrasound Image Using 3D IP Models, " Proc. IEEE International Workshop on Object Tracking and Classification Beyond the Visible Spectrum (OTCBVS08), pp.1-8, 2008. M. M. Blane, Z. Lie, H. Civi, D. B. Cooper, "The 3L algorithm for fitting implicit polynomial curves and surfaces to data, " IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.3, pp.298-313, 2000. T. Sahin, M. Unel, "Fitting Globally Stabilized Algebraic Surfaces to Range Data, " Proc. IEEE International Conference on Computer Vision, vol.2, pp.1083-1088, 2005. Z. Zhang, "A flexible new technique for camera calibration," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.11, pp.1330-1334, 2000. X. Jiang and H. Bunke, "Range image segmentation: Adaptive grouping of edges into regions," Proceedings of Asian Conference on Computer Vision 1998 (ACCV '98), pp.299-306, 1998. A. Bab-Hadiashar, N. Gheissari, "Range image segmentation using surface selection criterion," IEEE Transactions on Image Processing, Vol.15, No.7, pp.2006-2018, 2006.
一般に、位置姿勢を推定しようとする対象物体を撮影した距離画像には、対象物体のデータだけではなく、対象物体の周囲や背後に存在する対象物体以外の物体(非対象物体)のデータが混在する。このような距離画像に基づいて対象物体の位置及び姿勢を推定する場合、形状モデル当て嵌めの算出結果は非対象物体の3次元点群データの影響を受ける。このため、距離画像に対象物体のデータのみを含む場合に比べて位置姿勢計測(算出)精度が低下するという問題がある。この問題に対処する方法として、前述のロバスト推定を用いることができる。対象物体に比べ、対象物体以外の物体(非対象物体)はモデルとの対応間距離が大きくなる傾向があるので、ロバスト推定を適用すると、最適化計算に対する非対象物体のデータによる影響が低下するためである。
ところが、前述したような位置姿勢計測(算出)方法では、処理対象とする3次元点群の数が多くなるほど、処理負荷が増大し、かつメモリ消費量が増大する。従って、物体の位置姿勢を推定する際は、処理対象の3次元点群を対象物体のみに限定するのが理想的である。しかしながら、従来のロバスト推定を用いた方法では、本来は不必要な非対象物体のデータをモデル当て嵌めの処理から除外していない。すなわち、従来の方法では、処理速度の低下・メモリ消費量の増大という課題があった。
本発明は、対象物体と非対象物体の像を含む距離画像データを入力データとして対象物体の位置及び姿勢を推定する処理の高速化、及びメモリ消費量を軽減した位置姿勢計測技術の提供を目的とする。
本発明に係る位置姿勢計測装置は、撮像手段により撮像された対象物体の距離画像を取得する取得手段と、
取得された前記距離画像において、物体領域設定する設定手段と、
設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定手段と、
前記推定手段によって推定された前記位置及び姿勢に基づいて、前記物体モデルと前記3次元点群との距離を示す情報を導出し、該導出された距離を示す情報を用いて、前記物体領域の設定を更新する更新手段と、
前記更新手段による前記物体領域の設定の更新に従い、前記推定手段に、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定させる制御手段と
を備えることを特徴とする。
本発明によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制した位置姿勢計測技術の提供が可能になる。
本発明の実施形態にかかる位置姿勢計測装置のハードウェア構成を説明する図。 第1実施形態にかかる位置姿勢計測方法の処理を説明する図。 第1実施形態における距離画像の領域分割工程の処理を説明する図。 第1実施形態におけるモデル当て嵌め工程の処理を説明する図。 第1実施形態における物体領域更新工程の処理を説明する図。 複数の物体が撮影された距離画像から1つの物体の位置姿勢の推定を例示的に説明する図。 第2実施形態にかかる位置姿勢計測方法の処理の流れを説明する図。 第2実施形態にかかる物体領域更新処理の流れを説明する図。
(第1実施形態)
本実施形態では、山積み状態になっている同一形状の物体群から、ロボットハンドで1個ずつ物体を把持して取り上げるロボットの動作における物体の位置姿勢計測を想定する。そのために、物体群の上方から距離画像を撮影する。撮影した距離画像には複数の物体までの距離値が記録されているが、その中から一番上方にある物体が占める領域を検出しつつ、その物体の位置姿勢を計測する。
本実施形態における処理の概略は以下のようになる。まず、距離画像を同一の面に属すると推定される部分的な領域に分割する。分割された領域のうち、距離値が最小の点を含む領域、すなわち最上部にある領域から開始して、把持対象とする物体に属すると推定される領域を追加しながら物体の形状モデルを当て嵌め、対象物体の位置姿勢を推定する。このとき、追加する領域はモデルに当て嵌めたときの誤差が小さくなるように選択する。この選択方法により、選択された領域群の中に複数の物体のデータ(非対象物体のデータ)が含まれる危険性を軽減することができる。
以下の説明において、「部分領域」とは、距離画像を同一の面に属すると推定される領域に分割した各々の領域をいう。また、「物体領域」とは、距離画像上で対象物体に属すると推定された領域で、少なくとも1つ以上の部分領域から成る領域をいう。
図1の参照により、本発明の実施形態にかかる位置姿勢計測装置のハードウェア構成を説明する。CPU101は、装置全体の動作を制御する。メモリ102は、CPU101の動作に用いるプログラムやデータを格納する。バス103は、各構成モジュール間のデータ転送を司る。バス103と各種装置とはインタフェース104に接続されている。外部記憶装置105はCPU101に読み込むプログラムやデータを格納する。キーボード106およびマウス107はプログラムを起動したり、プログラムの動作を指定したりするための入力装置として機能する。表示部108はプロセスの動作結果を表示するための表示部である。データ入出力部109は外部装置との間でデータの送受信を行なうことが可能である。距離画像計測装置はデータ入出力部109を介して位置姿勢計測装置に接続されている。
図2の参照により第1実施形態にかかる位置姿勢計測方法の処理の流れを説明する。本処理は、CPU101の全体的な制御の下に実行される。ステップS201において、処理に用いるデータの初期設定を行う。具体的には、外部記憶装置105から形状モデルデータをメモリ102にロードする。また、距離画像計測装置の撮像部のカメラパラメータ(主点位置、焦点距離、画像歪み係数)、及び距離画像の画素値と距離値の変換比率を、データ入出力部109に接続された不図示の距離画像計測装置から入力する。
物体の形状モデルは陰多項式モデルであり、(数1)に示す式で定義される。ここで、x=(x、y、z)が3次元空間中の点の座標、n が陰多項式の次数である。(数1)の式が「0」になる座標(x、y、z)が、陰多項式モデルが表す物体の表面を表す。(数1)の式が「0」より大きい値になる座標が対象物体の外部を表す。(数1)の式が「0」より小さい値になる座標が対象物体の内部を表す。
Figure 0005480667
この陰多項式モデルは対象物体のCADモデルやレンジファインダ等で計測した3次元点群から、非特許文献4や非特許文献5で開示されている方法を用いてあらかじめ生成しておく。非特許文献4では、陰多項式で表現された3次元モデルを構築する手法が開示されている。陰多項式モデルは対象となる3次元形状のみを適切に表現するように構築することが難しい。この方法では、対象形状の表面上の点、対象形状の表面からある距離cだけ外側の点、対象形状の表面から距離cだけ内側の点の3組の点群と、対応する陰多項式の値の2乗が最小となるよう陰多項式の係数を決定する。非特許文献5では、非特許文献4で開示されている方法にリッジ回帰を用いることで、複雑な形状の陰多項式をより安定して求める方法が開示されている。
カメラパラメータは、例えば、非特許文献6で開示される方法により事前に校正しておく。ステップS201で入力するカメラパラメータを用いることによって,距離画像の各画素の2次元座標および画素値から、その画素に対応する3次元空間中の点の撮像部座標系における3次元座標を算出することができる。
ステップS202では、データ入出力部109に接続された不図示の距離画像計測装置によって計測された距離画像データ(以下、単に「距離画像」ともいう)を取得し、メモリ102に格納する。なお、距離画像を撮影する手段は任意のものを用いることができるが、例えば、光切断法やステレオ法により撮影することが可能である。
次のステップS203では,距離画像を部分領域に分割する。本ステップの処理内容の詳細は後述する。分割結果は正の整数値が記録された2次元のマップ(以下「部分領域マップ」と呼ぶ)の形式でメモリ102に格納される。部分領域マップの大きさは距離画像の縦・横の画素数に等しい。部分領域マップに記録された正の整数値は同一の部分領域に対しては同一の値であり、異なる部分領域は異なる値を持つ。すなわち、部分領域マップに記録されているのは、距離画像の各画素が属する部分領域の識別番号ということになる。したがって、部分領域マップの値を参照することにより、参照したマップ上の位置に相当する距離画像上の画素がいずれの部分領域に属するかを一意に決定することができる。
ステップS204では、先のステップS203で抽出された部分領域群のうち、距離値が最小の画素を共通に含む部分領域を探索し、物体領域(初期物体領域)として設定する。このことにより,最も上方(距離画像撮影装置に近い側)に存在する部分領域が物体領域となる。以降、本ステップで物体領域に設定した部分領域を含む物体を位置姿勢の計測対象とする。物体領域のデータは,その物体領域に属する部分領域の識別番号のリストとしてメモリ102に記録される。本ステップの処理完了後、物体領域データは少なくとも1つの部分領域の識別番号を含むことになる。
ステップS205では,物体の形状を表す陰多項式モデルを物体領域内の距離計測点群に当て嵌めることによって、計測対象物体の位置姿勢を推定する。本ステップについては、詳細を後述する。
ステップS206では、設定済みの物体領域に新たに部分領域を加えるか否かを判定して、判定結果が真なら物体領域を更新する。本ステップの処理の詳細についても後述する。
ステップS207では、先のステップS206において物体領域データが更新されたか否かを判定し、更新があれば(S207−Yes)、ステップS205に処理を戻して、対象物体の位置姿勢を再度推定する。物体領域データの更新が無ければ(S207−No)、物体領域が確定し、かつ対象物体の位置姿勢推定も完了したとして処理全体を終了する。
(距離画像の領域分割工程の処理)
距離画像の領域分割工程(ステップS203)の詳細を図3の参照により説明する。本工程は、非特許文献7で開示された方法に基づいて、距離画像を後述するエッジによって囲まれた閉領域ごとに分割する。ここで検出された領域を部分領域とする。
処理を開始すると、ステップS301でエッジを抽出する。ここで、「エッジ」とは距離値が不連続に変化する「ジャンプエッジ」、または物体表面の法線方向が不連続に変化する「クリーズエッジ」である。具体的には、まず距離画像上の直線(「スキャンライン」と呼ぶ)に相当する被写体上の曲線を複数の2次曲線セグメントに分割する。そして、曲線セグメントの各境界点に関して「エッジの強さ」(ジャンプエッジらしさを表す奥行き値の不連続度,クリーズエッジらしさを表すセグメントの法線方向の不連続度)を算出し、エッジの強さが閾値以上の点をエッジとして抽出する。なお、エッジの方向は様々であるので、スキャンラインは距離画像の縦方向・横方向・斜め方向(45°、135°)の4方向をとり、4方向でのエッジの強さが最も高い接続点をエッジとする。以上のようにして、距離画像上のエッジ画素の位置を表したエッジマップを作成し、メモリ102に記録する。
次に、ステップS302では、先のステップS301で作成したエッジマップをラベリングする。その結果、距離画像は連結したエッジ画素によって区切られる閉領域群に分割される。分割結果は、距離画像と同じサイズのラベル画像としてメモリ102に記録する。なお、ラベルの値は閉領域ごとに一意に設定される。続くステップS303では、先のステップS302で検出された閉領域の中から面積T(「T」は部分領域の面積閾値)以上の領域を選択し、選択された閉領域のラベル値のリスト(以下、このリストを「領域リスト」と呼ぶ)としてメモリ102に記録する。
ステップS304では、領域リストに登録された閉領域の数が「0」であるか否かを判定する。閉領域の数が「0」ならば(S304−Yes)、処理はステップS312に進められる。一方,閉領域の数が「0」でなければ(S304−No)、処理はステップS305に進められる。ステップS305では、領域リストに登録された閉領域群から未処理の閉領域Rを削除し、続いて閉領域Rに3次元平面または3次元曲面を当て嵌める(ステップS306)。
ステップS307では、ステップS306にて平面または曲面を当て嵌めた際の当て嵌め誤差が所定の閾値未満であるか否かを判定する。閾値未満であれば(S307−Yes)、閉領域Rには複数の面が含まれないと推定されるので、部分領域として登録し(S308)、ステップS312に処理を進める。一方、閾値以上と判定されれば(S307−No)、処理はステップS309に進められる。なお、「当て嵌め誤差」とは、閉領域Rの各画素に相当する3次元点と、当て嵌めた平面または曲面上の距離が最小となる最近傍点との間の距離の2乗和を領域Rの全画素について平均をとったものである。ステップS307において、当て嵌め誤差が閾値以上と判定された場合、閉領域Rに複数の面が含まれる可能性がある。これは、距離画像に含まれるノイズなどの影響により、閉領域内の複数の面の境界に存在するエッジが途切れているためと推定される。このように途切れたエッジを接続して、複数の面を区分するため、ステップS309では、エッジマップに膨張処理を施す。続いて、ステップS310でエッジマップをラベリングし、ステップS311にて閉領域の候補を抽出する。ステップS310およびS311の処理内容は,それぞれステップS302およびS303と同様である。
一方、ステップS307で当て嵌め誤差が閾値未満と判定された場合、閉領域Rには単一の面のみ含まれると推定される。そこで、ステップS308では、閉領域Rを部分領域として登録する。最後に、ステップS312にて、エッジ部の画素など閉領域として未登録の画素を周囲の閉領域に統合する。このステップでも平面あるいは曲面を当て嵌めて、当て嵌め誤差が閾値未満なら統合する。
(モデル当て嵌め工程の処理)
次に、モデル当て嵌め工程(ステップS205)の詳細を図4の参照により説明する。本工程では、計測対象物体の位置及び姿勢の概略値を反復演算により繰り返し補正することにより位置及び姿勢を算出する。ステップS401では、データ入出力部109に接続された不図示の距離画像計測装置に対する対象物体の位置及び姿勢の概略値を推定する。この処理は物体領域の距離画像データを入力として、特開平01−009307号公報に開示される物体認識的方法により実現することが可能である。ただし、対象物体の位置姿勢の概略値を求める方法は、これに限るものではない。例えば、モデル当て嵌め工程を一度以上経過していれば、その工程で算出した対象物体の位置姿勢を表す値をメモリ102に記憶しておき、その値を次回のモデル当て嵌め工程において対象物体の概略位置姿勢の値として使うことが可能である。あるいは、過去の計測値から対象物体の運動の速度や角速度を線形フィルタやカルマンフィルタなど時系列フィルタリング処理により推定し、推定された速度や角速度によって現在の時刻における対象物体の位置及び姿勢を予測したものを用いてもよい。また、他のセンサによる物体の位置及び姿勢の計測が可能である場合には、センサによる出力値を位置及び姿勢の概略値として用いてもよい。センサとしては、例えば、トランスミッタが発する磁界を物体に装着するレシーバで検出することにより位置及び姿勢を計測する磁気式センサであってもよい。また、対象物体上に配置されたマーカをシーンに固定されたカメラによって撮影することにより位置及び姿勢を計測する光学式センサであってもよい。その他、6自由度の位置及び姿勢を計測するセンサであればいかなるセンサであって使用することが可能である。また、対象物体の置かれている、おおよその位置や姿勢が予めわかっている場合には、その値を概略値として用いてもよい。
ステップS402では、対象物体の位置及び姿勢の概略値を用いて、物体領域内の各画素に対応する3次元空間中の座標を距離画像計測装置の撮像部座標系から物体モデルの座標系に変換する。なお、以下の説明では、本ステップで座標変換の結果、座標を算出した点を「物体領域の3次元点」と呼ぶことにする。
ステップS403では、陰多項式モデルから構築される距離場と物体領域の3次元点群の各座標に基づいて、3次元点群と対象物体をモデル化した物体モデルの表面との距離の総和を最小にする位置および姿勢を求める。具体的には、(数2)に示すエネルギー関数が最小化されるように位置及び姿勢を最適化する。
Figure 0005480667
ここでΩは物体領域の3次元点群であり、x∈Ωである。また,distは陰多項式モデルから計算される距離であり、モデル表面上では「0」、内部では負の値、外部では正の値をとり、(数3)のように定義される。
Figure 0005480667
位置及び姿勢の最適化は具体的には、最急降下法に基づき(数4)の式による勾配から3次元点群座標Xk+1を求める(数6)。ここで、Xは、X∈RN×3であり、N個の物体領域の3次元点の座標を表す。
Figure 0005480667
元の3次元点群座標Xkと、求められたXk+1とから(数7)に示す行列を作成し、A=USVTのように特異値分解を行い、位置及び姿勢の概略値を更新する。ここでXはXの平均を示し、tは対象物体の位置、Rは姿勢を表す行列である。
Figure 0005480667
最後にステップS404では、収束判定を行い、収束していれば(S404−Yes)、モデル当て嵌め処理全体を終了し、収束していなければステップS402に処理を戻し、同様の処理を繰り返す。収束判定では、(数4)の式の値がほぼ0である場合や、位置及び姿勢に関する更新前後での誤差ベクトルの二乗和の差がほぼ0である場合に収束したと判定する。
なお、上記の説明ではエネルギー最適化処理に最急降下法を用いているが、これに限るものではない。より収束の速いGauss-Newton法やLevenberg-Marquardt法によって収束判定を行ってもよい。また、共役勾配法など、他の非線型最適化計算手法を収束判定に用いてもよい。
(物体領域更新工程の処理)
物体領域更新工程(ステップS206)の詳細を図5の参照により説明する。まず、ステップS501では、物体領域の3次元点群について(数10)で定義される物体の陰多項式モデルとの平均距離を算出する。ただし、ここではNは物体領域の3次元点の数であり、Φは物体領域の3次元点群である。
Figure 0005480667
ただし、Nは算出の対象とする距離画像上の領域内の3次元点数で、eiiは以下の(数11)により求められる。
Figure 0005480667
ここでΦは算出の対象とする距離画像上の領域内の3次元点群である。
次に、ステップS502では、物体領域に含まれない部分領域の中から、物体領域に追加する部分領域の候補Cを選ぶ。具体的には、物体領域及び物体領域に含まれない各部分領域のそれぞれに属する画素群に対応する3次元点群の重心位置を算出する。そして、物体領域に関する重心位置と各部分領域に関する重心位置との距離値を算出し、距離値の小さい順にn個の部分領域を物体領域に追加する部分領域の候補Cとして選択する。なお、nは1以上の正の整数である。
ステップS503では、候補Cの中から未処理の部分領域を1つ選択する。ここで選択した部分領域をaとする。続くステップS504では、部分領域aを物体領域に追加するか否か判定するための評価値を算出する。具体的には、部分領域aに関して、(数10)で表される物体を表す陰多項式モデルと部分領域との平均距離を算出する。ただし、ここで、Nは部分領域a内の3次元点の数、Φは部分領域a内の3次元点群である。
ステップS505では、ステップS501で求めた平均距離に所定比率(>1.0)をかけたものと、ステップS504で求めた平均距離とを比較する。後者が前者未満であれば(S505−Yes)、ステップS506に処理は進められる。一方、後者が前者以上と判定されれば(S505−No)、処理はステップS507に進められる。
ステップS506では、部分領域aを物体領域に追加する。すなわち、物体領域に含まれる部分領域群を表す識別番号のリストに、部分領域aの識別番号を加える。ステップS507では、追加する部分領域候補Cに含まれる部分領域すべてを処理したか否か判定し、処理済であれば(S507−Yes)、物体領域更新処理を終了する。一方、未処理の部分領域があれば(S507−No)、ステップS503に処理は戻され、同様の処理が繰り返される。このようにして、すべての追加候補の部分領域に関して物体領域に追加するか否かを判定する処理を繰り返して、物体領域を更新する。
図6の参照により、複数の物体が撮影された距離画像から1つの物体の位置姿勢の推定を例示的に説明する。ただし、物体領域に追加する物体領域の候補の数nは1とする。図6(a)は距離画像を撮影する対象物体の像であり、同一形状の物体が2つ含まれている。これらの物体を撮影した距離画像を部分領域に分割した様子が図6(b)である。異なる領域を区別して表示するため、領域ごとに塗りのパターンが異なるように表してある。図6(b)に表示した番号は各部分領域に設定された識別番号である。このうち、(6)番は背景領域に相当する。図6(c)から(e)は物体領域を更新する各ステップを表しており、ハッチングを付した部分が物体領域に相当する。図6(c)は、初期の物体領域(ステップS204の終了後の状態)が示されており、距離画像撮影装置から見て最も手前側の測定点を含む部分領域(1)が物体領域として抽出されている。次に物体領域の更新工程(ステップS206)を経ると、物体領域は図6(d)に示すようになり、初期の物体領域に部分領域(2)が加えられる。同様に、2度目の物体領域の更新工程(ステップS206)を経ると、図6(e)のように部分領域(3)がさらに加えられ、物体領域が3つの部分領域(部分領域(1)〜(3))によって構成される。図6(e)の状態から、さらに物体領域の更新工程(ステップS206)に進むと、部分領域(4)および(5)を物体領域に加えるか否かを判定する。しかし、部分領域(4)および(5)は部分領域(1)から部分領域(3)が属する物体とは異なる物体上の領域なので、ステップS504で算出するモデルとの平均距離が比較的大きな値をとる。そのため、部分領域(4)および(5)は物体領域に加えないように判定される。以上の様な処理経過を経て、最終的には部分領域(1)から部分領域(3)を含む物体が距離画像から抽出され、その位置姿勢を求めることができる。
本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。
(変形例1−1−1)
本発明の実施形態は上記に限らず様々な変形例が存在する。第1実施形態ではステップS206において、物体領域内の3次元点群の重心近傍に重心を持つ部分領域を、物体領域に追加する領域の候補として選択している。しかし、追加する部分領域候補の選択方法はこれに限るものではない。例えば、ステップS204で設定する初期物体領域内の3次元点群の重心近傍に重心を持つ部分領域を選択してもよい。あるいは、3次元座標の重心ではなく、距離画像上における2次元座標の重心が近い部分領域を選択してもよい。
(変形例1−1−2)
第1実施形態では、物体領域に近接する度合いが高い部分領域を物体領域に追加する候補として選定している。しかし、追加候補の部分領域の選定方法はこれに限らない。例えば、面積、すなわち領域に属する画素数が大きい部分領域を候補として選択してもよい。これは、面積の大きい領域ほど距離画像の計測ノイズなどのランダムな誤差の影響を受けにくいため、形状モデルとの距離の算出や物体領域更新後のモデル当て嵌めを高精度に行うことができるからである。
(変形例1−1−3)
他の部分領域の候補選定方法としては、例えば、距離画像上で対象物体が占める領域の情報を利用するものが挙げられる。具体的には、モデル当て嵌め工程にて算出された対象物体の位置及び姿勢に基づいて、形状モデルを距離画像上に投影して、投影像が存在する領域を対象物体が占める領域とする。そして、各部分領域と対象物体が占める領域との重複率(すなわち両領域が重複する画素の数を各部分領域に属する画素の数で割った値)が高い順に,物体領域に追加する部分領域の候補として選定することも可能である。
(変形例1−1−4)
さらには、追加候補の部分領域を選定する基準は1つである必然性はなく、複数の基準を組み合わせてもよい。例えば、変形例1−1から変形例1−3で説明した物体領域への近接度、面積、距離画像上の対象物体領域との重複率の3種類の評価値に重みをかけて加算した値に基づいて候補部分領域を選定することも可能である。
(変形例1−2−1)
物体領域の更新工程(図5)では、物体領域と部分領域に関する形状モデルとの平均距離の大小を比較することによって部分領域を物体領域に追加する可否を判定している。しかし、追加の可否の判定方法はこれに限らず、例えば、平均距離が小さい部分領域が優先的に追加されれば、他の方法を適用することができる。例えば、追加候補の部分領域群のうち、平均距離が最小の部分領域を物体領域に追加してもよい。
(変形例1−2−2)
部分領域の追加可否を判定する基準は1つである必然性はなく、複数の基準を組み合わせてもよい。例えば、変形例1−1から変形例1−3で説明した物体領域への近接度、面積、距離画像上の対象物体領域との重複率、及び形状モデルとの平均距離の4種類の評価値に重みをかけて加算した値に基づいて追加可否を判定することも可能である。
(変形例1−2−3)
また、部分領域は1つずつ追加する必然性はなく、複数の部分領域を同時に物体領域に追加してもよい。その場合、追加する部分領域の候補群から、評価値(例えば部分領域の3次元点群とモデルとの平均距離)が上位複数個の部分領域を物体領域に追加すべく選択することも可能である。
(変形例1−3−1)
第1実施形態では、距離画像を部分領域に分割するため、非特許文献7の方法を用いた。しかし、部分領域の生成方法はこれに限るものでなく,例えば,非特許文献8に基づく方法でもよい。この方法は、所定の評価基準に基づいて距離画像の部分領域を近似するパラメトリックな面の種類(種類ごとに面の数式表現が異なる)を選択し、選択された種類の面で距離画像の表す3次元形状を近似するものである。本手法によれば、近似誤差の少ない領域を一続きの面として抽出することができる。
(変形例1−3−2)
距離データに応じて距離画像を分割するのではなく、所定の分割方法で分割してもよい。例えば、1画素ごとに分割してもよいし、あるいは距離画像の縦横をそれぞれ10画素ごとに格子状に区切るなどしてもよい。このように所定の分割方法を用いる場合、距離画像の領域分割工程(ステップS203)を省略することが可能になる。
(変形例1−4−1)
第1実施形態では、初期の物体領域に含まれる部分領域として、最も距離値が小さい画素を含む部分領域を選択している。しかし、初期物体領域を設定する方法はこれに限るものではなく、撮像装置に最も近いと見なされる、最も上方に配置されている物体上の領域である可能性のある部分領域を選択すればよい。例えば、距離値の平均が最小の部分領域を選択してもよいし、距離値が小さい順に上位m個(mは2以上の正の整数)の画素の平均距離値が最小の部分領域を選択することも可能である。
(変形例1−4−2)
初期の物体領域として距離値が小さい部分領域を優先するのは、物体を上方から撮像し、上方からロボットハンドで把持することを想定しているためである。撮像条件が異なれば、その撮像条件に適合した初期物体領域の設定方法を採用することが可能である。例えば、特定色の物体の位置姿勢を推定するのであれば、距離画像のほかに、異なる第2の撮像装置を用いてカラー画像を撮像する。そして、当該の特定色に最も色が合致するカラー画像上の領域に対応する距離画像上の領域を探索し、その距離画像上の領域を含む部分領域を初期物体領域とすればよい。
(変形例1−4−3)
対象物体の概略の位置及び姿勢が予め分かっていれば、各部分領域について3次元点群の座標と(数10)で表される平均距離を算出し、平均距離が最小の部分領域を初期物体領域としてもよい。
(変形例1−4−4)
変形1−4―3と同様に対象物体の概略の位置及び姿勢が予め分かっていれば、距離画像上で対象物体が占める領域の情報を利用して初期物体領域を決定することができる。具体的には、対象物体の位置及び姿勢の概略値に基づいて、形状モデルを距離画像上に投影して、投影像が存在する領域を対象物体が占める領域とする。そして,各部分領域と対象物体が占める領域との重複率(両領域が重複する画素の数を各部分領域に属する画素の数で割った値)が最も高い部分領域を初期の物体領域として選択することも可能である。
(変形例1−4−5)
また、初期の物体領域に含まれる部分領域の数は1つに限るものではなく、複数でもよい。
例えば、距離値の平均が小さい順(変形例1−4−1)、特定色との合致度が高い順(変形例1−4−2)に所定の数の部分領域を物体領域として選択することも可能である。また、平均距離が小さい順(変形例1−4―3)、重複率の高い順(変形例1−4−4)に所定の数の部分領域を物体領域として選択することも可能である。
(変形例1−5)
第1実施形態では(数10)で定義される陰多項式モデルと3次元点群との平均距離を、部分領域を追加するか否か判定するなどの用途で評価値として用いている。しかしながら、判定基準とする評価値はこれに限るものではなく、物体のモデルと計測点群との乖離の度合いを示す値であればよい。例えば、平均距離に替えて、(数12),(数13)で表される評価値を用いてもよい.
Figure 0005480667
ただし、Nは評価値の算出対象とする距離画像上の領域内の3次元点の数であり、Φは当該領域内の3次元点群である。
Figure 0005480667
ただし、Nは評価値の算出対象とする距離画像上の領域内の3次元点の数であり、Φは当該領域内の3次元点群である。これらの評価値DRMS(数12)、Daverage(数13)は形状モデルと3次元点群との面の位置の一致度合いを表すものである。
以上の変形例によっても、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。
(第2実施形態)
第1実施形態では、ある部分領域を物体領域に追加する前に、その部分領域が対象物体に相当する領域か否かを判定し、判定結果が真ならばその部分領域を以後一貫して物体領域の一部として処理する構成を説明した。本実施形態では、物体領域に追加済みのある部分領域が非対象物体に相当する部分領域であるか否か判定し、判定結果が真ならば、その部分領域を物体領域から削除する構成を説明する。
図7の参照により、第2実施形態にかかる位置姿勢計測方法の処理の流れを説明する。本処理は、CPU101の全体的な制御の下に実行される。ステップS701からS704の処理は,それぞれステップS201からステップS204と同じ内容である。
ステップS705はステップS205と同様であるが、物体の位置姿勢を算出した段階で、(数10)で表される計測点と物体モデルとの平均距離を物体領域に関して算出し、メモリ102に格納する。この際、前回の物体モデル当て嵌め処理において算出され、メモリ102に格納されていた平均距離データを上書きせずに、メモリ102内の別の記憶領域にコピーしておく。
ステップS706では、物体領域に含まれる部分領域を更新する。本ステップの処理においては、物体領域に部分領域が追加されるか、あるいは追加済みの部分領域が物体領域から除外される。本ステップについては後に詳述する。
ステップS707では、ステップS706において物体領域から部分領域が除外されたか否か判定する。除外されたと判定した場合(S707−Yes)、物体の位置姿勢推定処理全体を終了する。ここで、処理を終了するのは、対象物体に相当する部分領域はすべて物体領域として選択済みであり、直近に追加された部分領域が非対象物体に相当すると想定されるからである。
一方、ステップS707において、部分領域が除外されていないと判定した場合(S707−No)、処理はステップS705に戻され、物体領域の3次元点群に物体の形状モデルを当て嵌めることによって対象物体の位置姿勢を更新する。
図8の参照により、第2実施形態にかかる物体領域更新処理の流れを説明する。処理を開始すると、物体領域の3次元点群と物体モデルとの平均距離について、直近および前回の物体モデル当て嵌め工程(ステップS705)で算出された値を比較し、前回よりも平均距離が増加しているか否かの増加判定を行う。距離が増加していれば(S801−Yes)、ステップS802に処理は進められる。一方、距離が増加していないと判定された場合(S801−No)、処理はステップS803に進められる。
ステップS802では、直近に物体領域に追加した部分領域を物体領域から取り除く。すなわち、物体領域に含まれる部分領域群を表す識別番号のリストから、取り除く部分領域の識別番号を削除する。
ステップS803では、物体領域に含まれない部分領域の中から選んだ部分領域を物体領域に追加する。この処理は図5のフローチャートに示す流れと同じである。
以上に説明した処理を行うことにより、物体領域に追加すべく選択した部分領域の妥当性、すなわち部分領域が対象物体に相当する度合いを、物体モデルを当て嵌めたときの当て嵌め誤差で確かめることができる。その結果、第1実施形態のように部分領域ごとの評価値で追加する部分領域を選択する構成に比べ、誤って非対象物体に相当する部分領域を物体領域として選択する危険性が軽減され、より正確に物体領域を決定することが可能である。
なお、上記の説明では、追加済みの部分領域を削除するか否かの判定基準として(数10)で表される平均距離を用いる例を説明しているがこの例に限定されるものではない。例えば、物体モデルの当て嵌め誤差に比例して増加する値であり、かつ物体領域のサイズに依存しないように規格化された値ならば任意の値を用いることができる。例えば、ステップS403(図4)の処理における位置姿勢更新後の誤差ベクトルの大きさを、物体領域に含まれる画素で平均化した値を基準値としてもよい。
また、上記の説明では部分領域を物体領域から削除した場合に処理全体を終了しているが、さらに物体領域の更新を継続してもよい。この場合、除外した部分領域が次回の物体領域更新工程で再び物体領域に加えられて無限ループに陥らないように、除外された部分領域は物体領域として追加する候補から除外してもよい。あるいは物体領域に追加する部分領域の候補の中で選択順位を下げる(例えば最下位に設定する)という処理を追加してもよい。
本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。
(変形例2−1)
本発明の実施形態は上記に限らず様々な変形例が存在する。第2実施形態では、部分領域を物体領域から除外するか否か判定する基準を平均距離の増減としている。しかし、判定基準はこれに限らず、部分領域を追加する前後でのモデル当て嵌めの精度の変化が評価できればよい。例えば、直近に物体領域に追加した部分領域に関する平均距離(A)と、物体領域に関する平均距離(B)とを比較し、前者(A)が後者(B)以上であれば直近に追加した部分領域を削除すると判定することも可能である。逆に、前者(A)が後者(B)未満であれば部分領域を削除しないようにする。
(変形例2−2)
あるいは、物体領域に関する平均距離に替えて、物体領域から直近に追加した部分領域を除外した領域に関する平均距離を用いてもよい。
(変形例2−3)
さらに、平均距離に替えて、第1実施形態の変形例1−4−1〜1−4−5で説明した評価値を用いて部分領域を除外するか否か判定してもよい。
(第3実施形態)
前述の第1及び第2実施形態では、陰多項式で表現した物体の形状モデルを物体領域の3次元点群に当て嵌めることによって、物体の位置姿勢を推定している。しかしながら、位置姿勢の推定方法はこれに限るものではなく、物体の形状モデルおよび物体領域の3次元点群の情報に基づくものであれば、任意の方法を用いることが出来る.
本実施形態では、形状モデルを、三角形の平面パッチ群から構成されるパッチモデルとし、このモデルと物体領域の3次元点群との間で対応点の対を求め、対応点対間の距離の和が最小になるように物体の位置姿勢を最適化する。
本実施形態の処理全体の流れは図2のフローチャートと同様である。ただし、ステップS201で外部記憶装置105から入力する形状モデルデータは、三角形パッチの各頂点の識別番号と座標、各三角形パッチの識別番号とそのパッチを構成する頂点の識別番号から構成されるものとする。
また、位置姿勢の算出工程(ステップS403)では、物体領域の3次元点群および形状モデル上の点のうち、距離が最小となる点の組からなる最近傍点対を求める。求められた最近傍点対はメモリ102に最近傍点対のリストとして記憶される。
具体的には、まず物体領域の3次元点群から最近傍点対の候補となるサンプル点を選択する。サンプル点は、距離画像上の物体領域内の1画素ごとに選択しても良いし、所定数の画素(例えば、5画素など、複数が素)ごとに画像領域を間引きして選択しても良い。次に、サンプル点pに対応する形状モデル上の最近傍点を求める。サンプル点pと、3頂点r1 , r2 , r3 からなる三角形パッチtとの間の最小距離dは(数14)のように表される。
Figure 0005480667
ただし、u∈[0,1], v∈ [0,1], w∈[0,1]である。形状モデルTがN個の三角形パッチt1,・・・tNから構成されるとすると、サンプル点pと形状モデルT上の最近傍点との間の距離は(数15)のように表される。
Figure 0005480667
すなわちサンプル点の最近傍点を求めるには、サンプル点と各三角形パッチとの最小距離および最近傍点の座標を表す係数の組(u,v,w)を算出する。そして、すべての三角形パッチの中でサンプル点との最小距離が最小となる三角形パッチと係数の組(u,v,w)を探索する。以上説明した最近傍点対の探索処理の結果は、サンプル点の3次元座標,形状モデル上の最近傍点が存在する三角形パッチの識別番号、最近傍点の座標を表す係数(u,v,w)の組を全てのサンプル点に対して羅列したリストとしてメモリ102に記録される。
次に、最近傍点対リストに登録された最近傍点対間の距離の総和が最小になるようにするモデルの位置姿勢を算出し、算出結果を対象物体の位置姿勢とする。距離画像計測装置の撮像部の座標系における3次元座標は、対象物体の位置姿勢sによって、対象物体の座標系における3次元座標(x、y、z)に変換することができる。ここで、計測対象物体の位置及び姿勢の自由度は6自由度である。すなわちsは6次元ベクトルであり、計測対象物体の位置を表す3つの要素と、姿勢を表す3つの要素からなる。ステップS403で算出された対象物体の概略の位置姿勢により、撮像部座標系のある点が対象物体座標系の点(x0、y0、z0)に変換されるとする。(x、y、z)は対象物体の位置および姿勢により変化するものであり、(x0、y0、z0)の近傍で1次のテイラー展開によって(数16)のように近似できる。
Figure 0005480667
メモリ102に格納されたある最近傍点対の形状モデル側最近傍点が存在する三角形パッチ面の対象物体座標系における方程式をax+by+cz=e(a2+ b2+ c2=1, a,b,c,eは定数)とする。正しいsによって変換される(x、y、z)は、平面の方程式ax+by+cz=e(a2+ b2+ c2=1)を満たすと仮定する。(数16)を平面の方程式に代入すると(数17)が得られる。
Figure 0005480667
ただし、q=ax0+by0+cz0(定数)である。
(数17)は最近傍点対すべてについて成り立つため、(数18)のようなΔsiに関する線形連立方程式が成り立つ。
Figure 0005480667
ここで、(数18)を(数19)のように表す。
Figure 0005480667
(数19)をもとに,行列Jの一般化行列(JT・J) -1・JTを用いてΔsを求める。しかし、距離画像の計測点群に含まれるノイズなどによる外れ値が多いため、次に説明するようなロバスト推定手法を用いる。一般に、外れ値である計測点群データでは誤差e−qが大きくなる。そのため、(数6)、(数7)の連立方程式に対する寄与度が大きくなり、その結果得られるΔsの精度が低下してしまう。そこで、誤差e−qが大きいデータには小さな重みを与え、誤差e−qが小さいデータには大きな重みを与える。重みは、例えば(数20)に示すようなTukeyの関数により与えることが可能である。
Figure 0005480667
cは定数である。なお、重みを与える関数はTukeyの関数である必要はなく、例えば、Huberの関数など、誤差の大きいデータには小さな重みを与え、誤差の小さいデータには大きい重みを与える関数であればよい。各データに対応する重みをwiとする。ここで(数21)のように重み行列Wを定義する。
Figure 0005480667
重み行列Wは、対角成分以外はすべて「0」の正方行列であり、対角成分には重みwiが入る。Ncは最近傍点対の数(欠損モデル領域上の対応点対を含まない)である。この重み行列Wを用いて、(数19)を(数22)のように変形する。
Figure 0005480667
(数23)のように(数22)を解くことにより補正値Δsを求める。
Figure 0005480667
このようにして算出された補正値Δsによりモデルの位置・姿勢の概略値を補正し、結果をメモリ102に格納するか、あるいはデータ入出力部109を介して外部の装置に出力する。なお、上述した位置及び姿勢の最適化計算手法はGauss-Newton法に基づくものであるが、これに限らずLevenberg-Marquardt法や最急降下法などを用いてもよい。
ステップS404では、収束判定を行い、収束していれば(S404−Yes)、位置姿勢の推定処理を終了する。収束していなければ(S404−No)、ステップS402に処理は戻され、同様の処理が繰り返される。収束判定では、補正値Δsがほぼ0である場合や、誤差ベクトルEの二乗和の補正前と補正後の差がほぼ0である場合に収束したと判定する。
物体領域の更新処理は第1実施形態と同様であるが、部分領域を追加するか否かを判定するための評価値は(数10)に表される平均距離に限定されるものではない。例えば、RMS誤差(誤差ベクトルの要素の二乗和をサンプル点数で除算した値の平方根)を用いることが可能である。物体領域に関する誤差ベクトルはステップS403で算出済みである。また、物体領域に追加する候補の部分領域に関する誤差ベクトルは、上述の物体領域の場合と同様に算出することが可能である。
本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (12)

  1. 撮像手段により撮像された対象物体の距離画像を取得する取得手段と、
    取得された前記距離画像において、物体領域設定する設定手段と、
    設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定手段と、
    前記推定手段によって推定された前記位置及び姿勢に基づいて、前記物体モデルと前記3次元点群との距離を示す情報を導出し、該導出された距離を示す情報を用いて、前記物体領域の設定を更新する更新手段と、
    前記更新手段による前記物体領域の設定の更新に従い、前記推定手段に、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定させる制御手段と
    を備えることを特徴とする位置姿勢計測装置。
  2. 前記更新手段は、前記推定手段によって推定された前記位置及び姿勢に基づいて、前記物体モデルと前記3次元点群との距離を示す情報を導出し、該導出された距離を示す情報を用いて、前記距離画像の中で前記物体領域として設定されていない領域のうち一部の領域を前記物体領域に追加することにより、前記物体領域を更新することを特徴とする請求項1に記載の位置姿勢計測装置。
  3. 前記更新手段は、前記設定手段により前記物体領域として設定されていない領域と前記物体モデルとの距離を示す情報が、前記物体モデルと前記物体領域との距離を示す情報より小さい場合、前記物体領域に、距離値の小さい順に新たな領域を追加することにより、前記物体領域を更新することを特徴とする請求項1または2に記載の位置姿勢計測装置。
  4. 前記更新手段は、前記領域を追加する前の物体領域と前記物体モデルとの距離を示す情報に対して、前記領域を追加した後の物体領域と前記物体モデルとの距離を示す情報が増加するか否かを判定する増加判定手段と、
    前記増加判定手段により増加しないと判定される場合に、前記物体領域に対して距離値の小さい順に新たな領域を追加する追加手段と、
    を有することを特徴とする請求項2または3に記載の位置姿勢計測装置。
  5. 前記更新手段は、前記物体領域に追加する領域を決定する決定手段を更に有することを特徴とする請求項4に記載の位置姿勢計測装置。
  6. 前記決定手段は、前記物体領域として設定されていない領域と前記物体モデルとの距離の近接度を示す距離値の小さい順に、前記領域を決定することを特徴とする請求項5に記載の位置姿勢計測装置。
  7. 前記決定手段は、前記推定手段によって推定された位置姿勢に基づいて、前記物体モデルを距離画像上に投影した場合に、前記投影された物体モデルと領域とが重複する度合いの高い順に、前記領域を決定することを特徴とする請求項5に記載の位置姿勢計測装置。
  8. 前記更新手段は、前記推定手段の推定の結果を用いて、前記領域が追加された前記物体領域から、前記追加された領域を削除することにより前記物体領域を更新することを特徴とする請求項1乃至5のいずれか1項に記載の位置姿勢計測装置。
  9. 前記更新手段は、前記領域を追加する前の物体領域と前記物体モデルとの距離を示す情報に対して、前記領域を追加した後の物体領域と前記物体モデルとの距離を示す情報が増加すると前記増加判定手段により判定される場合、前記追加された前記領域を前記物体領域から削除することを特徴とする請求項4に記載の位置姿勢計測装置。
  10. 前記推定手段は、前記物体領域の3次元点群と前記物体モデルの表面との距離の総和を最小にするように、前記物体モデルを前記物体領域の前記3次元点群に当て嵌めることによって、前記対象物体の位置及び姿勢を推定することを特徴とする請求項1乃至9のいずれか1項に記載の位置姿勢計測装置。
  11. 位置姿勢計測装置の位置姿勢計測方法であって、
    取得手段が、撮像手段により撮像された対象物体の距離画像を取得する取得工程と、
    設定手段が、取得された前記距離画像において、物体領域設定する設定工程と、
    推定手段が、設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定工程と、
    更新手段が、前記推定工程によって推定された前記位置及び姿勢に基づいて、前記物体モデルと前記3次元点群との距離を示す情報を導出し、該導出された距離を示す情報を用いて、前記物体領域の設定を更新する更新工程と、を有し、
    前記推定手段が、前記更新工程による前記物体領域の設定の更新に従い、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定する第2の推定工程と、
    を有することを特徴とする位置姿勢計測方法。
  12. コンピュータを請求項1乃至10のいずれか1項に記載の位置姿勢計測装置の各手段として機能させるためのプログラム。
JP2010043061A 2010-02-26 2010-02-26 位置姿勢計測装置、位置姿勢計測方法、プログラム Active JP5480667B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010043061A JP5480667B2 (ja) 2010-02-26 2010-02-26 位置姿勢計測装置、位置姿勢計測方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010043061A JP5480667B2 (ja) 2010-02-26 2010-02-26 位置姿勢計測装置、位置姿勢計測方法、プログラム

Publications (3)

Publication Number Publication Date
JP2011179909A JP2011179909A (ja) 2011-09-15
JP2011179909A5 JP2011179909A5 (ja) 2013-04-11
JP5480667B2 true JP5480667B2 (ja) 2014-04-23

Family

ID=44691574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010043061A Active JP5480667B2 (ja) 2010-02-26 2010-02-26 位置姿勢計測装置、位置姿勢計測方法、プログラム

Country Status (1)

Country Link
JP (1) JP5480667B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5670397B2 (ja) 2012-08-29 2015-02-18 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
US9208609B2 (en) * 2013-07-01 2015-12-08 Mitsubishi Electric Research Laboratories, Inc. Method for fitting primitive shapes to 3D point clouds using distance fields
JP2015089590A (ja) 2013-11-05 2015-05-11 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP5788460B2 (ja) 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP5788461B2 (ja) 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP5897532B2 (ja) 2013-11-05 2016-03-30 ファナック株式会社 三次元空間に置かれた物品をロボットで取出す装置及び方法
JP5905549B1 (ja) 2014-09-16 2016-04-20 ファナック株式会社 バラ積みされた物品を取出す物品取出装置
KR102289800B1 (ko) * 2015-03-24 2021-08-13 케이엘에이 코포레이션 객체의 형상 분류 방법
JP6632208B2 (ja) * 2015-03-24 2020-01-22 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP6472363B2 (ja) * 2015-10-16 2019-02-20 キヤノン株式会社 計測装置、計測方法および物品の製造方法
JP6849262B1 (ja) * 2020-05-28 2021-03-24 リンクウィズ株式会社 情報処理方法、情報処理システム、プログラム
JP7424535B1 (ja) 2023-05-31 2024-01-30 トヨタ自動車株式会社 遠隔制御装置
CN117316262B (zh) * 2023-11-30 2024-04-09 深圳市领德创科技有限公司 一种自动flash芯片检测机台

Also Published As

Publication number Publication date
JP2011179909A (ja) 2011-09-15

Similar Documents

Publication Publication Date Title
JP5480667B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、プログラム
US20200096317A1 (en) Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium
JP5671281B2 (ja) 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
JP5297403B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、プログラムおよび記憶媒体
JP6271953B2 (ja) 画像処理装置、画像処理方法
JP5567908B2 (ja) 3次元計測装置、その計測方法及びプログラム
JP5746477B2 (ja) モデル生成装置、3次元計測装置、それらの制御方法及びプログラム
JP5627325B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP5839971B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6736257B2 (ja) 情報処理装置、情報処理方法、プログラム
JP6415066B2 (ja) 情報処理装置、情報処理方法、位置姿勢推定装置、ロボットシステム
CN108332752B (zh) 机器人室内定位的方法及装置
CN113052907A (zh) 一种动态环境移动机器人的定位方法
JP5698815B2 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP6922348B2 (ja) 情報処理装置、方法、及びプログラム
JP6040264B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2015111128A (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP6066562B2 (ja) 計測装置、計測方法及びプログラム
JP5462662B2 (ja) 位置姿勢計測装置、物体識別装置、位置姿勢計測方法及びプログラム
Siddiqui et al. Visual tracking using particle swarm optimization
Arbeiter et al. Efficient segmentation and surface classification of range images
JP2022138037A (ja) 情報処理装置、情報処理方法およびプログラム
JP2011174878A (ja) 位置姿勢計測装置
JP6719925B2 (ja) 情報処理装置、情報処理方法、プログラム
JP5991730B2 (ja) 計測装置、計測方法及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131216

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: 20140117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140214

R151 Written notification of patent or utility model registration

Ref document number: 5480667

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151