JP6922605B2 - 3次元物体検出装置、ロボット、及びプログラム - Google Patents

3次元物体検出装置、ロボット、及びプログラム Download PDF

Info

Publication number
JP6922605B2
JP6922605B2 JP2017184892A JP2017184892A JP6922605B2 JP 6922605 B2 JP6922605 B2 JP 6922605B2 JP 2017184892 A JP2017184892 A JP 2017184892A JP 2017184892 A JP2017184892 A JP 2017184892A JP 6922605 B2 JP6922605 B2 JP 6922605B2
Authority
JP
Japan
Prior art keywords
point cloud
model
dimensional object
posture
camera
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
JP2017184892A
Other languages
English (en)
Other versions
JP2019060695A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2017184892A priority Critical patent/JP6922605B2/ja
Publication of JP2019060695A publication Critical patent/JP2019060695A/ja
Application granted granted Critical
Publication of JP6922605B2 publication Critical patent/JP6922605B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Description

本発明は、3次元物体検出装置、ロボット及びプログラムに関する。
特許文献1には、3次元辞書データから、対象物に関して測定されない領域に該当するデータを除去することで、高精度・高速な照合・認識を実現する技術が記載されている。姿勢の推定を行い、3次元辞書データを概要姿勢に応じて姿勢変換して、「概要変換後の3次元辞書データP’」を作成する。続いて「概要変換後の3次元辞書データP’」の点群を、測定器から対象物への距離方向と垂直な仮想平面へ投影する。そして、仮想平面を多数の矩形領域に分割し、矩形領域毎に、その矩形領域に属する(投影された)複数の点のなかから測定器に最も近い点のみを選択し、選択された点のみから構成される3次元辞書データを再構築することにより、3次元辞書データから対象物に関して測定されない領域に該当するデータを除去する。
特許文献2には、ステレオ処理と点群間の3Dモデルマッチングにおける一手法であるICP(Iterative Closest Point)アルゴリズムの組み合わせによる方法で、ICPに用いる点群モデルに計測対象衛星の全形状の点群を考慮したモデルを用いた場合の精度・信頼性に限界があるという問題を解決する技術が記載されている。計測対象の3次元形状を複数台のカメラ画像をステレオ処理して計測点群の形で求めるステップと、計測対象の既知の形状情報とステレオカメラの相対位置・姿勢とから可視部を予測するステップと、該予測した可視部の形状情報のみを用い前記計測点群の空間密度に合わせたモデル点群を決定するステップと、前記計測点群とモデル点群の間でICPアルゴリズムを用いてマッチングさせ、最も評価関数が小さなモデル群に対応する位置・姿勢を計測結果として採用するステップを実行する。
特開2013−53920号公報 特開2008−14691号公報
上記技術においては、概略姿勢、または予測した可視部分に基づき、見えないモデルデータ部分については単純に削除する処理を実行しており、その予測には誤差があることの影響を考慮していない。予測に誤差がある場合、見えないモデルデータ部分にも誤差が生じるため、単純に削除する処理では不具合が生じ得る。
また、ICPアルゴリズムは、剛体変換(回転および移動)の関係にある2つの点群データ間の回転・移動量を求めるアルゴリズムであるが、比較する2つの点群データにノイズがあると、正確な回転・移動量を求めるのが難しいことが知られている。
本発明の目的は、3次元物体の実際の姿勢と推定姿勢との間に誤差が生じていても、3次元物体の実際の姿勢を検出し得る技術を提供することにある。
請求項1に記載の発明は、3次元物体の距離画像を取得するカメラと、前記距離画像を用いて前記3次元物体に対応する3次元モデルの姿勢を算出する3次元モデル算出部と、算出された前記3次元モデルを前記カメラの視点から平面に投影して得られる投影画像のエッジを抽出する抽出部と、抽出された前記エッジにおいて前記カメラに最も近い位置の点群から予め定めた距離内にある前記3次元モデルの点群をマッチング用点群として抽出し、抽出したマッチング点群と前記距離画像から得られたマッチング用点群を照合することで前記3次元物体の姿勢を検出する処理部とを備える3次元物体検出装置である。
請求項2に記載の発明は、前記処理部は、前記投影画像において前記エッジに予め定めたサイズのウィンドウを設定し、前記ウィンドウ内で前記カメラから最も近い位置の点群を抽出する請求項1に記載の3次元物体検出装置である。
請求項3に記載の発明は、前記ウィンドウの前記サイズは、前記3次元モデルに応じて可変設定される請求項2に記載の3次元物体検出装置である。
請求項4に記載の発明は、前記距離は、固定値である請求項1に記載の3次元物体検出装置である。
請求項5に記載の発明は、前記距離は、前記3次元モデルに応じて可変設定される請求項1に記載の3次元物体検出装置である。
請求項6に記載の発明は、前記距離は、前記エッジに対応する前記3次元モデルの段差部の段差に応じて設定される請求項1に記載の3次元物体検出装置である。
請求項7に記載の発明は、前記エッジは、前記3次元物体の段差である請求項1に記載の3次元物体検出装置である。
請求項8に記載の発明は、前記エッジは、前記3次元物体の周縁部である請求項1に記載の3次元物体検出装置である。
請求項9に記載の発明は、請求項1〜8のいずれかに記載の3次元物体検出装置と、前記3次元物体検出装置で検出された前記3次元物体の姿勢を用いて前記3次元物体を把持するロボットアームとを備えるロボットである。
請求項10に記載の発明は、コンピュータに、3次元物体の距離画像を取得するステップと、前記距離画像を用いて前記3次元物体に対応する3次元モデルの姿勢を算出するステップと、算出された前記3次元モデルを前記距離画像を取得したカメラの視点から平面に投影して得られる投影画像のエッジを抽出するステップと、抽出された前記エッジにおいて前記カメラに最も近い位置の点群から予め定めた距離内にある前記3次元モデルの点群をマッチング用点群として抽出し、抽出したマッチング点群と前記距離画像から得られたマッチング用点群を照合することで前記3次元物体の姿勢を検出するステップとを実行させるプログラムである。
請求項1,10に記載の発明によれば、3次元物体の実際の姿勢と推定姿勢との間に誤差が生じていても、3次元物体の実際の姿勢を検出し得る。
請求項2,3に記載の発明によれば、さらに、カメラから最も近い位置の適当な点群が抽出される。
請求項4,5,6に記載の発明によれば、さらに、エッジに対応する適当な点群が抽出される。
請求項7に記載の発明によれば、さらに、3次元物体の段差において適当な点群が抽出される。
請求項8に記載の発明によれば、さらに、3次元物体の周辺部において適当な点群が抽出される。
請求項9に記載の発明によれば、さらに、検出された姿勢を用いて3次元物体がロボットアームにより把持され得る。
実施形態の機能ブロック図である。 実施形態の構成図である。 実施形態の3D物体の一例を示す図である。 実施形態の処理を示す説明図(その1)である。 実施形態の処理を示す説明図(その2)である。 実施形態のエッジ抽出説明図である。 実施形態のマッチング用点群の抽出説明図(その1)である。 実施形態のマッチング用点群の抽出説明図(その2)である。 実施形態のマッチング用点群の抽出説明図(その3)である。 実施形態の所定距離の説明図である。 実施形態の処理フローチャートである。 変形例1のマッチング用点群の抽出説明図である。 変形例2のマッチング用点群の抽出説明図である。 変形例3のロボットの構成図である。
以下、図面に基づき本発明の実施形態について説明する。
図1Aは、本実施形態における3次元物体検出装置10の機能ブロック図を示す。3次元物体検出装置10は、3次元物体の位置及び姿勢を検出する装置であり、機能ブロックとして、距離画像取得部100、姿勢認識部101、3次元(3D)モデル回転部102、3Dモデル投影画像化部103、投影画像エッジ抽出部104、マッチングモデル作成部105、マッチング処理部106、及び3Dモデル記憶部107を備える。
距離画像取得部100は、距離画像カメラを備え、検出対象である3D物体を上方から撮影し、画素毎に距離情報が付与された距離画像を得る。距離画像は、カメラ位置を原点とした実距離情報が付与され、例えば、最もカメラ位置に近い、つまり最も高い位置にある物体表面ほど高い階調値を得るように撮影画像を取得する。距離画像カメラは公知であり、投光した光がターゲットに当たって戻る時間を画素毎にリアルタイムで測定することにより、距離画像を取得する。位相差法を用い、投光パルスを高速で点滅させ、反射光の位相遅れの程度を計測することで、距離計測を行ってもよい。
姿勢認識部101は、距離画像取得部100で取得した画像を用い、公知の方法により3D物体の概略姿勢を認識する。一例として、3D物体の任意の姿勢を機械学習させておき、距離画像取得部100で得られた画像を入力して3D物体の概略姿勢を出力する。得られた概略姿勢は推定姿勢であるから、3D物体の実際の姿勢との間に誤差が生じ得る。
3Dモデル回転部102は、3Dモデル算出部として機能し、姿勢認識部101で得られた3D物体の概略姿勢に基づいて当該3D物体に対応する3Dモデルを回転させる。3D物体の3Dモデルは、予め3Dモデル記憶部107に記憶されており、3Dモデル回転部102は、検出対象の3D物体に対応する3Dモデルを3Dモデル記憶部107から読み出して概略姿勢に一致するように回転させる。
3Dモデル投影画像化部103は、3Dモデル回転部102で回転させた3Dモデルを、距離画像取得部100の距離画像カメラを基点として平面に投影することで投影画像を作成する。例えば、投影画像の階調値は、カメラに近いほど白く、カメラから遠いほど黒くなるようにカメラからの距離を表現する。
投影画像エッジ抽出部104は、抽出部として機能し、3Dモデル投影画像化部103で作成された投影画像からエッジを求め、強いエッジのみを検出する。強いエッジとは、所定サイズのウィンドウ内で値が大きく変化するエッジを意味する。
マッチングモデル作成部105は、処理部として機能し、まず、3Dモデル投影画像化部103で作成された投影画像中の各ピクセルに投影される点群中で、最もカメラに近い点群のみをマッチングモデル用の点群として抽出する。次に、投影画像中のエッジに所定サイズのウィンドウを設定し(例えば5ピクセル×5ピクセルのウィンドウ)、強いエッジを求める。そして、強いエッジの中で最もカメラに近い点群の位置(高さ)を求め、そのウィンドウに対応するすべての点群の中から最も高い位置にある点群から所定距離にある全ての点群をマッチングモデル用の点群のリストに付加する。また、マッチングモデル作成部105は、マッチングモデル用の点群リスト中に重複があれば、それを除去する。
マッチング処理部106は、処理部として機能し、距離画像取得部100で得られた画像内の点群と、マッチングモデル作成部105で得られた点群との間で例えばICPアルゴリズムを実行し、3D物体の回転量と移動量を検出する。ICPアルゴリズムは、対象物の完全なモデル点群が分かっている条件下で、その対象物の部分形状情報が別に得られたとき、その部分形状(計測点群)と既知のモデル点群との位置関係(座標変換)を推定するための手法として開発されたものである。ICPアルゴリズムでは、当初両点群(計測点群とモデル点群)間の相対位置関係を推定される座標変換を用いて設定し、両点群の各点間の対応関係を「最も距離が近い」という規範に従って構築し、対応点毎の差を集計して最小となる適正座標変換を繰り返し計算で求める。点群の座標変換は、例えば3×3の回転行列、3×1の平行移動ベクトルに基づいてなされる。ICPアルゴリズムについては、特開2008−14691号公報等に開示されている。
図1Aに示す機能ブロックは、具体的にはコンピュータで実現され得る。
図1Bは、3次元物体検出装置10の具体的な構成を示す。3次元物体検出装置10は、プロセッサ100a、ROM100b、RAM100c、入出力インターフェイス(I/F)100d、通信I/F100e、記憶装置100f、及びカメラ12を備える。
1又は複数のプロセッサ100aは、ROM100bやHDD、SSD等に記憶された処理プログラムを読み出して実行し、RAM100cをワーキングメモリとして用いることで図1Aの各部の機能、具体的には姿勢認識部101、3Dモデル回転部102、3Dモデル投影画像化部103、投影画像エッジ抽出部104、マッチングモデル作成部105、及びマッチング処理部106を実現する。プロセッサは、CPU又はGPUで構成され得る。
入出力I/F100dは、カメラ12で撮影して得られた画像、すなわち対象物の3D物体を上方から撮影して得られた画像を入力する。カメラ12及び入出力I/F100dは、距離画像取得部100として機能する。
通信I/F100eは、ネットワークを介して外部のサーバとデータを送受信する。プロセッサ100aは、外部のサーバにアクセスして3D物体の3Dモデルを取得してもよい。
記憶装置100fは、HDDやSSD等で構成され、3D物体の3Dモデルを記憶する。記憶装置100fは、3Dモデル記憶部107として機能する。
次に、実施形態の基本的処理について説明する。
図2Aは、実施形態における3D物体の一例を示す。3D物体14rは、略直方体の頭部と略直方体の脚部から構成される。脚部は図においてx−y平面上に配置されており、頭部は脚部に対してz方向に配置されているものとする。以下の説明において、カメラ12は3D物体14rの上方から3D物体14rを撮影するが、上方とは図において+z方向を意味し、+z方向から−z方向に向けて撮影することを意味する。また、投影画像とは、3D物体14rの3Dモデルをx−y平面上に投影した画像を意味する。
図2Bは、実施形態の処理を模式的に示す。図2B(a)は、3D物体の実際の姿勢をカメラ12で撮影して得られた画像から抽出したマッチング用の点群である。また、図2B(b)は、3D物体14rに対応する3Dモデル14mを設定し、実際の3D物体14rの姿勢を推定して3Dモデル14mの姿勢に反映させ、姿勢を反映させた3Dモデル14mをカメラ12の視点から平面、つまり図2Aにおけるx−y平面に投影して得られた投影画像から抽出したマッチング用の点群を示す。
図2B(a)において、3D物体14rはその姿勢が多少傾いた状態にあるものとし、このときに撮影された画像(計測画像)からマッチング用の点群が点群16rとして抽出される。このとき、3D物体14rの段差部分18、つまり頭部と脚部の段差部分にも点群18rが存在する。
図2B(b)において、3D物体14rに対応する3Dモデル14mの推定姿勢には傾きがないものとすると、このときの投影画像からマッチング用の点群が点群16mとして抽出されるが、3D物体14の段差部分18は、投影画像ではエッジとして存在するからマッチング用の点群16mは存在しないことになる。
すると、図2B(a)で得られた点群16rと、図2B(b)で得られた点群16mは一致せず、これらの点群16r、16mを用いてマッチング処理を実行しても、高精度に3D物体14rの姿勢を検出することはできない。このような点群16r、16mの相違は、図2B(b)に示す3Dモデル14mの推定姿勢と、実際の3D物体14rの姿勢との間の誤差に起因するものである。
そこで、実施形態では、3Dモデル14mをカメラ12の視点から投影して得られた投影画像14mpに含まれるエッジに着目し、このエッジに関連してマッチング用の点群を新たに追加生成する。
図3は、実施形態におけるマッチング用の点群の追加生成処理を模式的に示す。
3D物体14rの3Dモデル14mには傾きがないものとし(実際の3D物体14rには傾きが存在する)、これをカメラ12の視点から投影して得られた投影画像14mp中の強いエッジ15を検出する。
そして、この強いエッジ15を基準として最もカメラ12の位置に近い、つまりz方向において最も高い位置にある点群からz方向の所定距離内にある点群を新たにマッチング用の点群20mとして追加する。図において、新たに追加される点群20mを斜線で示す。これにより、3Dモデル14mから抽出されるマッチング用の点群は、(点群16m+点群20m)となり、これらの点群を図2B(a)に示す点群16rとマッチング処理する。点群20mによって、図2B(b)で欠落している点群が補完されるといえる。
実施形態の処理をより詳細に説明する。
図4は、投影画像エッジ抽出部104でのエッジ抽出処理を示す。投影画像エッジ抽出部104は、3Dモデル投影画像化部103で作成された投影画像14mpからエッジを検出し、検出されたエッジの中から相対的に強いエッジを検出する。すなわち、投影画像14mに所定サイズのウィンドウ22を設定し、このウィンドウ22内でエッジの境界においてカメラ12との距離が閾値以上に大きく変化するエッジ15を検出する。高い位置にある物体表面ほど高い階調値を得るように撮影画像を取得した場合、エッジの境界において階調値の差が閾値以上と大きいエッジを検出する。ウィンドウ22のサイズは固定値でもよいが、3D物体14rに応じた可変値でもよい。
図5、図6及び図7は、マッチングモデル作成部105での作成処理を示す。
まず、図5において、第1ステップとして、3Dモデル投影画像化部103で作成された投影画像14mpの各ピクセルに投影される3Dモデル14mの点群の中で、最もカメラ12に近い点群のみを抽出する。
具体的には、投影画像14mp中のピクセル28mpに投影される3Dモデル14mの点群としては、点群24m及び点群26mがあるが、点群24mの方が点群26mよりもカメラ12に近い位置にあるので、点群24mを抽出する。
次に、図6において、第2ステップとして、投影画像14mに所定サイズ、例えば5ピクセル×5ピクセルサイズのウィンドウ22を設定し、ウィンドウ22内で強いエッジを求め、そのエッジに投影される点群の中で、最もカメラ12に近い点群30mを抽出する。
次に、図7において、第3ステップとして、設定されたウィンドウ22に投影される点群の中で、最もカメラ12に近い位置にある点群30mからz方向の所定距離内に位置する3Dモデル14mの全ての点群32mを抽出する。点群34mは、ウィンドウ22内に投影される点群であるが、所定距離外にあるため抽出対象から除外される。
以上のようにして、3Dモデル14mからマッチング用の点群として点群24m、30m、及び32mが抽出される。
最後に、第4ステップとして、点群24m、30m、及び32mの中で重複する点群があればそれを削除して重複のないようにする。例えば、点群24mと点群30mの中で重複する点があれば、いずれか一つの点を残して他の点を除外する。
図7に示すように、設定されたウィンドウ22に投影される点群の中で、最もカメラ12に近い位置にある点群からz方向の所定距離内に位置する3Dモデル14mの全ての点群32mを抽出しているが、所定距離は予め定めた距離であって必ずしも固定距離である必要はなく、可変距離であってもよい。所定距離は、3D物体14rの形状から強いエッジを形成する面の裏側(カメラ12が位置する側の反対側)の点群を除外するためであるから、かかる機能が奏され得る距離であればよい。
図8は、所定距離の他の例を示す。3Dモデル14mが図7の場合と異なる場合の所定距離である。図8(a)は、3Dモデル14mが図7の場合よりもその脚部がz方向に長い場合であり、これに応じて所定距離も図7の場合と比べて長く設定される。図7における所定距離を第1所定距離、図8(a)における所定距離を第2所定距離、3Dモデル14rの最も高い位置から脚部の上面S1までの距離をL1、3Dモデル14rの最も高い位置から脚部の下面S2までの距離をL2とすると、
L1<第1所定距離<第2所定距離<L2
である。図8(a)においても、強いエッジを形成する面S1の裏側S2の点群が除外され得る。
図8(b)は、3Dモデル14mが図7の場合に比べて脚部の下面S2が複雑な形状の場合であり、これに応じて所定距離も下面S2が含まれないような値に設定される。図8(b)における所定距離を第3所定距離、3Dモデル14rの最も高い位置から脚部の下面S2のうち最も高い位置までの距離をL3とすると、
L1≦第3所定距離<L3
である。図8(b)においても、強いエッジを形成する面S1の裏側S2の点群が除外され得る。
図8(c)は、3Dモデル14mが図7の場合と同様であるが、所定距離をより短く設定した場合である。具体的には、段差のサイズとほぼ等しく設定した場合である。図8(c)における所定距離を第4所定距離とすると、
L1=第4所定距離<第1所定距離<L2
である。図8(c)においても、強いエッジを形成する面S1の裏側S2の点群が除外され得る。所定距離は、3D物体14rの形状に応じて設定され得ることが理解される。
図9は、実施形態の処理フローチャートを示す。検出対象である3D物体は既知としているが、利用者が3D物体の名称等を入力して特定してもよい。
まず、距離画像取得部100は、検出対象の3D物体14rを上方(z方向)から撮影して距離画像を取得する(S101)。取得した距離画像はRAM100c等のメモリに格納される。
次に、姿勢認識部101は、得られた距離画像から3D物体14rの姿勢を認識する。姿勢認識部101は、前もって3D物体の姿勢とそのときの距離画像を学習データとして機械学習を行い、各種パラメータを最適化してメモリに記憶しておく。そして、学習して最適化されたパラメータを用いて、S101で得られた距離画像に対応する姿勢を認識する。
機械学習は公知であり、ディープニューラルネットワーク(多層ニューラルネットワーク)を用いてもよい。ディープニューラルネットワークの学習は、学習データを入力し、学習データに対応する目標値と出力値との差によってロスを算出する。算出されたロスをニューラルネットワークで逆伝播させてディープニューラルネットワークのパラメータ、すなわち重みベクトルを調整する。重みが調整されたディープニューラルネットワークに次の学習データを入力し、新しく出力された出力値と目標値との差により再びロスを算出する。再算出されたロスとニューラルネットワークで逆伝播させてディープニューラルネットワークの重みベクトルを再調整する。以上の処理を繰り返すことでディープニューラルネットワークの重みベクトルを最適化する。
次に、3Dモデル回転部102は、3D物体14rに対応する3Dモデル14mを3Dモデル記憶部107から読み出し、姿勢認識部101で認識された姿勢に従って当該3Dモデル14mを回転させる(剛体変換)。
次に、3Dモデル投影画像化部103は、3Dモデル回転部102で回転して得られた3Dモデル14mをカメラ12の位置を基点としてx−y平面上に投影することで投影画像14mpを作成する(S104)。
次に、投影画像エッジ抽出部104は、作成された投影画像14mpから強いエッジを抽出する(S105)。具体的には、図4に示すように投影画像14mp内にウィンドウ22を設定し、エッジの境界において階調値の差が閾値以上となる強いエッジを検出する。強いエッジは複数存在してもよい。
次に、マッチングモデル作成部105は、抽出されたエッジを用いてマッチングモデル、すなわちマッチング用の点群を作成する(S106)。この処理は既述したように4つのステップから構成される。すなわち、
第1ステップ:投影画像14mpの各ピクセルに投影される3Dモデル14mの点群の中で、最もカメラ12に近い点群を抽出する
第2ステップ:エッジに投影される点群の中で、最もカメラ12に近い点群を抽出する
第3ステップ:設定されたウィンドウ22に投影される点群の中で、最もカメラ12に近い位置にある点群からz方向の所定距離内に位置する3Dモデル14mの全ての点群を抽出する
第4ステップ:抽出された点群の中で重複する点群を削除する
である。
そして、作成された点群と、S101で取得された画像から抽出された点群とを用いて、例えばICPアルゴリズムに従ってマッチング処理を実行し、3D物体の姿勢を検出する(S107)。3物体の姿勢は、具体的には3D物体14rの形状、言い換えれば3Dモデル14mの形状に応じた適切な座標系で表現し得る。例えば、3D物体14rがナットのような形状であれば、その中心に開口が存在するので、その開口の中心位置を原点とし、ナットの円盤面に参照点を2点決め、原点からこれら2点の参照点を用いて3D物体14rのxy平面を求めて姿勢とすればよい。また、3D物体14rが図2Aに示すような形状である場合、例えば脚部の底面の1頂点を原点とし、原点と底面の他の頂点を用いて底面のxy平面を求めて姿勢とすればよい。
このようにして検出された3D物体14rの姿勢は、例えばバラ積みされた3D物体14rのロボットアームによる把持動作等に適用され得る。3D物体14rを把持して所定箇所に搬送するためには、まず3D物体14rの位置及びその姿勢を正確に検出する必要があるところ、実施形態の3D物体検出装置10により3D物体14rの姿勢を検出し、その姿勢検出信号に基づいてロボットアームが駆動される。実施形態の3D物体検出装置10は、ロボットに組み込まれ得るが、3D物体検出装置10とロボットを別個とし、両者が有線あるいは無線のネットワークで接続される構成でもよい。
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、種々の変形が可能である。以下、変形例について説明する。
<変形例1>
実施形態では、3D物体の段差部分に着目してマッチング用の点群を追加抽出しているが、3D物体の段差部分に加え、その周縁部分に着目してマッチング用の点群を追加抽出してもよい。3D物体の周縁部分も段差部分同様にその投影画像にエッジが生じるからである。
図10は、この場合の処理を模式的に示す。図10において、マッチングモデル作成部105は、投影画像14mpのうち、周縁部に対応するエッジ近傍に所定サイズのウィンドウ50、52を設定し、エッジに投影される点群の中で、最もカメラ12に近い点群を抽出するとともに、これらのウィンドウ内において最もカメラ12に近い位置にある点群から所定距離内に位置する3Dモデル14mの全ての点群を抽出する。エッジに投影される点群の中で、最もカメラ12に近い点群として点群40mが抽出される。また、ウィンドウ50内において最もカメラ12に近い位置にある点群から所定距離内に位置する3Dモデル14mの全ての点群として点群42mが抽出され、ウィンドウ52内において最もカメラ12に近い位置にある点群から所定距離内に位置する3Dモデル14mの全ての点群として点群46mが抽出される。点群44mについては、所定距離外であるため抽出対象から除外される。
<変形例2>
実施形態では、3D物体の段差部分に着目してマッチング用の点群を追加抽出しているが、姿勢認識部101で認識した3D物体の姿勢認識と実際の姿勢との間の誤差によっては、追加抽出すると逆に不要な点群が追加されてしまう場合もあり得る。このような場合には、所定距離という制限に加え、さらに他の制限も課すことで不要な点群が除外され得る。
図11は、この場合の処理を模式的に示す。図11(a)は、3D物体の実際の姿勢をカメラ12で撮影して得られた画像から抽出したマッチング用の点群であり、図11(b)は、3D物体に対応する3Dモデルの推定姿勢をカメラ12の視点から平面に投影して得られた投影画像から抽出したマッチング用の点群を示す。
図11(a)において、3D物体14rはその姿勢が多少傾いた状態にあるものとし、このときに撮影された画像からマッチング用の点群が点群16rとして抽出される。このとき、3D物体14rの段差部分18には点群は存在しない。
他方で、図11(b)において、3D物体14に対応する3Dモデル14mの推定姿勢に傾きがあるもののその傾きに誤差があると、このときの投影画像からマッチング用の点群が点群16mとして抽出され、さらに実施形態の処理により段差部分から点群20mが追加抽出されることになる。追加抽出された点群20mのうちのいくつかは、図11(a)で抽出された点群16rには存在しない点群であり、不要な点群である。
そこで、抽出したエッジに投影される点群の中で、最もカメラ12に近い点群(図における点群17m)を基準として所定サイズのウィンドウを設定し、点群20mのうちこのウィンドウ内に存在しない点群を除外する。図において、追加抽出された点群20mのうち、ウィンドウ内に存在しない点群20mを白丸で示す。これにより、追加抽出された点群20mのうちの不要な点群が除外され、その後のマッチング処理の精度が確保される。
なお、ウィンドウの幅は、姿勢認識部101における最大認識誤差に応じて設定され、具体的には最大認識誤差が大なるほどウィンドウ幅は大きく設定される。姿勢認識部101における最大認識誤差は、予め実験で検出される。
<変形例3>
実施形態では,図2Aに示すような3D物体14rを例示したが、本発明はこれに限らず任意の形状、例えばネジ等の部品や工具、家具等に適用し得る。
また、実施形態では、検出された3D物体14rの姿勢をロボットアームによる部品等の把持・搬送に適用する場合について説明したが、これに限らず、障害物の姿勢を検出して移動体を制御する自動運転、商品の姿勢を検出することによる商品の検品、介護者の姿勢を検出して介護者を介護する介護ロボット等にも適用し得る。
図12は、ロボットアームによる部品把持・搬送に適用した場合のロボットの全体構成図を示す。なお、ケースからバラ積みされた部品を取り出す工程は一般にランダムピッキングと称され、このロボットは、ランダムピッキングを自動化するシステムに適用され得る。
ロボットは、3D物体検出装置10と、3D物体検出装置10からの検出信号に基づきその動きが制御されるロボットアーム200を備える。3D物体14rは、ケースにバラ積みされており、3D物体検出装置10のカメラ12は、バラ積み状態の3D物体14rを撮影し、得られた距離画像を画像処理してその位置及び姿勢を検出する。検出された位置及び姿勢は、ロボットアーム200の制御機構に供給される。
なお、3D物体検出装置10で検出される位置及び姿勢は、距離画像カメラを基準とした座標系における位置及び姿勢であり、これをロボットアーム200の制御機構に供給する際には、ロボットアーム200の座標系に変換して供給する。座標系の変換は、例えば実空間内の任意の3点について距離画像カメラの座標とロボットアーム200の座標系をそれぞれ計測し、両者の間の変換行列を算出し、得られた変換行列を用いて変換すればよい。
10 3次元(3D)物体検出装置、12 カメラ、14r 3D物体、14m 3Dモデル、14mp 投影画像、15 エッジ、22,50,52 ウィンドウ。

