(57)【要約】【課題】ばら積みされた対象物から一個体を検出する手法に関して汎用性を向上させることを目的とする。【解決手段】画像処理装置は、ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置から点群データを取得する点群情報取得部と、点群データをモデル化して生成されるノード群に対してクラスタリングを行い、１つの対象物が存在する領域を特定する対象検出部とを有する。【選択図】図２
2019153309.tif 000002
【特許請求の範囲】
【請求項１】
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置から前記点群データを取得する点群情報取得部と、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、１つの対象物が存在する領域を特定する対象検出部と、
を有する画像処理装置。
【請求項２】
前記クラスタリングは、ハードクラスタリング又はソフトクラスタリングによるコミュニティ検出手法を用いて実行される
請求項１に記載の画像処理装置。
【請求項３】
前記クラスタリングは、ノード間の距離に基づいて所定の評価関数であるモジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行される
請求項１又は２に記載の画像処理装置。
【請求項４】
前記クラスタリングは、ＯＣＧ（Overlapping Cluster Generator）又はLink Communityを用いて実行される
請求項１又は２に記載の画像処理装置。
【請求項５】
請求項１から４のいずれか一項に記載の画像処理装置と、
前記距離画像生成装置と、
前記対象検出部が特定した領域に存在する対象物を移動させるマニピュレータと、
を備える
ビンピッキングシステム。
【請求項６】
前記１つの対象物は、前記マニピュレータを基準として他の対象物に隠れていない、前記ばら積みされた複数の対象物の表層に位置する対象物である
請求項５に記載のビンピッキングシステム。
【請求項７】
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置と接続されるコンピュータが実行する画像処理方法であって、
前記距離画像生成装置から前記点群データを取得し、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、１つの対象物が存在する領域を特定する、
画像処理方法。
【請求項８】
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置と接続されるコンピュータに、
前記距離画像生成装置から前記点群データを取得し、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、１つの対象物が存在する領域を特定する
処理を実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、ビンピッキングシステム、画像処理方法、画像処理プログラムに関する。
【背景技術】
【０００２】
例えば、工場でライン生産される弁当に盛り付けられる食品は、ばら積みにされて供給されることが多い。ここで、規格化された工業製品の場合は、製品の立体モデル等と比較して１つの操作対象を認識することもできるが、食品は一般的に不定形であるため比較対象となる基準を設定することが難しい。
【０００３】
従来、不定形な食品の一例である唐揚げを検出する手法が提案されている（例えば、非特許文献１）。本技術では、ＶＣＣＳ（Voxel Cloud Connectivity Segmentation）とグ
ラフカットを用いて、ばら積みされた唐揚げから一個体の領域のセグメンテーションを行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−０４５０８８号公報
【非特許文献】
【０００５】
【非特許文献１】福地伸晃, 橋本浩一, "形状モデルを用いないばら積みシーンの物体検出," 第18 回システムインテグレーション部門講演会, pp. 632-637, 2017.
【非特許文献２】J. Papon, A. Abramov, M. Schoeler and F. Wrgtter, "Voxel Cloud Connectivity Segmentation - Supervoxels for Point Clouds," IEEE Conference on Computer Vision and Pattern Recognition, pp. 2027-2034, 2013.
【非特許文献３】Y. Y. Boykov and M. P. Jolly, "Interactive graph cuts for optimal boundary & region segmentation of objects in N-D images," Proc. of IEEE International Conference on Computer Vision, Vol. 1, pp. 105-112, 2001.
【非特許文献４】E.J. Newman, Mark and Girvan, Michelle, "Finding and Evaluating Community Structure in Networks," Physical review. E, Statistical, nonlinear, and soft matter physics, Vol. 69, pp. 026113, 2004.
【非特許文献５】Vincent D. Blondel, Jean-Loup Guillaume, Renaud Lambiotte and Etienne Lefebvre, "Fast unfolding of communities in large networks," Journal of Statistical Mechanics: Theory and Experiment, Vol. 2008, No. 10, P. 10008, 2008.
【非特許文献６】平間翔大, 中川友紀子, 中川範晃, 上田隆一, "力制御マニピュレータによる食品の操作―深層学習による不定形な揚げ物の検出," 第１７回計測自動制御学会システムインテグレーション部門講演会, pp. 2478-2481, 2016.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えばＶＣＣＳ及びグラフカットを用いる手法は、検出対象である唐揚げの表面積や閾値など、多くのパラメータを必要とする。ここで、例えば工場で利用する場合は、パラメータが多いと異なる環境に対応できないおそれがある。
【０００７】
本発明は、ばら積みされた対象物から一個体を検出する手法に関して汎用性を向上させ
ることを目的とする。
【課題を解決するための手段】
【０００８】
画像処理装置は、ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置から点群データを取得する点群情報取得部と、点群データをモデル化して生成されるノード群に対してクラスタリングを行い、１つの対象物が存在する領域を特定する対象検出部とを有する。
【０００９】
クラスタリングを用いる手法によれば、不定型なワークであっても１つの対象物が存在する領域を識別することができる。また、例えばグラフカットを用いるような手法と比べ、ワークの種別に応じた多くのパラメータを必要とせず、汎用性を向上させることができる。
【００１０】
また、クラスタリングは、ノード間の距離に基づいて所定の評価関数であるモジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行されるものであってもよい。具体的には、いわゆるネットワークにおけるコミュニティ検出手法により、クラスタリングできる。
【００１１】
また、クラスタリングは、Ｌｏｕｖａｉｎ法により行われるものであってもよい。このようにすれば、局所的な最適化と集約を繰り返すことで処理に要する時間を短縮することができる。
【００１２】
また、他の側面に係るビンピッキングシステムは、上述した画像処理装置と、距離画像生成装置と、対象検出部が特定した領域に存在する対象物を移動させるマニピュレータとを備える。
【００１３】
このようにすれば、ばら積みされた不定型なワークを識別し、マニピュレータで移動させるシステムを実現することができる。
【００１４】
また、１つの対象物は、マニピュレータを基準として他の対象物に隠れていない、ばら積みされた複数の対象物の表層に位置する対象物であってもよい。このようにすれば、ばら積みされた山をできるだけ崩さずに移動させることができる１つの対象物を特定することができる。
【００１５】
なお、課題を解決するための手段に記載の内容は、本発明の課題や技術的思想を逸脱しない範囲で可能な限り組み合わせることができる。また、課題を解決するための手段の内容は、コンピュータ等の装置若しくは複数の装置を含むシステム、コンピュータが実行する方法、又はコンピュータに実行させるプログラムとして提供することができる。なお、プログラムを保持する記録媒体を提供するようにしてもよい。
【発明の効果】
【００１６】
ばら積みされた対象物から一個体を検出する手法に関して汎用性を向上させることができる。
【図面の簡単な説明】
【００１７】
【図１】ビンピッキングシステムの一例を示す模式的な側面図である。
【図２】ビンピッキングシステムの構成の一例を示す機能ブロック図である。
【図３】位置情報表示処理の一例を示す処理フロー図である。
【図４】ノード群の一例を示す図である。
【図５】エッジが設定されたノード群の一例を示す図である。
【図６】クラスタに分類されたノード群の一例を示す図である。
【図７】操作対象のノード群の一例を示す図である。
【図８】操作対象のワーク５に属するノード群と、これらが内接する三次元立体及び重心の一例を示す斜視図である。
【図９】ソフトクラスタリングにより分類されたノード群の一例を示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明を実施するための形態について説明する。
【００１９】
＜装置構成＞
図１は、本実施形態に係るビンピッキングシステムの一例を示す模式的な側面図である。図１のビンピッキングシステム１は、ＲＧＢ−Ｄカメラ２と、マニピュレータ３と、制御装置４とを含む。また、ビンピッキングシステム１は、唐揚げ等のような不定形のワーク５がばら積みされて形成された山から１つのワーク５を取り出し、例えば弁当箱のような容器（図示せず）に移動させて盛りつける。
【００２０】
ＲＧＢ−Ｄカメラ２は、ＣＭＯＳ等を用いた固体撮像素子と、赤外線プロジェクタ及びセンサ等を用いた深度センサとを備える距離画像生成装置であり、カラー（ＲＧＢ）画像と点群データ（ポイントクラウド）とを出力する。カラー画像は、画像内の位置に対して色を示す情報を有するピクセルを複数含むラスタデータである。点群データは、カメラから撮像対象の表面までの距離（奥行）と撮像対象の色を示す情報を有する点を複数含む。
【００２１】
マニピュレータ３は、複数軸の自由度を持ったロボットアームである。マニピュレータ３は、制御装置４から受ける信号によって制御される。また、マニピュレータ３は、アームの先端にグリッパ（２指グリッパ）３１を備えており、対象物を把持して移動させることができる。また、マニピュレータ３は、対象物を把持しているか否か検知するセンサをさらに備えるものであってもよい。
【００２２】
制御装置４は、ＲＧＢ−Ｄカメラ２から取得する情報に基づいてマニピュレータ３の動作を制御するコンピュータである。制御装置４は、一般的なＰＣ（Personal Computer）
やサーバ装置であってもよいし、ＲＧＢ−Ｄカメラ２及びマニピュレータ３とのインターフェースを備えるマイクロコントローラであってもよい。また、制御装置４は、図示していないネットワークを介してＲＧＢ−Ｄカメラ２やマニピュレータ３と通信可能に接続される構成であってもよい。
【００２３】
＜機能構成＞
図２は、ビンピッキングシステムの構成の一例を示す機能ブロック図である。制御装置４はコンピュータであり、入出力Ｉ／Ｆ（Interface）４１と、記憶装置４２と、プロセ
ッサ４３と、バス又は信号線４４とを備えている。
【００２４】
入出力Ｉ／Ｆ４１は、所定の規格に従って通信可能にＲＧＢ−Ｄカメラ２と接続するためのインターフェース、及び所定の規格に従って通信可能にマニピュレータ３と接続するためのインターフェースを含む。
【００２５】
記憶装置４２は、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）等の主記憶装置及びＨＤＤ（Hard-disk Drive）やＳＳＤ（Solid State Drive）、フラッシュメモリ等の補助記憶装置（二次記憶装置）である。主記憶装置は、プロセッサが読み出したプログラムや他の装置との間で送受信される画像データ等を一時的に記憶したり、プロセッサの作業領域を確保したりする。補助記憶装置は、プロセッサが実行するプログラム等を記憶する。
【００２６】
プロセッサ４３は、ＣＰＵ（Central Processing Unit）等の演算処理装置であり、プ
ログラムを実行することにより本実施の形態に係る各処理を行う。図２の例では、プロセッサ４３内に機能ブロックを示している。プロセッサ４３は、点群情報取得部４３１と、グラフ生成部４３２と、対象検出部４３３と、ロボット制御部４３４とを含む。なお、点群情報取得部４３１、グラフ生成部４３２、及び対象検出部４３３により、制御装置４は、ＲＧＢ−Ｄカメラ２が取得する点群データを処理する画像処理装置として機能する。
【００２７】
点群情報取得部４３１は、入出力Ｉ／Ｆ４１を介してＲＧＢ−Ｄカメラ２が出力する点群データを取得し、記憶装置４２に格納する。
【００２８】
グラフ生成部４３２は、点群データの色や距離、明暗等に基づき、ボクセル（Ｖｏｘｅｌ）によって三次元空間上のノードを生成する。また、グラフ生成部４３２は、所定のノード・エッジ探索手法を用いて、例えばノード間の距離が所定の範囲にある場合にエッジで接続する。
【００２９】
対象検出部４３３は、各ノードに対しクラスタリングを行う。クラスタリングは、例えばＬｏｕｖａｉｎ法を用いて行うことができる。すなわち、対象検出部は、隣接するノード間でモジュラリティ（Modularity）の差分が最も大きくなるノード対を選択し、モジュラリティが変化しなくなるまで、選択されたノード対を同一のクラスタに統合して１つのノードに集約する処理を繰り返す。また、対象検出部４３３は、複数のクラスタのうちマニピュレータ３を基準として他の対象物に隠れていない、ばら積みされた頂上に位置するクラスタを、操作対象のワークとして特定する。
【００３０】
ロボット制御部４３４は、例えば、特定されたクラスタを構成する点群の重心を求め、マニピュレータ３のグリッパ３１が把持する目標の位置を決定するとともに、点群が収まるようにグリッパ３１を開く大きさを決定する。また、ロボット制御部４３４は、入出力Ｉ／Ｆ４１を介して、マニピュレータ３に対し、対象のワークを把持して所定の場所へ移動させるよう操作するための信号を出力する。
【００３１】
以上のような構成要素が、バス又は信号線４４を介して接続されている。
【００３２】
＜ピッキング処理＞
図３は、本実施形態に係るピッキング処理方法の一例を示す処理フロー図である。なお、後述するＳ１〜Ｓ４は、ＲＧＢ−Ｄカメラ２が取得する点群データを処理する画像処理方法といえる。
【００３３】
点群情報取得部４３１は、入出力Ｉ／Ｆ４１を介して、ＲＧＢ−Ｄカメラ２が生成する点群データを継続的に取得する（図３：Ｓ１）。本ステップでは、複数のワーク５やこれらが載置されるバット等の容器を含む撮像対象の点群データが取得される。
【００３４】
グラフ生成部４３２は、Ｓ１で取得した点群データを用いて、三次元空間上に配置されるノードとノード間を接続するエッジを含むグラフを生成する（Ｓ２）。本ステップでは、グラフ生成部４３２は、例えば、点群データから十分な空間分解能でランダムに（偏りなく）複数の点を選択し、対応するボクセルを生成する。また、所定範囲内に他のボクセルが存在しないボクセルや、色（色相、彩度、明度）が基準から大きく外れるボクセルは、削除する。このようにして、ノイズを除去すると共に、撮像対象をモデル化したノード群を生成し、処理対象のデータ量を軽減することができる。
【００３５】
図４は、生成されたノード群（ボクセル）の一例を示す図である。図４の例では、模式
的にボクセルの各々を正方形で表している。また、図４は撮像対象の上方に位置するＲＧＢ−Ｄカメラ２から見た平面図であり、各ボクセルは奥行き（高さ）の値を持っているものとする。
【００３６】
また、グラフ生成部４３２は、例えばＫＤ−木のような、所定のノード・エッジ探索手法を利用し、ノード間にエッジを設定する。例えば、ノード間の距離が所定の範囲内である場合に、エッジが設定される。なお、探索手法は特に限定されない。
【００３７】
図５は、エッジが設定されたノード群の一例を示す図である。図５も、撮像対象を上から見た平面図である。また、図５の例では、図４に示したノード群に対し、距離が所定の範囲内であるノード同士を結ぶ実線のエッジが追加されている。
【００３８】
その後、対象検出部４３３は、ノードのクラスタリングを行う（図３：Ｓ３）。クラスタリング手法は特に限定されないが、いわゆるネットワークにおけるコミュニティ検出を利用することができる。例えばＮｅｗｍａｎ法やＬｏｕｖａｉｎ法のような、モジュラリティの差分が大きくなる位置に境界を定め、クラスタ（コミュニティ）内でのモジュラリティが高くなるようにノードをクラスタリングするようにしてもよい。すなわち、所定の評価式であるモジュラリティに基づいて、ノード間の結合が密であると判定される場合は２つのノードを同一のクラスタに分類し、結合が疎であると判定される場合は２つのノードを異なるクラスタに分類することができる。
【００３９】
一般的に、モジュラリティＱは、以下の式（１）によって算出することができる。
【数１】
2019153309.tif 000003
なお、ｍはグラフ内のすべてのエッジの重みの総和である。Ａｉｊは、ノードｉとノードｊとの間のエッジの重みである。重みは、例えばノード間の距離が近いほど高くなるように設定する。ｋｉ、ｋｊは、それぞれのノードｉ、ノードｊの次数である。δはクロネッカーのデルタであり、δ（ｃｉ，ｃｊ）は、ノードｉが属するクラスタｃｉ及びノードｊが属するクラスタｃｊが同一である場合は１であり、同一でない場合は０である。
【００４０】
具体的には、対象検出部４３３は、モジュラリティが増大するように複数のノードをクラスタとして統合すると共に、モジュラリティが増大しなくなるまで統合を繰り返す貪欲法により、ノード群をクラスタリングする。すなわち、Ｓ３において、対象検出部４３３は、各ノードについて、隣接するノード間を結合した場合にモジュラリティの差分（増分）が最も大きくなるノードを特定し、統合する。モジュラリティの差分ΔＱは、以下の式（２）によって算出することができる。
【数２】
2019153309.tif 000004
なお、ｍは、グラフ内のすべてのエッジの重みの総和である。Σｉｎは、クラスタ内のエッジの重みの総和である。重みは、例えばノード間の距離が近いほど高くなるように設定する。Σｔｏｔは、クラスタ内のノードに入るエッジの重みの総和である。ｋｉは、ノー
ドｉの次数である。ｋｉ，ｉｎは、ノードｉからクラスタ内のノードまでのエッジの重みの総和である。なお、重みは、ノード間の距離のほか、ＲＧＢ−Ｄカメラ２が出力する色の類似する度合い等を用いて設定するようにしてもよい。
【００４１】
モジュラリティの差分ΔＱは、クラスタにノードを追加する際、又はクラスタからノードを削除する際のモジュラリティの変化を評価するために利用することができる。したがって、一旦いずれかのクラスタに統合したノードを、他のノードに付け替えた場合のモジュラリティの変化も容易に算出することができる。また、対象検出部４３３は、ノードの統合及び付け替えによってモジュラリティが変化（増大）しなくなったと判断した場合に、Ｓ３のクラスタリング処理を終了する。
【００４２】
例えばＬｏｕｖａｉｎ法のように局所的な最適化と集約を繰り返すことで、処理に要する時間を短縮することができる。
【００４３】
図６は、クラスタに分類されたノード群の一例を示す図である。図６も、撮像対象を上から見た平面図である。また、図６の例では、同一のクラスタに属するノードに、同一のハッチングを付している。
【００４４】
また、対象検出部４３３は、複数のクラスタから、操作対象のクラスタを決定する（図３：Ｓ４）。本ステップでは、対象検出部４３３は、ばら積みして形成された山の表層に位置するワーク５を特定する。具体的には、まず、ＲＧＢ−Ｄカメラ２を基準とするカメラ視点座標系で表されるボクセルを、マニピュレータ３に対して予め定められた原点を基準とするロボット視点座標系に変換する。そして、ロボット視点座標系において、マニピュレータ３から見てワーク５を構成するボクセルが、他のワーク５を構成するボクセルに隠れていないものを操作対象とする。したがって、例えば山の頂上など、山の表層に存在するワークが操作対象として選択される。
【００４５】
図７は、操作対象のノード群の一例を示す図である。図７も、操作対象を上から見た平面図である。また、図７の例では、操作対象のノード群として、中央付近に存在すると判断されたワークに属するノード及びエッジを太い実線で示し、その他のワークに属するノード及びエッジを破線で示している。
【００４６】
また、ロボット制御部４３４は、操作対象のワークを操作する（図３：Ｓ５）。本ステップでは、ロボット制御部４３４は、入出力Ｉ／Ｆ４１を介してマニピュレータ３を操作し、操作対象のワークを把持して所定の場所へ移動させる。具体的には、ロボット制御部４３４は、まず、想定されるワーク５の重心とグリッパ３１を開くべき大きさを決定する。すなわち、操作対象として特定されたワーク５を構成するノード群を用いて重心の位置を算出する。なお、ＲＧＢ−Ｄカメラ２が出力する撮像対象の点群データは、撮像対象の表面までの距離に基づいて生成されるため、ワーク５の裏側の形状を例えば対称であると推定して重心を求めるようにしてもよい。そして、ロボット制御部４３４は、重心を目標としてグリッパ３１を移動させる。このとき、ロボット制御部４３４は、ノード群をすべて挟めるようにグリッパ３１を開く大きさを制御する。なお、操作対象のワーク５に属するノード群が内接する直方体や楕円体、球等の三次元立体を求め、当該三次元立体を掴むようにロボット制御部４３４がマニピュレータ３を動作させるようにしてもよい。
【００４７】
図８は、操作対象のワーク５に属するノード群と、これらが内接する三次元立体及び重心の一例を示す斜視図である。図８の正方形はノードである。破線の直方体は、ノード群が内接する立体の一例である。また、黒い円はノード群又は立体の重心である。２つの矢印は、例えば二指グリッパであるグリッパ３１がワーク５を把持する方向を示す。
【００４８】
ロボット制御部４３４は、グリッパ３１を動作させるモータの電流値と把持のための指の角度が指定範囲になれば掴めたと判断でき、指の角度及び電流値のいずれかが指定範囲にない場合は失敗したと判断できる。また、ロボット制御部４３４は、把持したワーク５を、例えば弁当箱のような容器に移動させて盛りつけるよう、マニピュレータ３を動作させる。
【００４９】
＜効果＞
ばら積みされた複数のワーク全体に基づいて生成された点群データに対して、クラスタリングを行うことにより一個体のワークを識別することができる。なお、クラスタリングは、ネットワークにおけるコミュニティ検出手法を利用することができ、ノード間の距離に基づいてモジュラリティ算出してもよい。このようにすれば、例えばグラフカットを用いるような手法と比べ、ワークの種別に応じた多くのパラメータを必要とせず、汎用性を向上させることができる。
【００５０】
＜変形例＞
制御装置４は、インターネット等の通信網であるネットワークを介して、ＲＧＢ−Ｄカメラ２及びマニピュレータ３と通信可能に接続される構成であってもよい。すなわち、ＲＧＢ−Ｄカメラ２から取得した情報をクラウド上で処理する。また、マニピュレータ３は、いわゆるシンクライアントのように、ネットワークを介して送信される処理結果を出力する装置として機能する。このようにすれば、生産ラインに制御装置を設置する必要がなくなり、複数の生産ラインをそれぞれメンテナンスする手間も軽減される。
【００５１】
また、ＲＧＢ−Ｄカメラ２が設置される場所は、ワーク５の直上には限られない。例えば、ＲＧＢ−Ｄカメラ２は、マニピュレータ３を有するロボットと一体に設けられるものであってもよい。例えば人型のロボットの顔に相当する位置にＲＧＢ−Ｄカメラ２を設けるようにしてもよい。このような態様であれば、ワーク５を斜め上方から撮像する場合であっても、マニピュレータを基準として他の対象物に隠れていない位置に存在する一個体のワーク５を特定することができる。また、人間に混ざって生産ラインに導入し易い形状のロボットを実現できる。
【００５２】
また、距離画像に含まれる点群データだけでなく、さらに触覚等のセンシングデータを取得してクラスタリングに利用してもよい。このようにすれば、マルチモーダルインターフェースを備えるロボットを実現することができる。
【００５３】
＜クラスタリングの変形例＞
また、クラスタリングの手法は、Ｌｏｕｖａｉｎ法のようなハードクラスタリングには限定されない。ハードクラスタリングは、１つのノードに対して１つのクラスタを割り当てる手法である。例えば、１つのノードに対して複数のクラスタを割り当て得る手法であるソフトクラスタリングを用いるようにしてもよい。ソフトクラスタリングの例として、ＯＣＧ（Overlapping Cluster Generator）やLink Communityが挙げられる。
【００５４】
図９は、ソフトクラスタリングにより分類されるノード群の一例を示す模式的な図である。図９は、山の頂上付近に複数のワークが存在する例を示している。また、各ノード内にハッチングで分類されたクラスタを示している。すなわち、複数のノードは、図中の上下左右に存在する４つのクラスタに分類されている。また、中央の１つのノードには４つのクラスタが割り当てられている。なお、ソフトクラスタリングにおいては、中央のノードは３以下のクラスタにも分類され得るものであり、また、中央の５つのノードが第５のクラスタにも分類され得る。
【００５５】
ソフトクラスタリングは、例えば最も高い位置にあるノードを選択し、（１）選択され
ているノードが属するクラスタを抽出する処理、及び（２）抽出されたクラスタに属するノードを選択する処理を繰り返して行う。また、予め定められた規則に基づいて隣接するクラスタとの境界を検出する。境界付近のノードには２以上のクラスタを割り当てるようにしてもよい。また、点群データから求められる法線の向き等、幾何的な情報に基づいてクラスタ間の境界を検出してもよい。
【００５６】
ソフトクラスタリングを利用することで、山の頂上付近に複数のワークが存在する場合など、様々な構造のグラフからコミュニティ検出を行う際の精度を向上させることができる。
【００５７】
＜その他＞
なお、上述した構成は一例であり、本発明は例示した構成に限定されない。上述した事項は、本発明の課題や技術的思想を逸脱しない範囲で適宜組み合わせて実施することができる。
【００５８】
また、本発明は上述の処理を実行するコンピュータプログラムを含む。さらに、当該プログラムを記録した、コンピュータ読み取り可能な記録媒体も、本発明の範疇に属する。当該プログラムが記録された記録媒体については、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、上述の処理が可能となる。
【００５９】
ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、フレキシブルディスク、光磁気ディスク、光ディスク、磁気テープ、メモリカード等がある。また、コンピュータに固定された記録媒体としては、ハードディスクドライブやＲＯＭ等がある。
【符号の説明】
【００６０】
１      ：ビンピッキングシステム
２      ：ＲＧＢ−Ｄカメラ
３      ：マニピュレータ
３１    ：グリッパ
４      ：制御装置
４１    ：入出力Ｉ／Ｆ
４２    ：記憶装置
４３    ：プロセッサ
４３１  ：点群情報取得部
４３２  ：グラフ生成部
４３３  ：対象検出部
４３４  ：ロボット制御部
４４    ：信号線
５      ：ワーク
【図１】
2019153309.tif 000005
【図２】
2019153309.tif 000006
【図３】
2019153309.tif 000007
【図４】
2019153309.tif 000008
【図５】
2019153309.tif 000009
【図６】
2019153309.tif 000010
【図７】
2019153309.tif 000011
【図８】
2019153309.tif 000012
【図９】
2019153309.tif 000013