(57)【特許請求の範囲】
【請求項１】
ロボットアームに取り付けられたグリッパにより物体を把持するステップと、
前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像をキャプチャするステップと、
前記少なくとも２つのソース画像の平均画像を演算するステップと、
前記少なくとも２つのソース画像の分散画像を演算するステップと、
前記分散画像からフィルタリング画像を形成するステップと、
ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するステップと、を含む方法。
【請求項２】
前記グリッパ及び前記ロボットアームに接続される装置における前記物体の把持の成功を検出するステップと、
前記検出に応じて、前記装置により、前記少なくとも２つのソース画像をキャプチャすることを前記イメージセンサに指示するステップと、
前記装置への少なくとも２つのキャプチャされたソース画像を取得するステップと、をさらに含む請求項１に記載の方法。
【請求項３】
前記少なくとも２つのソース画像における前記グリッパの画像を認識するステップと、
第１のソース画像と第２のソース画像との前記グリッパの画像に対する少なくとも１つの変位を演算するステップと、
前記変位に基づいて前記平均画像を演算するステップ及び前記分散画像を演算するステップのいずれかに対して前記第１のソース画像及び前記第２のソース画像の相互の位置を求めるステップと、をさらに含む請求項１に記載の方法。
【請求項４】
変位に基づいて前記平均画像を演算するステップ及び前記分散画像を演算するステップのいずれかに対して、少なくとも２つのソース画像の相互の位置を求めるステップであって、その移動は、前記グリッパの記録された移動に対応する、ステップをさらに含む請求項１に記載の方法。
【請求項５】
前記グリッパ及び前記ロボットアームの少なくとも一方の視覚テクスチャを含む前記結果画像から少なくとも１つの画像領域を除去するステップをさらに含む請求項１に記載の方法。
【請求項６】
前記結果画像における少なくとも１つの視覚特性に基づいて前記結果画像の前記物体を分類するステップと、
分類に対応する位置へ前記物体を移動するステップと、をさらに含む請求項１に記載の方法。
【請求項７】
前記分散画像を演算するステップは、前記少なくとも２つのソース画像における各ピクセルの分散を演算し、前記分散画像における前記各ピクセルの値として演算された分散を設定することを含む請求項１に記載の方法。
【請求項８】
前記フィルタリング画像を形成するステップは、予め設定された閾値よりも小さい値を有する前記分散画像における各ピクセルに対する前記フィルタリング画像において、各ピクセルに１を設定することを含む請求項１に記載の方法。
【請求項９】
前記結果画像を取得するステップは、前記フィルタリング画像の各ピクセルの値が１である場合にのみ、前記平均画像からの前記結果画像に対する各ピクセルを選択することを含む請求項１に記載の方法。
【請求項１０】
前記少なくとも２つの画像は、対象となる物体に加えて、未知の特性の物体を含む背景に対して撮られる請求項１に記載の方法。
【請求項１１】
前記イメージセンサは、カメラ、赤外線カメラ及びレーザースキャナーの少なくとも１つである請求項１に記載の方法。
【請求項１２】
前記平均画像を演算するステップ、前記分散画像を演算するステップ及び前記フィルタリング画像を形成するステップは、ピクセルカラーチャネルごとに別々に行われる請求項１に記載の方法。
【請求項１３】
前記イメージセンサは、前記グリッパに取り付けられ、前記グリッパと共に移動するように構成される請求項１に記載の方法。
【請求項１４】
物体を把持するグリッパ及びロボットアームを制御し、前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得し、前記少なくとも２つのソース画像の平均画像を演算し、前記少なくとも２つのソース画像の分散画像を演算し、前記分散画像からフィルタリング画像を形成し、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するように構成される少なくとも１つのプロセッサを備える装置。
【請求項１５】
物体を把持するグリッパ及びロボットアームを制御する手段と、
前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得する手段と、
前記少なくとも２つのソース画像の平均画像を演算する手段と、
前記少なくとも２つのソース画像の分散画像を演算する手段と、
前記分散画像からフィルタリング画像を形成する手段と、
ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得する手段と、を備える装置。
【請求項１６】
コンピュータ読み取り可能な媒体に統合されるコンピュータプログラムであって、前記コンピュータプログラムは、
物体を把持するグリッパ及びロボットアームを制御するステップと、
前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得するステップと、
前記少なくとも２つのソース画像の平均画像を演算するステップと、
前記少なくとも２つのソース画像の分散画像を演算するステップと、前記分散画像からフィルタリング画像を形成するステップと、
ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するステップと、
を含む方法を実行するためのプロセッサを制御するコードを含む、コンピュータプログラム。
【請求項１７】
前記コンピュータ読み取り可能な媒体は、リムーバブルメモリカード、ホログラフィックメモリ、磁気ディスク又は光ディスクである請求項１６に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットアーム及びグリッパにより物理的な物体を操作するために用いられる方法及びシステムに関する。特に、本発明は、ロボットシステムにおける対象物体画像のフィルタ方法に関する。
【背景技術】
【０００２】
ロボットシステムは、製造部品、機械部品及びリサイクルされる物質のような各種の物理的物体のソート及び分類に用いられる。ソート及び分類は、物理的物体が十分に高い確率で認識されることを要求する。リサイクル及びごみ管理のような用途において、ソートした物体のグループの純度が高い、つまり、最終的にソートした物体のグループの中に誤ったタイプの物体が可能な限り少ないことが重要である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ロボットシステムにおいて、移動される又は操作される物理的物体の認識は、２つの段階を含む。第１の段階では、ロボットアームに接続されたグリッパ、爪、クランプ又は他の同様な装置を用いて把持される対象物体は、複数の物体の中から認識される。第２の段階では、対象物体の把持に成功し、対象物体は、より近くで検査される。検査は、通常、カメラ又は赤外線センサを含む複数のセンサを用いて行われる。カメラは、ロボットアーム又はグリッパに接続される。検査は、認識プロセスに干渉する物体を含まない空白又は他のクリーンな背景に対して行われる。対象物体が把持される環境において、通常、物体の一部又は全部を覆う他の物体が存在し、それにより、その背景環境における対象物の認識及び分類を困難にしている。このような環境は、非構造化領域と呼ばれる。
【０００４】
一般的に、物体認識の課題は、デジタルカメラ画像のような知覚データにおける物体をサーチするパターン認識アルゴリズムを用いて通常処理される。このようなアルゴリズムは、盛んに研究されている分野である。平坦でない背景に対して物体を認識可能な多くのアルゴリズムが存在するが、パターン認識アルゴリズムは、一般的に、背景が均一で予め決まっているときに最も良好に機能する。事前に、予め決まったタイプの物体は、クリアな動作領域からサーチされ、認識された物体として動作領域から選択される。一連のアクションは、既知のタイプの選択された物体で行われうる。一連のアクションは、物体のタイプに基づいて選択され、例えば、異なるビンがある中に異なる種類の物体を設置する。
【０００５】
対象物体が、干渉する物体が存在せずにセンサにより検査されるように、ロボットアームを用いて対象物体を均一な背景に移動することが可能である。しかし、このアプローチの課題は、ソート動作の対象となる可能性のある各物体が、物体が検査背景に対して視認される別々の位置へ移動することが必須であることである。これは、多くの時間を必要とし、ロボットアームが頻繁に移動されるという理由により多くのエネルギーを消費する。したがって、対象物体を特定の検査位置へ移動するステップを回避可能であることが有益である。
【課題を解決するための手段】
【０００６】
本発明は、ロボットアームに取り付けられたグリッパにより物体を把持するステップと、前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像をキャプチャするステップと、前記少なくとも２つのソース画像の平均画像を演算するステップと、前記少なくとも２つのソース画像の分散画像を演算するステップと、前記分散画像からフィルタリング画像を形成するステップと、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するステップと、を含む方法に関する。
【０００７】
本発明は、また、物体を把持するグリッパ及びロボットアームを制御する手段と、前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得する手段と、前記少なくとも２つのソース画像の平均画像を演算する手段と、前記少なくとも２つのソース画像の分散画像を演算する手段と、前記分散画像からフィルタリング画像を形成する手段と、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得する手段と、を備える装置に関する。
【０００８】
本発明は、また、コンピュータ読み取り可能な媒体に統合されるコンピュータプログラムであって、前記コンピュータプログラムは、物体を把持するグリッパ及びロボットアームを制御するステップと、前記物体が前記ロボットアームにより移動される間に、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得するステップと、前記少なくとも２つのソース画像の平均画像を演算するステップと、前記少なくとも２つのソース画像の分散画像を演算するステップと、前記分散画像からフィルタリング画像を形成するステップと、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するステップと、を含む方法を実行するためのプロセッサを制御するコードを含む、コンピュータプログラムに関する。
【０００９】
本発明は、また、物体を把持するグリッパ及びロボットアームを制御するステップと、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得するステップと、前記少なくとも２つのソース画像の平均画像を演算するステップと、前記少なくとも２つのソース画像の分散画像を演算するステップと、前記分散画像からフィルタリング画像を形成するステップと、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するステップと、を含むコンピュータプログラム製品。
【００１０】
本発明は、また、メモリと、物体を把持するグリッパ及びロボットアームを制御し、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得し、前記少なくとも２つのソース画像の平均画像を演算し、前記少なくとも２つのソース画像の分散画像を演算し、前記分散画像からフィルタリング画像を形成し、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得するように構成される少なくとも１つのプロセッサを備える装置に関する。
【００１１】
本発明は、また、ロボットアームに取り付けられるグリッパにより物体を把持するステップと、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得するステップと、前記少なくとも２つのソース画像をキャプチャしている間の前記グリッパの移動を記録するステップと、記録された前記グリッパの移動に基づく前記少なくとも２つのソース画像間のモーションに対する少なくとも１つの第１のモーションベクトルを求めるステップと、前記少なくとも２つのソース画像の少なくとも１つを複数の画像領域に分割するステップと、前記少なくとも２つのソース画像の画像データの比較に基づく少なくとも１つの第２のモーションベクトルを求めるステップであって、前記少なくとも１つの第２のモーションベクトルは画像データのモーションを示す、ステップと、物体分類用の少なくとも１つの画像領域を得るために、前記少なくとも１つの第２のモーションベクトルを前記少なくとも１つのモーションベクトルとマッチングするステップと、を含む方法に関する。
【００１２】
本発明は、また、ロボットアームに取り付けられるグリッパにより物体を把持する手段と、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得する手段と、前記少なくとも２つのソース画像をキャプチャしている間の前記グリッパの移動を記録する手段と、記録された前記グリッパの移動に基づく前記少なくとも２つのソース画像間のモーションに対する少なくとも１つの第１のモーションベクトルを求める手段と、前記少なくとも２つのソース画像の少なくとも１つを複数の画像領域に分割する手段と、前記少なくとも２つのソース画像の画像データの比較に基づく少なくとも１つの第２のモーションベクトルを求める手段であって、前記少なくとも１つの第２のモーションベクトルは画像データのモーションを示す、手段と、物体分類用の少なくとも１つの画像領域を得るために、前記少なくとも１つの第２のモーションベクトルを前記少なくとも１つのモーションベクトルとマッチングする手段と、を備える装置に関する。
【００１３】
本発明は、また、コンピュータ読み取り可能な媒体に統合されるコンピュータプログラム製品又はコンピュータプログラムに関する。コンピュータプログラム又はコンピュータプログラム製品は、グリッパにより物体を把持するステップと、イメージセンサにより前記物体を含む領域の少なくとも２つのソース画像を取得するステップと、前記少なくとも２つのソース画像をキャプチャしている間の前記グリッパの移動を記録するステップと、記録された前記グリッパの移動に基づく前記少なくとも２つのソース画像間のモーションに対する少なくとも１つの第１のモーションベクトルを求めるステップと、前記少なくとも２つのソース画像の少なくとも１つを複数の画像領域に分割するステップと、前記少なくとも２つのソース画像の画像データの比較に基づく少なくとも１つの第２のモーションベクトルを求めるステップであって、前記少なくとも１つの第２のモーションベクトルは画像データのモーションを示す、ステップと、物体分類用の少なくとも１つの画像領域を得るために、前記少なくとも１つの第２のモーションベクトルを前記少なくとも１つのモーションベクトルとマッチングするステップと、を含む方法を実行するためのプロセッサを制御するコードを含む。
【００１４】
本発明は、また、ロボットアームに取り付けられた又は別々に搭載されたグリッパにより物体を把持するステップと、前記物体を含む領域の複数のソース画像をイメージセンサを用いてキャプチャするステップと、前記複数の画像をキャプチャしている時間に前記グリッパの記録されたモーションとの対応に基づく前記複数のソース画像から移動する画像要素を選択するステップと、選択された前記移動する画像要素の情報を用いて結果画像を生成するステップと、把持された前記物体を分類するために前記結果画像を用いるステップと、を含む方法、前記方法を実行するように構成される装置、又は前記方法を含むコンピュータプログラムに関する。本発明の一実施形態では、前記移動する画像要素を選択するステップは、前記少なくとも２つのソース画像の平均画像を演算し、前記少なくとも２つのソース画像の分散画像を演算し、前記分散画像からフィルタリング画像を形成することを含んでもよい。本発明の一実施形態では、前記結果画像を生成するステップは、ビットマスクとして前記フィルタリング画像を用いて前記平均画像をマスキングすることにより結果画像を取得することを含んでもよい。本発明の一実施形態では、前記移動する画像要素を選択するステップは、記録された前記グリッパの移動に基づく前記少なくとも２つのソース画像間のモーションに対する少なくとも１つの第１のモーションベクトルを求めるステップと、前記少なくとも２つのソース画像の少なくとも１つを複数の画像領域に分割するステップと、前記少なくとも２つのソース画像の画像データの比較に基づく少なくとも１つの第２のモーションベクトルを求めるステップであって、前記少なくとも１つの第２のモーションベクトルは画像データのモーションを示す、ステップと、前記少なくとも１つの第２のモーションベクトルを前記少なくとも１つのモーションベクトルとマッチングするステップと、を含んでもよい。
【００１５】
本発明の一実施形態では、前記イメージセンサは、前記グリッパと共に移動するように構成され、例えば、前記イメージセンサは、前記グリッパ又は前記ロボットアームに取り付けられてもよい。
【００１６】
本発明の一実施形態では、前記イメージセンサは、前記物体が移動する間に前記物体を含む領域の少なくとも２つのソース画像を取得することができる位置に位置づけられている。
【００１７】
本発明の一実施形態では、前記装置は、前記少なくとも２つのソース画像における前記グリッパの画像を認識するように構成される。前記装置は、第１のソース画像と第２のソース画像とのグリッパの画像の少なくとも一つの変位を演算し、前記変位に基づいて前記平均画像を演算するステップ及び前記分散画像を演算するステップに対する前記第１のソース画像と前記第２のソース画像との相互の変位を求める。前記変位は、前記第１のソース画像及び前記第２のソース画像における把持された前記物体の前記画像を正確に重畳するために前記第２のソース画像をスクロールするために用いられてもよい。把持された前記物体の実際の画像は、除去されてもよい。スクロールは、ロジカルのみであってもよく、かつ前記平均画像及び前記分散画像の演算における変位デルタ値としてのみ用いられてもよい。
【００１８】
本発明の一実施形態では、前記装置は、前記少なくとも２つのソース画像の相互の変位を求め、その移動は、前記変位に基づく前記平均画像を演算するステップ及び前記分散画像を演算するステップのいずれかに対して、前記グリッパの記録された移動に対応する。
【００１９】
本発明の一実施形態では、前記装置は、前記少なくとも２つのソース画像における少なくとも１つの移動領域を求め、その移動は、前記グリッパの記録された移動に対応し、前記装置は、前記少なくとも２つのソース画像から少なくとも１つの移動領域をフィルタリングする。前記フィルタリングは、前記領域のピクセルを０又は１のような予め設定された値に設定することを含んでもよい。前記移動領域は、ブロック、輪郭又は形状を含んでもよく、単一のピクセルであってもよい。
【００２０】
本発明の一実施形態では、前記少なくとも２つのソース画像のうち、連続する２つのソース画像間での前記グリッパの移動に対応する少なくとも１つの移動ベクトルは、前記ロボットアーム用に記録された移動情報から取得されてもよい。本発明の一実施形態では、前記移動ベクトルは、前記ロボットアームの座標及び前記画像の座標における移動間でのマッピング機能において変換されるように取得されてもよい。前記移動ベクトルは、前記連続する２つのソース画像を比較することにより取得されるブロック又はピクセル移動情報と共に用いられてもよい。前記グリッパの既知のモーションに対応するモーションベクトルによるこれらのブロック又はピクセルは、前記少なくとも２つのソース画像からフィルタされてもよい。このように、前記少なくとも２つのソース画像から移動する背景と共に除去することができ、前記平均画像及び前記分散画像の演算ステップにおける前記グリッパにより移動する物体のみに制限できる。移動ブロックの一例は、Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  （ＭＰＥＧ）マクロブロックである。
【００２１】
本発明の一実施形態では、前記グリッパの少なくとも１つの視覚特性（ｖｉｓｕａｌ  ｆｅａｔｕｒｅ）は、前記装置の物体認識エンティティによる前記少なくとも２つのソース画像における前記グリッパを認識するために用いられる。前記少なくとも２つのソース画像内の前記グリッパ画像の少なくとも一部の移動は、前記グリッパの前記モーションの大きさ及び方向を示す前記グリッパ用のモーションベクトルを取得するために用いられる。前記グリッパの前記モーションベクトルは、また、グリッパにより保持されるということにより、把持される物体、つまりグリッパ物体の少なくとも一部に対するモーションベクトルである。なお、長い物体の場合には、物体は、パーツがグリッパに直接接触する状態を維持することに関して震え、フラッター又は遅れたパーツ（ｓｈｉｖｅｒ，  ｆｌｕｔｔｅｒ  ｏｒ  ｌａｇ  ｂｅｈｉｎｄ）を有していてもよい。モーションベクトルは、２つのソース画像間でのグリッパのモーションベクトルの逆ベクトルに対応する互いに関連する少なくとも２つのソース画像をスクロールするために用いられてもよい。少なくとも２つのソース画像の平均画像を演算するステップ、少なくとも２つのソース画像の分散画像を演算するステップ、分散画像からフィルタリング画像を形成するステップ及びビットマスクとしてフィルタリング画像を用いて平均画像をマスキングすることにより結果画像を取得するステップのいずれかを含むさらなる工程は、その後、モーションベクトルの逆ベクトルに比例してスクロールしている少なくとも２つのソース画像に対して行われてもよい。
【００２２】
本発明の一実施形態では、前記装置のアームコントローラエンティティは、前記物体の把持の成功を検出する。前記装置は、前記グリッパ及び前記ロボットアームに接続される。検出に応じて、前記アームコントローラエンティティは、これを前記装置のカメラコントロールエンティティに示し、当該カメラコントロールエンティティは、前記イメージセンサを制御して、前記少なくとも２つのソース画像をキャプチャする。前記カメラコントロールエンティティは、前記イメージセンサから前記装置へのキャプチャされた前記少なくとも２つのソース画像を取得する。
【００２３】
本発明の一実施形態では、前記装置の物体認識エンティティは、前記グリッパ及び前記ロボットアームの少なくとも１つの視覚特性を含む前記結果画像から少なくとも一つの画像領域を除去する。
【００２４】
本発明の一実施形態では、前記物体認識エンティティは、前記結果画像の少なくとも１つの視覚特性に基づく前記結果画像内の前記物体を分類し、前記アームコントローラエンティティに前記ロボットアームが前記分類に対応する位置へ前記物体を移動するようにさせることを指示する。
【００２５】
本発明の一実施形態では、前記分散画像を演算するステップは、前記少なくとも２つのソース画像における各ピクセルの分散を演算し、前記分散画像における前記各ピクセルの値として演算された分散を設定することを含む。
【００２６】
本発明の一実施形態では、分散画像によるとは、各ピクセルに対して、前記少なくとも２つのソース画像にわたるピクセルの値の分散に比例する値を有する画像を意味する。前記少なくとも２つのソース画像にわたるピクセルの値の分散を測定する一つの方法は、統計的に分散を演算することである。
【００２７】
本発明の一実施形態では、前記フィルタリング画像を形成するステップは、予め設定された閾値よりも小さい値を有する前記分散画像における前記各ピクセルに対する前記フィルタリング画像において、各ピクセルに１を設定することを含む。
【００２８】
本発明の一実施形態では、前記結果画像を取得するステップは、前記フィルタリング画像の前記各ピクセルの前記値が１である場合にのみ、前記平均画像からの前記結果画像に対する各ピクセルを選択することを含む。前記フィルタリング画像は、前記平均画像からのピクセルの選択を可能にするように用いられる２次元ビットマスクとして理解されてもよい。
【００２９】
本発明の一実施形態では、前記少なくとも２つの画像は、把持された物体の認識を干渉する可能性のある他の物体を含む背景に対して撮られる。前記物体の前記背景は、非構造化領域、すなわち、環境又は通常の三次元空間であってもよく、これは、例えば背景色又は形状のような一又はいくつかのその特性に予め設定されるものではなく、対象となる前記物体に加えて、未知の特性の他の物体を含みうる。例えば、ごみの山は、非構造化領域、つまり、ロボットの動作空間を構成しうる。非構造化領域は、また、時間と共に変化しうる。例えば、ごみの一部がごみの山から除去されると、ごみの一部は、シャッフル、移動又は崩壊しうる。また、新たなごみがごみの山に追加されうる。
【００３０】
本発明の一実施形態では、前記イメージセンサは、カメラ、赤外線カメラ及びレーザースキャナーの少なくとも１つである。
【００３１】
本発明の一実施形態では、前記平均画像を演算するステップ、前記分散画像を演算するステップ及び前記フィルタリング画像を形成するステップは、ピクセルカラーチャネルごとに別々に行われる。本発明の一実施形態では、前記少なくとも２つのソース画像は、グレースケールに変換され、前記平均画像を演算するステップ、前記分散画像を演算するステップ及び前記フィルタリング画像を形成するステップは、グレースケールに対して行われる。
【００３２】
本発明の一実施形態では、前記イメージセンサは、前記グリッパに取り付けられる又は前記グリッパの一部を形成する。前記カメラもまた、前記ロボットアームの端部に直接又はシャフトを介して取り付けられてもよい。
【００３３】
本発明の一実施形態では、本発明は、制御ユニットにより制御され、非構造化領域に存在する物体に到達しうるように実装されたロボットアームを含む。
【００３４】
本発明の一実施形態では、本システムは、前記ロボットアームに取り付けられ、前記制御ユニットにより制御されるグリッパをさらに含む。前記グリッパは、例えば、手又は爪に類似する手法で物体を包み込むことにより物体を把持する装置でありうる。
【００３５】
本発明の一実施形態では、前記システムは、前記非構造化領域についての知覚データを生成するために用いられうる少なくとも１つのセンサ装置をさらに含みうる。このようなセンサ装置の１つとしては、例えば、前記非構造化領域を視るために方向付けられたデジタルカメラでありうる。
【００３６】
本発明の一実施形態では、例えば、前記グリッパが移動し、かつ物体に衝突したとき又は物体が把持されたときに、前記グリッパは、前記グリッパが前記非構造化領域における物体に接触したかどうかを測定するために用いられうるセンサを含む。
【００３７】
本発明の一実施形態では、把持動作の成功は、センサからのデータを用いて求められる。前記把持が成功しなかった場合、前記ロボットアームは、その後、別の試みのために異なる位置へ移動される。
【００３８】
本発明の一実施形態では、前記システムは、前記装置で動く学習システムを用いることによりさらに向上する。
【００３９】
本発明の一実施形態では、前記コンピュータプログラムは、コンピュータ読み取り可能な媒体に記憶される。前記コンピュータ読み取り可能な媒体は、リムーバブルメモリカード、リムーバブルメモリモジュール、磁気ディスク、光ディスク、ホログラフィックメモリ又は磁気テープであってもよい。リムーバブルメモリモジュールは、例えば、ＵＳＢメモリスティック、ＰＣＭＣＩＡカード又はスマートメモリカードであってもよい。
【００４０】
上述された本発明の実施形態は、互いに組み合わせて用いられてもよい。いくつかの実施形態は、共に組み合わせられることにより本発明の別の実施形態を形成してもよい。本発明に関する方法、システム、装置、コンピュータプログラム又はコンピュータプログラム製品は、上述された発明の少なくとも１つの実施形態を含む。
【００４１】
本発明の利益は、ロボットの動作スペースから物体の選択の質を向上させることに関する。本発明は、また、例えば、対象物体の形状又は質感を認識するために用いられるさらなる対象物体認識方法を単純化するために用いられてもよい。本発明は、また、空白の背景への画像の移動を避けることによりロボットアームの要求する移動を低減し、それにより、ロボットアームの電力消費の低減をもたらしてもよい。
【図面の簡単な説明】
【００４２】
添付の図面は、本発明のさらなる理解を提供し、この明細書の一部を構成し、本発明の実施形態を図示し、明細書と共に本発明の概念の説明を補助する。
【図１】図１は、本発明の一実施形態における対象物体画像のフィルタリングを行うロボットシステムを示すブロック図である。
【図２Ａ】図２Ａは、ロボットシステムにおける対象物体画像のフィルタリングを示すブロック図である。
【図２Ｂ】図２Ｂは、本発明の一実施形態のロボットシステムのようなロボットシステムにおけるグリッパ又はロボットアームのモーションベクトルに基づく対象物体画像のスクローリングを示すブロック図である。
【図３】図３は、本発明の一実施形態のロボットシステムにおける対象物体画像のフィルタリング方法を示すフローチャートである。
【図４】図４は、本発明の一実施形態のロボットシステムにおける物体認識方法に基づく物体移動のための方法を示すフローチャートである。
【発明を実施するための形態】
【００４３】
本発明の実施形態の詳細が添付の図面で示される例と共に示される。
【００４４】
図１は、本発明の一実施形態における対象物体画像のフィルタリングを行うロボットシステムを示すブロック図である。図１では、ロボットシステム１００は、ロボット１１０、例えば、ロボットアーム１１６を含む産業用ロボットを備える。ロボットアーム１１６は、グリッパ１１２に接続され、クランプ又は爪であってもよい。ロボットアーム１１６は、動作領域１０２内のグリッパ１１２を移動可能である。ロボットアーム１１６は、例えば、ロボットアームの回転、上昇及び把持の制御を可能にするサーボモータのような多数のモータを含んでもよい。ロボットアーム１１６及びグリッパ１１２の各種の移動は、アクチュエータによりもたらされる。実施例により、アクチュエータは、電気、空気圧又は油圧若しくはこれらの組み合わせでありうる。アクチュエータは、ロボット１１０の各種要素を移動又は回転してもよい。一連の電気的なドライバは、データ処理信号、すなわち、装置１２０からのロボットアーム１１６のアクチュエータを制御する適切な電圧及び電力レベルへの指示を変換するために用いられてもよい。装置１２０からの制御信号に応答して、アクチュエータは、動作領域１１２内の特定の位置においてグリッパ１１２を位置づけること、グリッパ１１２を下降又は上昇すること、及びグリッパ１１２を開閉することを含む各種の機械的な機能を実行するが、これに限定されない。ロボット１１０は、各種のセンサを含んでもよい。実施例により、センサは、ロボットアーム１１６及びグリッパ１１２の位置を示すと共に、グリッパ１１２の開閉状態を示す各種の位置センサ（図示せず）を含む。グリッパの開閉状態は、単純なｙｅｓ／ｎｏビットに限定されない。本発明の一実施形態では、そのフィンガーのそれぞれに対するマルチビット開閉状態を示してもよく、グリッパにおける物体の大きさ及び／又は形状を示すものが取得されてもよい。位置センサに加えて、一連のセンサは、歪みセンサ又はフォースフィードバックセンサとしても知られている歪センサを含んでもよく、歪センサは、ロボットアーム１１６及びグリッパ１１２の各種要素により受けられる歪みを示す。図示した例に限定されない実装例では、歪センサは、抵抗に加えられる圧縮力に応じて抵抗値が変化する可変抵抗を含む。抵抗の変化は抵抗の絶対値に比べて小さいため、可変抵抗は、通常、ホイートストーンブリッジ構成で測定される。
【００４５】
グリッパ１１２又はロボットアーム１１６に対して接続されるカメラ１１４が存在し、カメラ１１４は、その視野において、少なくとも部分的にグリッパ１１２により把持される物体を有することを対象とする。図１では、カメラは、グリッパ１１２の内側となるように図示される。カメラは、また、ロボットアーム１１６に接続される別のシャフトに配置され、グリッパ１１２により把持される物体がカメラ１１４の視野内に良好となるように位置づけられてもよい。カメラは、また、ロボットアーム１１６とは独立した離れた位置に配置されてもよい。ロボット１１０は、非構造化領域１０２、つまりロボット１１０の動作領域に含まれる物体をソートする。領域１０２は、物体１０３、１０４及び１０５のような多数の物体を含む。図１では、ロボット１１０が対象物１０５の把持動作を行い、グリッパ１１２で対象物１０５をつかんでおくことがわかる。
【００４６】
ロボット１１０は、データ処理装置１２０、つまり装置に接続される。装置１２０の内部機能は、ボックス１４０により示される。装置１２０は、少なくとも１つのプロセッサ１４２と、ランダムアクセスメモリ（ＲＡＭ）１４８と、ハードディスク１４６と、を備える。一又はそれ以上のプロセッサ１４２は、ソフトウェアエンティティ１５０、１５２、１５４及び１５６を実行することによりロボットアームを制御する。装置１２０は、また、少なくともカメラ周辺機器インターフェース１４５と、ロボット１１０を制御するためのロボットインターフェース１４４とを備える。周辺機器インターフェース１４５は、例えばユニバーサルシリアルバス（ＵＳＢ）のようなバスであってもよい。装置１２０は端末１３０も接続され、端末１３０は少なくともディスプレイ及びキーボードを含む。端末１３０は、装置１２０にローカルエリアネットワークを用いて接続されたラップトップであってもよい。
【００４７】
ロボット１１０のような外部装置と通信するために、装置１２０は、ロボットインターフェース１４４のような外部送受信回路を含む又は使用し、外部送受信回路は、送信回路及び受信回路を含み、内部又は外部アンテナ（図示せず）を含んでもよい。装置１２０は、物質界と通信するためのいくつかの異なるインターフェース技術を使用してもよく、本実施例ではロボット１１０、グリッパ１１２及びカメラ１１４を含む。ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）及び赤外線、ラジオ又はブルートゥースのような近距離ワイヤレスインターフェースは、このような無線送受信回路の実施例であるが、これに限定されるものではない。このようなワイヤレス通信技術に替えて又は加えて、データ処理装置は、ＵＳＢ、パラレル又はシリアルインターフェース、又は他の産業上標準的なインターフェース又は専用のインターフェースのような有線接続を使用してもよい。
【００４８】
さらに、装置１２０のメモリ１４０は、プログラム又は通常少なくとも１つのプロセッサ１４２により実行されるソフトウェアエンティティのコレクションを含む。アームコントローラエンティティ１５０は、ロボットアーム１１６及びグリッパ１１２の回転、上昇及び把持を制御するために、ロボットインターフェースを通じて指示を発する。コントローラエンティティ１５０は、また、ロボットアーム１１６及びグリッパ１１２の測定された回転、上昇及び把持にふさわしいセンサデータを受信してもよい。アームコントローラは、インターフェース１４４を通じて装置１２０に受信されたフィードバックに基づいて発せられた新たな指示によりアームを作動してもよい。アームコントローラ１５０は、明確に定義されたハイレベル動作を行うロボット１１０への命令を発するように構成される。ハイレベル動作の一例は、特定の位置へロボットアームを移動することである。アームコントローラ１５０は、ハイレベル動作を、例えばロボット１１０のアクチュエータへの電気的なドライバを通じて出力信号の適切なシーケンスを出力する等の一連のローレベル動作に変換する各種のソフトウェアドライバ、ルーチン又はダイナミックリンクライブラリを使用してもよい。カメラコントローラエンティティ１５２は、インターフェース１４５を用いてカメラ１１４と通信する。カメラコントローラエンティティは、カメラ１１４にカメラコントローラエンティティ１５２により指示された時間に開始する予め設定された時間に複数の写真を撮らせる。一般的に、カメラコントローラエンティティ１５２は、任意の時間で写真を撮るためにカメラ１１４へ命令を発してもよい。カメラコントローラエンティティ１５２は、インターフェース１４５を通じてカメラ１１４により撮られた画像を取得し、メモリ１４０に画像を記憶する。物体抽出エンティティ１５４は、予め設定された数のソース画像（図示せず）から対象物体を抽出するように構成される。本発明の一実施形態では、物体抽出エンティティ１５４は、平均画像１６０及び分散画像１６２を演算するためにソース画像を用いる。本発明の一実施形態では、物体抽出エンティティ１５４は、分散画像１５２からマスク画像（図示せず）を演算し、マスク画像により構成される２次元ビットマップにより平均画像１６０をマスキングすることにより結果画像１６４を形成するために用いられる。結果画像１６４に見えるようなソース画像からフィルタされた対象物体は、さらに物体認識部１５６に提供され、形状、色、質感、複数の離散コサイン変換（ＤＣＴ）係数、複数のウェーブレット変換係数、ＭＰＥＧマクロブロック及び輪郭のような対象物体の各種視覚特性に基づいて対象物体でのさらなる分析を行ってもよい。物体認識部は、また、グリッパ１１２の画像の視覚特性での情報を含んでもよく、さらなる解析のためにより良い結果画像を生成するために、結果画像で見えるグリッパ１１２の部分を除去する情報を用いてもよい。グリッパ１１２の画像の視覚特性は、形状、色、質感、複数の離散コサイン変換（ＤＣＴ）係数、複数のウェーブレット変換係数、ＭＰＥＧマクロブロック及び輪郭の少なくとも１つを含んでもよい。対象物体認識の結果に基づいて、物体認識部１５６は、対象物体を分類し、アームコントローラ１５０を通じてロボット１１０に対象物体を、例えばターゲットビンに対応する特定の位置へ移動するように指示する。
【００４９】
物体抽出エンティティ１５４により行われたフィルタリングは、例示的な実施形態で以下に説明される。本発明の一実施形態では、カメラ１１４から見れば、対象物体１０５は、把持する環境１０２の背景に対して閲覧される。しかし、ロボットアーム１１６の移動が既知であると、予め設定された動作であるため又はロボット制御システムが正確に測定するためのいずれかにより、カメラセンサビューの背景は異なる手法で移動する間に、カメラ画像におけるグリッパ１１２の移動及び対象物体１０５の移動が知られる。対象物体１１２は、その後、ロボットアームの既知の移動に対応する手法で変化するそれらの領域のみの画像データから選択することにより、カメラ画像からより正確に認識されうる。この実装の１つの簡易な例は、グリッパ１１２に取り付けられるカメラ１１４を有する。このような構成では、グリッパにより移動する物体は、カメラ画像において固定しているように見えるが、背景は、移動しているように見える。カメラ画像データからの物体の認識は、“オンライン”で実装されうる。新たなカメラ画像は、時間経過に従ってカメラから受信される。使用されるカメラのタイプに応じて、新たなカメラ画像は、カメラからの新たな画像データを要求する物体認識システムの結果から構成されてもよく又はカメラは、カメラ内と同じレートで新たな画像を構成してもよく、物体認識システムは、その後、以前に要求されたものと同一画像であってもよい最後の画像を要求する又は新たな画像が取得されたときに、カメラからの指示を受信してもよい。新たな画像が受信されると、連続する新たな画像及び以前に受信した画像におけるピクセル値の平均及び分散が計算され、２つの画像、平均画像及び分散画像を形成すると考えられうる。使用される以前に受信した画像の数は、身近なアプリケーションに最も適したパラメータとして設定されてもよい。十分な数のカメラ画像が受信され、この手法で処理されたとき、マスク画像は、ピクセル値を、分散画像における対応するピクセルが予め設定された閾値よりも小さいそれらの画像において１に設定し、そうでない場合に０に設定することにより演算される。その後、平均画像は、物体認識を行うために用いられ、特徴画像を得て、いくつかの視覚特性を有するとみなされる平均画像におけるそれらのピクセルを含み、物体認識システムは認識するように設定される。例えば、物体認識システムが赤い物体を認識するように設定された場合、特徴画像は、物体認識システムにより“赤”であるとみなされる平均画像からのそれらのピクセルを含む。一旦特徴画像が算出されると、最終画像は、マスク画像により特徴画像をマスキングすることにより算出される。これは、特徴画像から、マスク画像における対応するピクセルが１のピクセル値を有するためのそれらのピクセルのみを選択することにより実現される。把持された物体に対応する画像の部分は、よって、最終画像から容易に認識される。把持された物体に対応するカメラ画像データの一部が認識されると、データは、物体が移動される間に、把持された物体のタイプを求めるために物体認識システムにより使用されうる。この新たなタイプの情報は、その後、物体で行われる動作を選択するために、以前に求められたタイプ情報と組み合わせて用いられうる。
【００５０】
少なくとも１つのプロセッサが本発明に関する機能エンティティを実行するとき、メモリは、コントローラエンティティ１５０、カメラコントローラエンティティ１５２、物体抽出エンティティ１５４及び物体認識エンティティ１５６のようなエンティティを含む。図１に示される装置１２０内の機能エンティティは、様々な手法で実装されてもよい。機能エンティティは、ネットワークノードのネイティブオペレーティングシステム下で実行される処理として実装されてもよい。エンティティは、別のプロセス又はスレッドとして実装されてもよく、又は多数の異なるエンティティが一のプロセス又はスレッドにより実装されるようになっていていてもよい。プロセス又はスレッドは、多数のルーチン、つまり、例えばプロシージャー及びファンクションを含むプログラムブロックのインスタンスであってもよい。機能エンティティは、別々のコンピュータプログラムとして、又はエンティティを実装するいくつかのルーチン又はファンクションを含む単一のコンピュータプログラムとして実装されてもよい。プログラムブロックは、例えば、メモリ回路、メモリカード、磁気又は光学ディスクのような少なくとも一つのコンピュータ可読媒体に記憶される。いくつかの機能エンティティは、別の機能エンティティとリンクされたプログラムモジュールとして実装されてもよい。図１の機能エンティティは、また、例えば、メッセージバス又はネットワークノード内の内部ネットワークを通じて別々のメモリに記憶され、別々のプロセッサにより実行されてもよい。このようなメッセージバスの一例としては、ペリフェラル  コンポーネント  インターコネクト（ＰＣＩ）バスがある。
【００５１】
本発明の一実施形態では、ソフトウェアエンティティ１５０−１５６は、例えば、サブルーチン、プロセス、スレッド、メソッド、オブジェクト、モジュール及びプログラムコードシーケンスのような別々のソフトウェアエンティティとして実装されてもよい。これらは、また、単に、特定の別々のサブルーチン、プロセス、スレッド、メソッド、オブジェクト、モジュール及びプログラムコードシーケンスにグループ分けされていない、装置１２０のソフトウェア内のロジカルな機能であってもよい。これらの機能は、装置１２０のソフトウェアを通じて展開されてもよい。いくつかの機能は、装置１２０のオペレーションシステムで実行されてもよい。
【００５２】
図示した例に限定されない実施例では、非構造化領域１０２は、コンベヤーベルト又はロボットの動作領域を横断するコンベヤーベルトの一部である。装置１２０は、対象となる物体の大きさ、形状及び／又は色のような、非構造化領域１０２内の物体１０３、１０４及び１０５の事前情報がわずか又は全く無い。本発明のいくつかの実施形態では、装置１２０は、対象となる物体のいくつかの事前情報を有していてもよく、又は装置１２０は、学習によって得た物体の情報を有していてもよいが、対象となる物体の背景（別の物体）、位置及び向きは、通常、事前には知られていない。すなわち、物体１０３、１０４及び１０５は、非構造化領域１０２内のランダムな位置及び方向であってもよく、物体は、互いに重なっていてもよい。
【００５３】
図１について前述した本発明の実施形態は、互いに組み合わせて用いられてもよい。いくつかの実施形態は、本発明のさらに別の実施形態を形成するために共に組み合わされてもよい。
【００５４】
図２Ａは、図１に示すロボットシステム１００のようなロボットシステムにおいて、本発明の一実施形態の対象物体画像のフィルタリングを示すブロック図である。図２の開始点は、ロボットアーム１１６に接続されたグリッパ１１２が図１に示す物体１０５のような物体の把持を成功した時点である。その結果、ロボットアーム１１６は、与えられた方向への物体１０５の移動を開始する。アームの移動中に、カメラ１１４は、一連の５つの画像を撮る、つまり、カメラ画像２５０、２５２、２５４、２５６及び２５８をこの順序で撮る。物体１０５の把持の成功及びロボットアーム１１６の移動の開始は、一連のカメラ画像の撮影を開始するためのトリガーとして機能してもよい。画像は、例えば、１００ミリ秒から５秒であってもよい所定の時間間隔で撮られる。例えば、時間間隔は、０．５秒であってもよい。カメラ１１４は、物体１０５がその視野に適合するように位置づけられる。物体１０５は、カメラ画像２５０においてボックス２８０として視認可能である。グリッパ１１２の２つのフィンガーは、カメラ画像２５０において四角形２８２及び２８４として視認可能である。カメラ画像２５０では、物体２８５のような背景物も視認可能である。ロボットアームの移動は、カメラ画像２５０−２５８における変化として視認可能であり、矢印２８６により図示される。方向は、物体２８５のような背景物に対して下向きである。速度は、１ピクセル／画像であり、合計で、カメラ画像２５０、２５２、２５４、２５６及び２５８からなる画像シーケンスにおける４つのピクセルの移動となる。なお、図２に示されるカメラ画像は、実際のカメラ画像と比べて非常に簡素である。カメラ画像は、本発明の方法のハイライトで示される。
【００５５】
ラベル付けされた矢印２０１に示すように、装置１２０は、例えば、物体抽出エンティティ１５４を用いて、カメラ画像２５０、２５２、２５４、２５６及び２５８から平均画像２６０を演算する。平均画像における座標ｘ，ｙでの与えられたピクセル値ｐに対する式は、
【数１】
0005869583.tif 000002
を用いて演算され、ここでｉはカメラ画像のインデックスであり、ｎはカメラ画像の数である。図２の場合には、ｎ＝５と想定される。数ｎは、任意の整数値、例えば３＜ｎ＜２０であってもよい。図２におけるグレーのスケールは、演算されたピクセル値を示す。
【００５６】
ラベル付けされた矢印２０２に示すように、装置１２０は、例えば、物体抽出エンティティ１５４を用いて、カメラ画像２５０、２５２、２５４、２５６及び２５８から分散画像２６２を演算する。分散画像における座標ｘ，ｙでの与えられたピクセル値ｐに対する式は、
【数２】
0005869583.tif 000003
を用いて演算され、ここでｉはカメラ画像のインデックスであり、ｎはカメラ画像の数である。図２におけるグレーのスケールは、演算されたピクセル値を示す。
【００５７】
本発明の一実施形態では、別々の平均画像及び別々の分散画像は、各色チャネル、つまり、例えばＲ、Ｇ及びＢチャネルに対して形成される。本発明の一実施形態では、カメラ画像は、グレースケール画像に変換され、単一の平均画像及び分散画像のみが形成される。
【００５８】
その結果、物体抽出エンティティ１５４は、矢印２０３により示されるようにマスク画像２６４として演算される。マスク画像２６４は、与えられたピクセルの値が所定の閾値を下回る場合には、与えられたピクセルＰ（ｘ，ｙ）でのピクセル値を１に設定することにより得られる。そうでない場合には、与えられたピクセルでの値は０に設定される。
【００５９】
その結果、矢印２０４Ａ及び２０４Ｂに示すように、物体抽出エンティティ１５４は、平均画像２６４からマスク画像２６４の位置ｘ，ｙで値０を有するそれらのピクセルＰ（ｘ，ｙ）を除去するためにマスク画像２６４を用いる。除去されたピクセルＰ（ｘ，ｙ）は、結果画像２６６において０に設定される。結果画像２６６における他の各ピクセルは、平均画像２６０から得られた各ピクセルの値に設定される。マスク処理から得られた結果は、結果画像２６６として記憶される。最後に、物体認識エンティティ１５６は、結果画像２６６にさらなる処理を行ってもよい。例えば、物体認識エンティティ１５６は、グリッパの既知のテクスチャに基づいて、グリッパ１１２のフィンガーに適した視覚特性を除去してもよい。
【００６０】
図２Ｂは、本発明の一実施形態において、図１に示すロボットシステム１００のようなロボットシステムにおけるグリッパ又はロボットアームのモーションベクトルに基づく対象物体画像のスクローリングを示すブロック図である。
【００６１】
図２Ｂでは、ロボットアーム及びグリッパから、グリッパ１１２のようなグリッパにより行われる物体２３１のカメラ画像２９１、２９２、２９３及び２９４を少なくとも含む経時的な一連のカメラ画像をキャプチャする位置へ別途搭載されるカメラが存在する。参照番号２９１−２９４の数字の順序は、カメラ画像２９１−２９４のキャプチャの取り得る順序を示す。カメラ画像２９１−２９４のキャプチャの後、色、テクスチャ、ディスクリートコサイン変換（ＤＣＴ）係数、ウェーブレット変換係数、ＭＰＥＧマクロブロック及び輪郭の少なくとも１つを含む少なくとも１つの視覚特性での予め設定された情報は、カメラ画像２９１−２９４におけるグリッパ１１２のようなグリッパの画像２３０を、例えば装置１２０における物体抽出エンティティ１５４により認識するために用いられる。カメラ画像２９１−２９４内のグリッパ画像２３０の移動は、グリッパ画像２３０に対するモーションベクトル２２１、２２２及び２２３を取得するために用いられる。本発明の一実施形態において、グリッパ画像２３０のモーションベクトル２２１、２２２及び２２３は、把持された物体２３１に対するモーションベクトルでもあり、つまり、把持された物体２３１の少なくとも一部である。なお、長い物体の場合には、物体は、震え、フラッター又は遅れたパーツを有してもよい。モーションベクトル２２１、２２２及び２２３は、各逆モーションベクトル２２４、２２５及び２２６を取得するために用いられる。グリッパ画像２３０は、カメラ画像２９１−２９４からフィルタリングされてもよく、それにより、把持された物体２３１の画像のみが維持される。フィルタリングは、視覚特性情報と一致する領域を除去する物体抽出エンティティ１５４により用いられ、メモリ１４０に記憶される視覚特性情報を用いてもよい。逆モーションベクトル２２４、２２５及び２２６は、カメラ画像２９２、２９３及び２９４をスクロールし、スクロールされた各カメラ画像２９６、２９７及び２９８を得るために用いられる。スクロールされたカメラ画像２９５−２９８のシーケンスにおいて、物体２３２のような他の物体は、移動しているように見える一方で、把持された物体２３１が固定されているように見える。なお、本発明の一実施形態では、スクロールされたカメラ画像２９５−２９８は、実際にメモリ１４０に形成されないが、逆モーションベクトル２２４−２２６は、例えば、異なるカメラ画像からピクセル値を読み取るときに、画像変位情報として平均画像を演算するステップ及び分散画像を演算するステップにおいて用いられてもよい。本発明の一実施形態では、カメラ画像２９５−２９８の領域の共通部分に対応する領域のみが維持されてもよい。本発明の一実施形態では、カメラ画像２９５−２９８は、スクロールにより生じる新たな画像領域に対する０値ピクセルのような単一の値のピクセルにより補正されてもよい。画像は、代わりに巻かれてもよい。したがって、グリッパ又はロボットアームに搭載されたカメラの場合と等しい結果が後続の計算で得られてもよい。よって、平均画像を演算するステップ、分散画像を演算するステップ及びフィルタリングマスクを形成するステップは、図２Ａに関して示すように引き続いて生じる。
【００６２】
図２Ａ及び２Ｂについて前述された本発明の実施形態は、互いに組み合わせて用いられてもよい。いくつかの実施形態は、本発明のさらなる実施形態を形成するために共に組み合わされてもよい。
【００６３】
図３は、本発明の一実施形態のロボットシステムにおける対象物体画像のフィルタリング方法を示すフローチャートである。この方法は、図１に示すような、ロボットシステムで適用されてもよい。
【００６４】
ステップ３００では、物理的な対象物体は、ロボットアームに取り付けられたグリッパを用いて把持される。
【００６５】
ステップ３０２では、グリッパにおける物理的な物体は、グリッパ又はロボットアームのいずれかにより移動される。
【００６６】
ステップ３０４では、複数の画像は、例えば、グリッパのロボットアームに接続されるカメラを用いてキャプチャされる。カメラは、また、ロボットアーム及びグリッパからの一定距離内に配置されてもよい。画像は、物体が移動される間にキャプチャされる。対象物体は、ロボットアームによる後のハンドリングによる又は分類において無視される複数の他の物体を含む背景にわたって移動されてもよい。ロボットアームの移動は、複数のソートするビン又はラックような対象物体に対する取り得る目的へ向かう初期移動を含んでもよい。背景は、非構造化領域であってもよい。画像の数は、例えば、４、５、１０又は１より大きい任意の自然数であってもよい。
【００６７】
ステップ３０６では、平均画像は、複数の画像から演算される。平均画像は、例えば、
【数３】
0005869583.tif 000004
を用いて演算されてもよく、ここでｉはカメラ画像のインデックスであり、ｎはカメラ画像の数であり、ｘ，ｙはピクセルの座標である。
【００６８】
ステップ３０８では、分散画像は、複数の画像から演算される。分散画像は、例えば、
【数４】
0005869583.tif 000005
を用いて演算されてもよく、ここでｉはカメラ画像のインデックスであり、ｎはカメラ画像の数であり、ｘ，ｙはピクセルの座標である。
【００６９】
ステップ３１０では、フィルタリングしたマスク画像は、平均画像から形成される。
【００７０】
本発明の一実施形態では、フィルタリングしたマスク画像は、ピクセルの値が予め設定された閾値を下回る場合に、フィルタリングしたマスク画像において与えられたピクセルＰ（ｘ，ｙ）でのピクセル値を１に設定することにより取得される。そうでない場合には、ピクセル値は０に設定される。
【００７１】
ステップ３１２では、対象物体を含むフィルタされた画像は、フィルタリングマスクを用いて平均画像をマスキングすることにより取得される。
【００７２】
本発明の一実施形態では、マスク画像は、平均画像からマスク画像におけるｘ，ｙで値０を有するピクセルＰ（ｘ，ｙ）を除去するために用いられる。これらのピクセルＰ（ｘ，ｙ）は０に設定される。マスキング処理から得られた結果は、結果画像、つまり、フィルタリングされた画像として記憶される。すなわち、フィルタリングマスクは、ビットマスクの対応するピクセルの値が１である場合に、平均画像からピクセル値を返す処理における平均画像と共に用いられる二次元ビットマスクである。これは、以下の式で定式化されてもよく、
【数５】
0005869583.tif 000006
ここでマスク（ｘ，ｙ）はマスク画像におけるピクセルを示し、結果（ｘ，ｙ）は結果画像におけるピクセルを示し、ａｖｇ（ｘ，ｙ）は平均画像におけるピクセルを示す。符号“：＝”は割り当てた処理の値を示す。
【００７３】
本発明の一実施形態では、ステップ３１４では、グリッパ又はロボットアームのテクスチャを有する画像領域は、フィルタリングされた画像から除去され、それにより、例えば対象物体の形状の良好な認識を促進する。その後、本方法は終了する。
【００７４】
本発明の一実施形態では、カメラから受信される入力データは、ピクセルの２次元アレイからなるデジタル画像であり、各ピクセルは、赤、緑及び青の色成分の数値、すなわち以下ではそれぞれＲ−、Ｇ−、Ｂ−値と指定される数値を有する。データにおけるピクセルの数は、カメラの解像度に対応する。
【００７５】
本発明の一実施形態では、演算量を低減するために、カメラから受信される画像データは、分析に適するように求められた解像度にダウンサンプルされる。
【００７６】
本発明の一実施形態では、得られたダウンサンプルされた画像は、その後、光の条件の変化を考慮するために正規化される。正規化は、ダウンサンプルされた画像において各ピクセルに対して別々に行われうる。
【００７７】
本発明の一実施形態では、前記装置は、少なくとも２つのソース画像におけるグリッパの画像を認識するように構成される。前記装置は、第１のソース画像と第２のソース画像との間のグリッパの画像に対する少なくとも１つの変位を演算し、変位に基づいて、平均画像を演算するステップ及び分散画像を演算するステップのいずれかのために、第１のソース画像と第２のソース画像との相互の変位を求める。変位は、第１及び第２のソース画像における把持された物体の画像を正確に重ね合わせるために第２のソース画像をスクロールするために用いられてもよい。把持された物体の実際の画像は、除去されてもよい。スクロールは、ロジカルのみであってもよく、変位インデックスとしてのみ用いられてもよく、又は平均画像及び分散画像の演算における値として用いられてもよい。
【００７８】
図３について前述した本発明の実施形態は、互いに組み合わされて用いられてもよい。いくつかの実施形態は、本発明のさらなる実施形態を形成するために共に組み合わされてもよい。本発明が関連する方法、装置、コンピュータプログラム又はコンピュータプログラム製品は、前述した本発明の実施形態の少なくとも１つを含む。
【００７９】
図４は、本発明の一実施形態のロボットシステムにおける物体認識方法に基づく物体移動のための方法を示すフローチャートである。使用される物体移動は、認識される物体を保持するグリッパ又はロボットアームの既知のモーションを用いて決定される。
【００８０】
ステップ４００では、認識される物体は、ロボットアームに取り付けられたグリッパを用いて把持される。
【００８１】
ステップ４０２では、認識される物体は、グリッパ及びロボットアームのいずれかにより移動される。
【００８２】
ステップ４０４では、複数の画像は、例えば、グリッパ及びロボットアームに接続されたカメラを用いてキャプチャされる。カメラは、固定されてもよく、ロボットから離れたグリッパの移動を視認してもよい。画像は、物体が移動している間にキャプチャされる。認識される物体は、ロボットアームによる後のハンドリングによる又は分類において無視される複数の他の物体を含む背景に対して移動されてもよい。ロボットアームの移動は、複数のソートするビン又はラックのような対象物体に対する取り得る目的へ向かう初期移動を含んでもよい。背景は、非構造化領域であってもよい。画像の数は、例えば、４、５、１０又は１より大きい任意の自然数であってもよい。
【００８３】
ステップ４０６では、グリッパの移動は、複数の画像のキャプチャ時に記録される。このステップは、通常ステップ４０４と並行して行われる。移動は、例えば、ロボットアームから得られるセンサデータを用いて記録される。センサデータは、実世界座標におけるグリッパ位置の変化に対応してもよい。グリッパ位置の変化は、実世界座標から画像座標へのマッピング関数（ｍａｐｐｉｎｇ  ｆｕｎｃｔｉｏｎ）に変換されてもよく、例えば、複数の画像のようなカメラによりキャプチャされた画像内のグリッパの移動を示してもよい。マッピング関数は、機械学習を用いて構築されてもよい。
【００８４】
ステップ４０８では、複数の画像間でのモーションに対する少なくとも１つの第１のモーションベクトルは、記録されたグリッパ移動に基づいて求められる。少なくとも１つの第１のモーションベクトルは、例えば、後続のキャプチャされた画像間のピクセルにおける画像座標のグリッパの移動を示す。
【００８５】
ステップ４１０では、複数の画像における少なくとも１つの画像は、複数、例えば少なくとも４つの領域に分割される。この領域は、ピクセル、ピクセルのブロック又は変化する形状の領域であってもよい。
【００８６】
ステップ４１２では、少なくとも１つの第２のモーションベクトルは、複数の画像内の後続の画像の比較に基づいて少なくとも１つの領域に対して求められる。比較は、第１の画像から後の第２の画像の領域の視覚特性のサーチを含んでもよい。
【００８７】
ステップ４１４では、少なくとも１つの第２のモーションベクトルは、少なくとも１つの第１のモーションベクトルとマッチングされる。比較は、方向及び長さ、つまり大きさに関するものであってもよい。比較が、ベクトルの方向及び長さがエラー許容範囲内に一致する、又はベクトルがエラー許容範囲内の逆ベクトルであることを明らかにする場合、少なくとも１つの第１のモーションベクトルに対応するモーションベクトルによる少なくとも１つの領域は選択される。エラー許容範囲は、ベクトルの方向及び長さに関するエラー許容範囲を含む。
【００８８】
本発明の一実施形態では、選択された領域は、さらなる処理から除去される、又はさらなる処理のために選択される。さらなる処理のための領域は、さらなる物体認識ステップによる。
【００８９】
本発明の一実施形態では、選択された領域は、複数の画像から除去される。その結果、平均画像を演算するステップ、分散画像を演算するステップ、及びフィルタリング画像を形成するステップは、それぞれ参照番号３０６、３０８及び３１０で示される図３におけるこれらのステップに関連して説明された手法に従ってもよい。除去は、ピクセル値を、０又は１のような予め設定された値に設定することを含む。
【００９０】
本発明の一実施形態では、複数の画像のうちの１つの画像からの少なくとも１つの選択された領域は、結果画像を直接取得するために用いられる。結果画像は、認識される物体の分類に用いられてもよい。結果画像からのグリッパの視覚特性の除去のような分類の前にさらなる認識ステップが存在してもよい。
【００９１】
図４について前述された本発明の実施形態は、互いに組み合わせて用いられてもよい。いくつかの実施形態は、本発明のさらなる実施形態を形成するために共に組み合わされてもよい。
【００９２】
本発明の例示的な実施形態は、任意の適切なサーバ、ワークステーション、ＰＣ、ラップトップコンピュータ、ＰＤＡ、インターネット家電、ハンドヘルド装置、携帯電話、無線装置、他の装置等の例示的な実施形態のプロセスを実行可能な任意の適切なデバイスを含み得、例えば、インターネットアクセス、任意の適切な形式（例えば、音声、モデム等）での電話、無線通信媒体、一又はそれ以上の無線通信ネットワーク、携帯通話ネットワーク、３Ｇ通信ネットワーク、４Ｇ通信ネットワーク、公衆交換電話網（Ｐｕｂｌｉｃ  Ｓｗｉｔｃｈｅｄ  Ｔｅｌｅｐｈｏｎｅ  Ｎｅｔｗｏｒｋ  （ＰＳＴＮｓ））、パケットデータネットワーク（ＰＤＮｓ）、インターネット、イントラネット、それらの組み合わせ等を含む一又はそれ以上のインターフェース機構を通じて通信可能である。
【００９３】
ハードウェア分野の当業者には理解できるように、例示的な実施形態は、例示的なプロセスのためのものであり、例示的な実施形態を実装するために特定のハードウェアの多くのバリエーションが可能であることがわかる。例えば、例示的な実施形態の一又はそれ以上の構成要素の機能性は、一又はそれ以上のハードウェアデバイスにより実装されうる。
【００９４】
例示的な実施形態は、本明細書で説明された各種のプロセスに関する情報を記憶しうる。この情報は、ハードディスク、光ディスク、磁気−光ディスク、ＲＡＭ等のような一又はそれ以上のメモリに記憶されうる。一又はそれ以上のデータベースは、本発明の例示的な実施形態を実装するために用いられる情報を記憶しうる。データベースは、本明細書に挙げた一又はそれ以上のメモリ又はストレージに含まれるデータ構造（例えば、レコード、テーブル、アレイ、フィールド、グラフ、ツリー、リスト等）を用いて構成されうる。例示的な実施形態について説明されたプロセスは、一又はそれ以上のデータベースにおける例示的な実施形態のデバイス及びサブシステムのプロセスにより収集及び／又は生成されたデータを記憶するために適切なデータ構造を含みうる。
【００９５】
電気分野の当業者には理解できるように、例示的な実施形態の全部又は一部は、特定用途集積回路の作成により、又は従来のコンポーネント回路の適切なネットワークを相互接続することにより実装されてもよい。
【００９６】
上述したように、例示的な実施形態の構成要素は、本発明の教示に係り、データ構造、テーブル、レコード、及び／又は本明細書に記載された他のデータを保持するためのコンピュータで読み取り可能な媒体又はメモリを含みうる。コンピュータで読み取り可能な媒体は、実行のためのプロセッサへの命令の提供を共有する任意の媒体を含みうる。このような媒体は、多くの形態をとり得、不揮発性媒体、揮発性媒体、伝送媒体等を含むが、これに限定されない。不揮発性媒体は、例えば、光又は磁気ディスク、磁気−光ディスク等を含みうる。揮発性媒体は、ダイナミックメモリ等を含みうる。伝送媒体は、同軸ケーブル、銅線、光ファイバー等を含みうる。伝送媒体は、また、無線周波数（ＲＦ）通信、赤外線（ＩＲ）データ通信等の間に生成される音響、光、電磁波等の形態をとりうる。コンピュータで読み取り可能な媒体の一般的な形態は、フロッピーディスク（登録商標）、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、ＣＤ−ＲＯＭ，ＣＤＲＷ，ＤＶＤ，任意の他の適切な光学媒体、パンチカード、ペーパーテープ、光学マークシート、穴のパターンを有する任意の他の適切な物理媒体、任意の他の光学的に識別可能な印、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、任意の他の適切なメモリチップ又はカートリッジ、搬送波又はコンピュータが読み取ることができる任意の他の適切な媒体を含みうる。
【００９７】
本発明は、多くの例示的な実施形態及び実装に関して説明してきたが、本発明はこれに限定されず、予期される特許請求の範囲内に含まれる各種の変更及び均等物が含まれる。
【００９８】
当業者には本発明の基本概念が各種の手法で実装されてもよいことが自明である。よって、本発明及びその実施形態は、上述した実施例に限定されず、特許請求の範囲内で変更されてもよい。
【図１】
0005869583.tif 000007
【図２Ａ】
0005869583.tif 000008
【図２Ｂ】
0005869583.tif 000009
【図３】
0005869583.tif 000010
【図４】
0005869583.tif 000011