Claims (10)

  1. 3次元物体の距離画像を取得するカメラと、
    前記距離画像を用いて前記3次元物体に対応する3次元モデルの姿勢を算出する3次元モデル算出部と、
    算出された前記3次元モデルを前記カメラの視点から平面に投影して得られる投影画像のエッジを抽出する抽出部と、
    抽出された前記エッジにおいて前記カメラに最も近い位置の点群から予め定めた距離内にある前記3次元モデルの点群をマッチング用点群として抽出し、抽出したマッチング点群と前記距離画像から得られたマッチング用点群を照合することで前記3次元物体の姿勢を検出する処理部と、
    を備える3次元物体検出装置。
  2. 前記処理部は、前記投影画像において前記エッジに予め定めたサイズのウィンドウを設定し、前記ウィンドウ内で前記カメラから最も近い位置の点群を抽出する
    請求項1に記載の3次元物体検出装置。
  3. 前記ウィンドウの前記サイズは、前記3次元モデルに応じて可変設定される
    請求項2に記載の3次元物体検出装置。
  4. 前記距離は、固定値である
    請求項1に記載の3次元物体検出装置。
  5. 前記距離は、前記3次元モデルに応じて可変設定される
    請求項1に記載の3次元物体検出装置。
  6. 前記距離は、前記エッジに対応する前記3次元モデルの段差部の段差に応じて設定される
    請求項1に記載の3次元物体検出装置。
  7. 前記エッジは、前記3次元物体の段差である
    請求項1に記載の3次元物体検出装置。
  8. 前記エッジは、前記3次元物体の周縁部である
    請求項1に記載の3次元物体検出装置。
  9. 請求項1〜8のいずれかに記載の3次元物体検出装置と、
    前記3次元物体検出装置で検出された前記3次元物体の姿勢を用いて前記3次元物体を把持するロボットアームと、
    を備えるロボット。
  10. コンピュータに、
    3次元物体の距離画像を取得するステップと、
    前記距離画像を用いて前記3次元物体に対応する3次元モデルの姿勢を算出するステップと、
    算出された前記3次元モデルを前記距離画像を取得したカメラの視点から平面に投影して得られる投影画像のエッジを抽出するステップと、
    抽出された前記エッジにおいて前記カメラに最も近い位置の点群から予め定めた距離内にある前記3次元モデルの点群をマッチング用点群として抽出し、抽出したマッチング点群と前記距離画像から得られたマッチング用点群を照合することで前記3次元物体の姿勢を検出するステップと、
    を実行させるプログラム。
JP2017184892A 2017-09-26 2017-09-26 3次元物体検出装置、ロボット、及びプログラム Active JP6922605B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017184892A JP6922605B2 (ja) 2017-09-26 2017-09-26 3次元物体検出装置、ロボット、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017184892A JP6922605B2 (ja) 2017-09-26 2017-09-26 3次元物体検出装置、ロボット、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019060695A JP2019060695A (ja) 2019-04-18
JP6922605B2 true JP6922605B2 (ja) 2021-08-18

Family

ID=66177212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017184892A Active JP6922605B2 (ja) 2017-09-26 2017-09-26 3次元物体検出装置、ロボット、及びプログラム

Country Status (1)

Country Link
JP (1) JP6922605B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7316134B2 (ja) * 2019-07-22 2023-07-27 ファナック株式会社 位置姿勢特定装置、位置姿勢特定方法及び位置姿勢特定プログラム
JP6849262B1 (ja) * 2020-05-28 2021-03-24 リンクウィズ株式会社 情報処理方法、情報処理システム、プログラム
CN116067283B (zh) * 2023-04-03 2023-08-04 成都飞机工业(集团)有限责任公司 一种深腔测量方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02110788A (ja) * 1988-10-20 1990-04-23 Niigata Eng Co Ltd 3次元物体の形状認識方法
JP2013053920A (ja) * 2011-09-02 2013-03-21 Fuji Electric Co Ltd 3次元物体位置検出装置、そのプログラム
JP6324025B2 (ja) * 2013-11-05 2018-05-16 キヤノン株式会社 情報処理装置、情報処理方法
JP6719925B2 (ja) * 2016-03-01 2020-07-08 キヤノン株式会社 情報処理装置、情報処理方法、プログラム

Also Published As

Publication number Publication date
JP2019060695A (ja) 2019-04-18

Similar Documents

Publication Publication Date Title
JP6822929B2 (ja) 情報処理装置、画像認識方法および画像認識プログラム
JP5328979B2 (ja) 物体認識方法、物体認識装置、自律移動ロボット
JP6573354B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6692107B1 (ja) 物体識別のための方法および計算システム
US10684116B2 (en) Position and orientation measuring apparatus, information processing apparatus and information processing method
JP5567908B2 (ja) 3次元計測装置、その計測方法及びプログラム
JP5671281B2 (ja) 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
Song et al. CAD-based pose estimation design for random bin picking using a RGB-D camera
CN112476434A (zh) 一种基于协作机器人的视觉3d取放方法及系统
JP4004899B2 (ja) 物品の位置姿勢検出装置及び物品取出し装置
CN111738261A (zh) 基于位姿估计和校正的单图像机器人无序目标抓取方法
JP6397354B2 (ja) 人物領域検出装置、方法およびプログラム
WO2012106068A2 (en) Mobile camera localization using depth maps
JP6922605B2 (ja) 3次元物体検出装置、ロボット、及びプログラム
JP2011133273A (ja) 推定装置及びその制御方法、プログラム
JP7394347B2 (ja) 候補エッジを処理するための方法及び計算システム
US20230044420A1 (en) Systems and methods for object detection
JP2016170050A (ja) 位置姿勢計測装置、位置姿勢計測方法及びコンピュータプログラム
KR20180117138A (ko) 텍스쳐가 없는 오브젝트의 포즈를 추정하기 위한 시스템 및 방법
Lambrecht Robust few-shot pose estimation of articulated robots using monocular cameras and deep-learning-based keypoint detection
JP5976089B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
CN111696124A (zh) 用于处理候选边缘的方法和计算系统
JP6915326B2 (ja) 画像処理装置、画像処理システムおよびプログラム
Peng et al. Real time and robust 6D pose estimation of RGBD data for robotic bin picking
CN111915632A (zh) 一种基于机器学习的贫纹理目标物体真值数据库构建方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200831

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

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210712

R150 Certificate of patent or registration of utility model

Ref document number: 6922605

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150