(57)【要約】【課題】  物体をピッキングしやすくできる。【解決手段】  本発明による物体をピッキングできる装置と、前記装置を制御する１つ以上の情報処理装置とを有する情報処理システムは、  前記物体の形状を示す形状データを取得する取得部と、  前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判定する判断部と、  前記平面に基づいて、前記ピッキングを行う箇所を特定する特定部とを備える。【選択図】図１
2019126886.tif 000002
【特許請求の範囲】
【請求項１】
物体をピッキングできる装置と、前記装置を制御する１つ以上の情報処理装置とを有する情報処理システムであって、
前記物体の形状を示す形状データを取得する取得部と、
前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断部と、
前記平面に基づいて、前記ピッキングを行う箇所を特定する特定部と
を備える情報処理システム。
【請求項２】
前記特定部は、
前記平面の外周を構成する境界線からオフセットした線分を生成する請求項１に記載の情報処理システム。
【請求項３】
前記特定部は、
前記平面が中空を含む形状であると、
前記平面の内周を構成する境界線からオフセットした線分を生成する請求項１又は２に記載の情報処理システム。
【請求項４】
前記特定部は、
前記平面に他の面が干渉する場合には、前記平面と、前記他の面との境界線を前記平面に射影した射影線からオフセットした線分を生成する請求項１乃至３のいずれか１項に記載の情報処理システム。
【請求項５】
前記特定部は、前記線分に基づいて、前記ピッキングを行う箇所を特定する請求項２乃至４のいずれか１項に記載の情報処理システム。
【請求項６】
物体をピッキングできる装置と、前記装置を制御する１つ以上の情報処理装置とを有する情報処理システムが行うピッキング箇所特定方法であって、
情報処理システムが、前記物体の形状を示す形状データを取得する取得手順と、
情報処理システムが、前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断手順と、
情報処理システムが、前記平面に基づいて、前記ピッキングを行う箇所を特定する特定手順と
を含むピッキング箇所特定方法。
【請求項７】
物体をピッキングできる装置と、前記装置を制御する１つ以上の情報処理装置とを有するコンピュータにピッキング箇所特定方法を実行させるためのプログラムであって、
コンピュータが、前記物体の形状を示す形状データを取得する取得手順と、
コンピュータが、前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断手順と、
コンピュータが、前記平面に基づいて、前記ピッキングを行う箇所を特定する特定手順と
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、ピッキング箇所特定方法及びプログラムに関する。
【背景技術】
【０００２】
ロボット技術等によって、部品等の物体を把持する、又は、物体を吸着して、ロボットアーム等で物体をピッキング（ｐｉｃｋｉｎｇ）する方法が知られている。
【０００３】
例えば、情報処理システムは、まず、第１のセンサ部で対象物体を撮影した画像等に基づいて３次元情報を取得し、第２のセンサ部で対象物体の２次元情報を取得する。さらに、情報処理システムは、第１のセンサ部で取得できる情報に基づいて対象物体を計測し、このようにして得られる計測結果と、対象物体のモデル情報とを組み合わせて位置姿勢を算出する。そして、情報処理システムは、算出された位置姿勢で第２のセンサ部を用いて情報を取得し、取得した情報及びモデル情報に基づいて対象物体の３次元位置姿勢を計測する。このようにして、ピッキングにおいて高精度な制御を行う方法が知られている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の方法では、ピッキングの対象となる物体において、ピッキングを行う箇所が考慮されていない場合が多い。すなわち、従来の方法では、形状等に基づいて、物体のどの部分でピッキングを行うのが適切であるかを判断しないため、物体をピッキングできない場合がある。
【０００５】
本発明の一態様は、物体をピッキングしやすくできることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態による
物体をピッキングできる装置と、前記装置を制御する１つ以上の情報処理装置とを有する情報処理システムは、
前記物体の形状を示す形状データを取得する取得部と、
前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断部と、
前記平面に基づいて、前記ピッキングを行う箇所を特定する特定部と
を備えることを特徴とする。
【発明の効果】
【０００７】
本発明の実施形態によって、物体をピッキングしやすくできる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報処理システムの全体構成例を示す概要図である。
【図２】本実施形態に係る情報処理システムにおける情報処理装置等のハードウェア構成例を示すブロック図である。
【図３】本実施形態に係る情報処理システムの機能構成例を示す機能ブロック図である。
【図４】本実施形態に係る情報処理システムによる全体処理例を示すフローチャートである。
【図５】本実施形態に係る情報処理システムによる候補箇所を特定する処理例を示すフローチャートである。
【図６】本実施形態に係る情報処理システムによる条件判定処理例を示すフローチャートである。
【図７】本実施形態に係る情報処理システムが吸着部を吸着できる大きさがある面と判断する例を示す図である。
【図８】本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図（その１）である。
【図９】本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図（その２）である。
【図１０】本実施形態に係る情報処理システムが射影点を用いてピッキングを行うと干渉すると判断する例を示す図である。
【図１１】本実施形態に係る情報処理システムによる平面上におけるオフセットされた線分の生成例を示すフローチャートである。
【図１２】本実施形態に係る情報処理システムによる境界線に対してオフセットした線分の生成例を示す図である。
【図１３】本実施形態に係る情報処理システムによる交点で線分をカットする例を示す図である。
【図１４】本実施形態に係る情報処理システムによる線分を延長させて交点を生成する例を示す図である。
【図１５】本実施形態に係る干渉の例を示す図である。
【図１６】本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示すフローチャートである。
【図１７】本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示す図である。
【図１８】本実施形態に係る情報処理システムによる射影例を示す図である。
【図１９】本実施形態に係る情報処理システムによる優先順位の決定例を示す図（その１）である。
【図２０】本実施形態に係る情報処理システムによる優先順位の決定例を示す図（その２）である。
【発明を実施するための形態】
【０００９】
以下、発明を実施するための最適な形態について、図面を参照して説明する。
【００１０】
＜全体構成例＞
図１は、本実施形態に係る情報処理システムの全体構成例を示す概要図である。以下、図示するような物体１１をピッキングするための情報処理システム１０を例に説明する。図示するように、情報処理システム１０は、例えば、物体をピッキングできる装置の例であるロボット８と、情報処理装置の例であるＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１４とを有する。
【００１１】
図示する例では、ロボット８は、物体１１を吸着し、物体１１が置かれる床又は部品箱等から物体１１を持ち上げることができる（図では、Ｚ軸方向に持ち上げる）。そして、ロボット８は、ＰＣ１４による制御に基づいて、物体１１を所定の場所へ移動させる（図示する例では、物体１１は、Ｘ‐Ｙ平面上において異なる場所へ移動する）。
【００１２】
例えば、物体１１は、工場等における製造過程で用いられる部品等である。したがって、ロボット８は、部品等の物体１１をピッキングし、組み合わせる等によって製品を製造する。なお、物体１１は、部品以外の種類でもよい。例えば、物体１１は、食品小売等に用いられる箱等でもよい。なお、物体１１は、ロボット８が持ち上げられる程度の重さであるのが望ましい。
【００１３】
以下、図示するように、ロボット８は、物体１１を吸着させて持ち上げるとする。なお、以下の説明では、ロボット８が物体１１を吸着するための機構、すなわち、ロボット８と物体１１の接触面（以下「吸着部」という。）は、円形であって、半径Ｒであるとする。また、半径Ｒ等の仕様は、あらかじめＰＣ１４に入力されるとする。
【００１４】
＜ハードウェア構成例＞
図２は、本実施形態に係る情報処理システムにおける情報処理装置等のハードウェア構成例を示すブロック図である。まず、ＰＣ１４は、図示するように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２４、ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）２６、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２８、不揮発ＲＡＭ３０、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）３２及びＩ／Ｏ３４等を有する。また、図示するように、ロボット８との間には、ロボットコントローラ１６等があってもよい。
【００１５】
ＣＰＵ２４は、演算装置及び制御装置の例である。
【００１６】
ＲＯＭ２６、ＲＡＭ２８及び不揮発ＲＡＭ３０は、記憶装置の例である。すなわち、ＰＣ１４は、いわゆる主記憶装置を有する。さらに、ＰＣ１４には、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）等の補助記憶装置があってもよい。
【００１７】
Ｉ／Ｏ３２及びＩ／Ｏ３４は、いわゆるインタフェース（ｉｎｔｅｒｆａｃｅ）である。例えば、Ｉ／Ｏ３２及びＩ／Ｏ３４は、コネクタ及びＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等である。したがって、図示するように、Ｉ／Ｏ３２及びＩ／Ｏ３４は、ロボットコントローラ１６等の外部装置を接続させたり、外部装置とデータを送受信したりする。
【００１８】
ロボットコントローラ１６は、ロボット８を制御するための電子回路等である。例えば、ＰＣ１４は、ロボットコントローラ１６に対してロボット８を動作させるための命令等を示す信号を送信する。このような信号を受信すると、ロボットコントローラ１６は、信号に基づいてロボット８を動作させる。
【００１９】
なお、ハードウェア構成は、図示する構成に限られない。例えば、ＰＣ１４は、図示するような構成に更に演算装置、制御装置又は記憶装置等を有してもよい。また、ロボットコントローラ１６は、ＰＣ１４又はロボット８等が有してもよい。
【００２０】
＜機能構成例＞
図３は、本実施形態に係る情報処理システムの機能構成例を示す機能ブロック図である。例えば、情報処理システム１０は、図示するように、取得部１０Ｆ１、判断部１０Ｆ２及び特定部１０Ｆ３を備える機能構成である。
【００２１】
取得部１０Ｆ１、判断部１０Ｆ２及び特定部１０Ｆ３は、ＰＣ１４が備えるＣＰＵ２４が、ＲＡＭ２８を作業領域として利用し、ＲＯＭ２６等に格納されているプログラムを実行することで実現する。
【００２２】
取得部１０Ｆ１は、物体１１の形状を示す形状データＤ１を取得する取得手順を行う。
【００２３】
判断部１０Ｆ２は、取得部１０Ｆ１が取得する形状データＤ１に基づいて、物体１１の形状のうち、平面となる部分を判断する判断手順を行う。
【００２４】
特定部１０Ｆ３は、判断部１０Ｆ２によって判断された平面に基づいて、ロボット８がピッキングを行う箇所を特定する特定手順を行う。
【００２５】
＜全体処理例＞
図４は、本実施形態に係る情報処理システムによる全体処理例を示すフローチャートである。
【００２６】
＜形状データの取得例＞（ステップＳ１）
ステップＳ１では、情報処理システムが備える取得部１０Ｆ１は、形状データを取得する。例えば、形状データは、物体１１の形状を示すＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）データ等である。すなわち、形状データは、物体１１をＣＡＤモデルで示し、物体１１を３角形ポリゴン（ｐｏｌｙｇｏｎ）（以下単に「ポリゴン」という。）等で示す。以下、ポリゴンを３角形とする例で説明するが、ポリゴンは、３角形以外の多角形でもよい。
【００２７】
なお、形状データは、ＣＡＤデータでなくともよい。具体的には、形状データは、物体１１の３次元形状が得られるデータであれば、形式は問わない。したがって、形状データは、いわゆる３次元計測器等で物体１１を計測した結果等でもよい。
【００２８】
以下、物体１１は、形状データによってＣＡＤモデルが示される例で説明する。
【００２９】
＜平面の判断例＞（ステップＳ２）
ステップＳ２では、情報処理システムが備える判断部１０Ｆ２は、形状データに基づいて、物体１１において、いわゆる平面といえる部分を判断する。具体的には、情報処理システムが備える判断部１０Ｆ２は、例えば、以下のような方法で判断する。
・まず、情報処理システムが備える判断部１０Ｆ２は、面の方向が一致し、かつ、隣接するポリゴンの組み合わせが、１つの平面に属すと判断する。
・次に、情報処理システムが備える判断部１０Ｆ２は、上記の処理を形状データに対して繰り返す。
・続いて、情報処理システムが備える判断部１０Ｆ２は、平面のうち、十分面積の大きいものを抽出する（ポリゴンの組み合わせのうち、１個でも面積が大きければ、抽出対象となる）。なお、どの程度の面積であると、抽出対象、すなわち、平面と判断するかは、あらかじめ閾値等が設定される。
以上のような処理を行うと、情報処理システムが備える判断部１０Ｆ２は、平面を抽出することができる。なお、判断方法は、上記の方法に限られず、辺又は角のように面積が狭い範囲でなく、一定以上の面積となる部分を抽出できる方法であればよい。
【００３０】
＜候補箇所の特定例＞（ステップＳ３）
ステップＳ３では、情報処理システムが備える特定部１０Ｆ３は、物体１１が有する平面において、ロボット８がピッキングを行う候補となる箇所を特定する。以下、ステップＳ３で特定される物体１１上のピッキングを行う候補となる箇所を「候補箇所」という。
【００３１】
なお、ステップＳ３は、ステップＳ２で複数の平面が抽出される場合には、抽出された各平面に対して行われる。そのため、ステップＳ３によって、各平面に対して候補箇所がそれぞれ特定される。
【００３２】
ステップＳ３は、例えば、以下のような処理である。以下、ステップＳ２で抽出される複数の平面のうち、１つの平面に対する処理としてステップＳ３を説明する。
【００３３】
図５は、本実施形態に係る情報処理システムによる候補箇所を特定する処理例を示すフローチャートである。
【００３４】
＜重心位置の算出例＞（ステップＳ３１）
ステップＳ３１では、情報処理システムが備える特定部１０Ｆ３は、重心位置を算出する。例えば、形状データ等に、あらかじめ物体１１の材料又は密度等を示すデータが入力されていると、情報処理システムが備える特定部１０Ｆ３は、物体１１の重心位置を示す座標等を計算することができる。
【００３５】
＜平面に重心位置を射影させる例＞（ステップＳ３２）
ステップＳ３２では、情報処理システムが備える特定部１０Ｆ３は、平面に重心位置を射影させる。つまり、情報処理システムが備える特定部１０Ｆ３は、ステップＳ２で平面と判定された面上に重心位置を射影させた点（以下「射影点」という。）の座標等を計算する。
【００３６】
＜条件判定例＞（ステップＳ３３）
ステップＳ３３では、情報処理システムが備える特定部１０Ｆ３は、条件判定を行う。例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように条件判定を行う。
【００３７】
図６は、本実施形態に係る情報処理システムによる条件判定処理例を示すフローチャートである。
【００３８】
＜吸着部を吸着できる大きさがある面か否かの判断例＞（ステップＳ３３１）
ステップＳ３３１では、情報処理システムが備える特定部１０Ｆ３は、吸着部を吸着できる大きさがある面か否かを判断する。つまり、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３２で算出される射影点が投影された平面がピッキングを行える広さがあるか否かを判断する。
【００３９】
例えば、ステップＳ３３１では、情報処理システムが備える特定部１０Ｆ３は、以下のように判断する。
【００４０】
図７は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがある面と判断する例を示す図である。まず、ステップＳ３１によって、図示するような重心位置ＰＴ１が算出されたとする。さらに、物体１１において、面ＰＬ１がステップＳ２で平面と判定されたとする。そして、ステップＳ３２によって、面ＰＬ１上に、射影点ＰＴ２が射影されたとする。以下、ステップＳ３３１で判断対象となる面が面ＰＬ１である例で説明する。
【００４１】
例えば、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ２について、面ＰＬ１が下記（Ａ）乃至（Ｃ）の３つの条件をすべて満たすか否かによって、ステップＳ３３１の判断を行う。
（Ａ）  射影点ＰＴ２が面ＰＬ１の内側である。
【００４２】
例えば、上記（Ａ）は、射影点ＰＴ２が面ＰＬ１を構成するポリゴンのどれかの上に位置する、又は、射影点ＰＴ２が面ＰＬ１を構成するポリゴンの境界上であるか否かで判定される。すなわち、射影点ＰＴ２が面ＰＬ１を構成するポリゴンの境界内に位置する場合には、上記（Ａ）は、満たされていると判断される。
（Ｂ）  射影点ＰＴ２を中心とする半径Ｒの円周が、面ＰＬ１と交差しない。
【００４３】
例えば、上記（Ｂ）は、射影点ＰＴ２を中心として描かれる円と、面ＰＬ１のすべての境界線とが交差する点があるか否かで判定される。なお、ポリゴンの場合には、境界線は、すべて直線となる。すなわち、射影点ＰＴ２を中心として描かれる円と、面ＰＬ１のすべての境界線とが交差する点がない場合には、上記（Ｂ）は、満たされていると判断される。
（Ｃ）  射影点ＰＴ２を中心として描かれる半径Ｒの円の内側に、境界線がない。
【００４４】
例えば、上記（Ｃ）は、面ＰＬ１を構成する境界線が半径Ｒとなる円の内側にあるか否かで判定される。もし、面ＰＬ１が穴等の空洞を有する形状であると、穴等を構成する境界線が、面ＰＬ１の内側に存在する。また、面ＰＬ１が吸着部より狭いと、境界線は、円の内側となる。したがって、面ＰＬ１の境界線のうち、いずれの境界線も半径Ｒの内側にないと判断されると、上記（Ｃ）は、満たされていると判断される。
上記（Ａ）乃至（Ｃ）の条件をいずれも満たす場合には、射影点ＰＴ２で吸着すると、吸着部の円全体が面ＰＬ１内に収まる場合が多い。したがって、情報処理システムが備える特定部１０Ｆ３は、図７のように、上記（Ａ）乃至（Ｃ）のすべての条件を満たす場合には、吸着部を吸着できる大きさがある面と判断する（ステップＳ３３１でＹＥＳ）。一方で、例えば、以下のような場合には、情報処理システムが備える特定部１０Ｆ３は、吸着部を吸着できる大きさがない面と判断する（ステップＳ３３１でＮＯ）。
【００４５】
図８は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図（その１）である。図７と比較すると、図８は、射影点が射影された面が面ＰＬ２となる点が異なる。それ以外の点は、図７と同様とし、重複する説明を省略する。
【００４６】
図示するように、面ＰＬ２が吸着部より狭いと、ステップＳ３３１では、情報処理システムが備える特定部１０Ｆ３は、上記（Ｃ）を満たさないと判断する。したがって、情報処理システムが備える特定部１０Ｆ３は、図８のように上記（Ｃ）を満たさない場合には、吸着部を吸着できる大きさがない面と判断する（ステップＳ３３１でＮＯ）。
【００４７】
図９は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図（その２）である。図示するような場合も、情報処理システムが備える特定部１０Ｆ３は、吸着部を吸着できる大きさがない面と判断する（ステップＳ３３１でＮＯ）。
【００４８】
図９は、図７と比較すると、射影点の位置が異なり、射影点ＰＴ３は、図示するように、面ＰＬ３上において、端である点が異なる。それ以外の点は、図７と同様とし、重複する説明を省略する。
【００４９】
図示するように、射影点ＰＴ３を中心とした位置で吸着部が物体１１を吸着すると、吸着部の一部は、面ＰＬ３と接しない位置関係となる。このような場合には、ステップＳ３３１では、情報処理システムが備える特定部１０Ｆ３は、上記（Ｂ）及び上記（Ｃ）を満たさないと判断する。したがって、情報処理システムが備える特定部１０Ｆ３は、図９のような上記（Ｂ）及び（Ｃ）の条件を満たさない場合には、吸着部を吸着できる大きさがない面と判断する（ステップＳ３３１でＮＯ）。
【００５０】
図６に戻り、吸着部を吸着できる大きさがある面と判断すると（ステップＳ３３１でＹＥＳ）、情報処理システムは、ステップＳ３３２に進む。一方で、吸着部を吸着できる大きさがない面と判断すると（ステップＳ３３１でＮＯ）、情報処理システムは、ステップＳ３３４に進む。
【００５１】
＜射影点を用いてピッキングを行うと干渉するか否かの判断例＞（ステップＳ３３２）
ステップＳ３３２では、情報処理システムが備える特定部１０Ｆ３は、射影点を用いてピッキングを行うと干渉するか否かを判断する。つまり、ステップＳ３３２では、情報処理システムが備える特定部１０Ｆ３は、ピッキングを行うため、射影点に吸着部を移動させると、ロボットのいずれかの部位が物体と干渉するか否かを判断する。
【００５２】
例えば、ステップＳ３３２では、情報処理システムが備える特定部１０Ｆ３は、以下のように判断する。
【００５３】
図１０は、本実施形態に係る情報処理システムが射影点を用いてピッキングを行うと干渉すると判断する例を示す図である。図１０は、図７と比較すると、物体１１に、図示するような形状の部位１１Ｐ１がある例を示す。この例では、射影点ＰＴ４が射影される面は、面ＰＬ４であるとする。これら以外の点は、図７と同様とし、重複する説明を省略する。
【００５４】
図示する例において、ピッキングを行うために、吸着部が射影点ＰＴ４に向かって移動すると、吸着部は、部位１１Ｐ１に干渉する。したがって、図示するような場合には、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ４を用いてピッキングを行うと干渉すると判断する（ステップＳ３３２でＹＥＳ）。
【００５５】
具体的には、情報処理システムが備える特定部１０Ｆ３は、まず、面ＰＬ４の表側（図示する例では、Ｚ軸方向において上側となり、図で上方向に相当する。）に、面ＰＬ４とは別の面があるか否かを判断し、別の面をすべて抽出する。次に、情報処理システムが備える特定部１０Ｆ３は、抽出された別の面と、吸着部とが干渉するか否かを判断する。
【００５６】
例えば、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ４を中心として描かれる半径Ｒの円と、面ＰＬ４の表側にあるポリゴン（図示する例では、部位１１Ｐ１を構成するポリゴンである。）を面ＰＬ４上に射影した射影物とが干渉するか否かを判断する。図示する例では、射影点ＰＴ４を中心とする半径Ｒの円と、面ＰＬ４上に射影された部位１１Ｐ１を構成するポリゴンの射影物とが干渉するため、情報処理システムが備える特定部１０Ｆ３は、干渉すると判断する（ステップＳ３３２でＹＥＳ）。
【００５７】
なお、ステップＳ３３２における干渉の判断では、ポリゴンの境界線だけでなく、ポリゴンの内側も判断に用いられる。
【００５８】
一方で、例えば、図７のように、面ＰＬ１の表側に、面ＰＬ１とは別の面がない場合には、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ２を中心とする半径Ｒの円と、別の面を構成するポリゴンとが干渉しないため、情報処理システムが備える特定部１０Ｆ３は、干渉しないと判断する（ステップＳ３３２でＮＯ）。
【００５９】
＜条件を満たすと判定する例＞（ステップＳ３３３）
図６に戻り、ステップＳ３３３では、情報処理システムが備える特定部１０Ｆ３は、条件を満たすと判定する。
【００６０】
＜条件を満たさないと判定する例＞（ステップＳ３３４）
ステップＳ３３４では、情報処理システムが備える特定部１０Ｆ３は、条件を満たさないと判定する。
【００６１】
なお、図６に示す処理において、各判断、すなわち、ステップＳ３３１及びステップＳ３３２の順序は、図示する順序に限られない。つまり、ステップＳ３３１及びステップＳ３３２によって、２つの条件が判断されるのであれば、判断する順序は、図示する順序以外でもよい。
【００６２】
＜条件を満たすと判定されたか否かの判断例＞（ステップＳ３４）
図５に戻り、ステップＳ３４では、情報処理システムが備える特定部１０Ｆ３は、条件を満たすと判定されたか否かを判断する。具体的には、ステップＳ３３、すなわち、図６に示す処理が行われると、ステップＳ３３３又はステップＳ３３４のうち、いずれかが行われるため、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３３による判定結果に基づいて、条件を満たすと判定されたか否かが判断できる。
【００６３】
次に、条件を満たすと判定されたと判断すると（ステップＳ３４でＹＥＳ）、情報処理システムは、ステップＳ３１１に進む。一方で、条件を満たさないと判定されたと判断すると（ステップＳ３４でＮＯ）、情報処理システムは、ステップＳ３５に進む。
【００６４】
＜平面上におけるオフセット（ｏｆｆｓｅｔ）された線分の生成例＞（ステップＳ３５）
ステップＳ３５では、情報処理システムが備える特定部１０Ｆ３は、平面上において、オフセットされた線分を生成する。例えば、ステップＳ３５では、情報処理システムが備える特定部１０Ｆ３は、以下のように処理を行う。
【００６５】
図１１は、本実施形態に係る情報処理システムによる平面上におけるオフセットされた線分の生成例を示すフローチャートである。
【００６６】
＜平面を構成する境界線に対してオフセットした線分を生成する例＞（ステップＳ３５１）
ステップＳ３５１では、情報処理システムが備える特定部１０Ｆ３は、平面を構成する境界線に対してオフセットさせた線分を生成する。例えば、情報処理システムが備える特定部１０Ｆ３は、以下のような処理によってオフセットする線分を生成する。
【００６７】
図１２は、本実施形態に係る情報処理システムによる境界線に対してオフセットした線分の生成例を示す図である。まず、物体１１が、図示するような面ＰＬ５を有するとする。
【００６８】
この例では、面ＰＬ５を構成する境界線のうち、外周を構成する下辺Ｅ１、右辺Ｅ２、上辺Ｅ３及び左辺Ｅ４が、それぞれ境界線として抽出される。このような境界線は、例えば、以下のように抽出される。
【００６９】
まず、ステップＳ２で、平面が抽出される。図示する例では、面ＰＬ５が抽出される。そして、面ＰＬ５を構成するポリゴンには、他のポリゴンと隣接しないポリゴンが含まれる。このような隣接しないポリゴンを集めると、情報処理システムが備える特定部１０Ｆ３は、境界線を抽出できる。
【００７０】
なお、境界線は、物体の形状において、角張った部分等となるため、いわゆるエッジ（ｅｄｇｅ）と呼ばれる部分に相当する。
【００７１】
以上のような処理で、情報処理システムが備える特定部１０Ｆ３は、境界線を抽出できる。これらの境界線に対して、情報処理システムが備える特定部１０Ｆ３は、例えば、図示するように、内側にオフセットした線分Ｌ１を生成する。
【００７２】
なお、線分Ｌ１を各境界線からどの程度オフセットさせる、すなわち、オフセット量は、あらかじめ設定できるとする。例えば、オフセット量には、半径Ｒ等が設定される。
【００７３】
また、図示するように面ＰＬ５が中空を含む形状であると、面ＰＬ５には、内周が含まれる。このような場合には、情報処理システムが備える特定部１０Ｆ３は、例えば、図示するように、内周を構成する境界線の外側に対してオフセットさせた線分Ｌ２を生成してもよい。具体的には、情報処理システムが備える特定部１０Ｆ３は、まず、内周を構成する辺Ｅ５、Ｅ６、Ｅ７及びＥ８を境界線として抽出する。このように、境界線が内周を構成する場合には、境界線に対して、情報処理システムが備える特定部１０Ｆ３は、例えば、図示するように、外側にオフセットした線分Ｌ２を生成する。
【００７４】
以下、図示する線分Ｌ１及び線分Ｌ２を処理対象にする例で説明する。
【００７５】
＜線分に交点があるか否かの判断例＞（ステップＳ３５２）
図１１に戻り、ステップＳ３５２では、情報処理システムが備える特定部１０Ｆ３は、線分に交点があるか否かを判断する。例えば、図１２に示す例では、線分Ｌ１に図示するような交点ＣＰ１があるため、情報処理システムが備える特定部１０Ｆ３は、線分Ｌ１に対しては、交点があると判断する（ステップＳ３５２でＹＥＳ）。一方で、線分Ｌ２には、交点がないため、情報処理システムが備える特定部１０Ｆ３は、線分Ｌ２に対しては、交点がないと判断する（ステップＳ３５２でＮＯ）。
【００７６】
次に、線分に交点があると判断すると（ステップＳ３５２でＹＥＳ）、情報処理システムは、ステップＳ３５３に進む。一方で、線分に交点がないと判断すると（ステップＳ３５２でＮＯ）、情報処理システムは、ステップＳ３５４に進む。
【００７７】
＜交点で線分をカットする例＞（ステップＳ３５３）
ステップＳ３５３では、情報処理システムが備える特定部１０Ｆ３は、交点で線分をカットする。例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように処理を行う。
【００７８】
図１３は、本実施形態に係る情報処理システムによる交点で線分をカットする例を示す図である。図示する例は、図１２における線分Ｌ１に対してステップＳ３５３が行われた場合の処理結果例を示す。
【００７９】
図１２と比較すると、図１３は、線分Ｌ１が各交点ＣＰ１から外周を構成する各境界線までカットされた点が異なる。このように、線分Ｌ１に交点があると判断された場合には、線分Ｌ１は、交点ＣＰ１から外周を構成する境界線までの部分がカットされる。
【００８０】
＜線分を延長させて交点を生成する例＞（ステップＳ３５４）
図１１に戻り、ステップＳ３５４では、情報処理システムが備える特定部１０Ｆ３は、線分を延長させて交点を生成する。例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように処理を行う。
【００８１】
図１４は、本実施形態に係る情報処理システムによる線分を延長させて交点を生成する例を示す図である。図示する例は、図１２における線分Ｌ２に対してステップＳ３５４が行われた場合の処理結果例を示す。具体的には、図示するように、情報処理システムが備える特定部１０Ｆ３は、各線分Ｌ２を延長させる。そして、情報処理システムが備える特定部１０Ｆ３は、各線分Ｌ２が交わり、交点ＣＰ２が発生する程度まで各線分Ｌ２を延長させる。このように、線分Ｌ２に交点がないと判断された場合には、線分Ｌ２は、交点ＣＰ２が発生する程度まで延長される。
【００８２】
＜他のポリゴンに基づくオフセットされた線分の生成例＞（ステップＳ３６）
図５に戻り、ステップＳ３６では、他のポリゴンに基づいて、オフセットされた線分を生成する。
【００８３】
例えば、ピッキングを行おうとする面とは、別の面がある場合は、例えば、以下のような場合となる。
【００８４】
図１５は、本実施形態に係る干渉の例を示す図である。以下、面ＰＬ６が処理対象の平面となる例で説明する。また、図示する例では、面ＰＬ６とは別に、面ＰＬ７と、面ＰＬ８とがあるとする。図示するように、面ＰＬ７及び面ＰＬ８は、面ＰＬ６上で吸着部が吸着する箇所によっては、吸着部と、面ＰＬ７又は面ＰＬ８とが干渉する可能性のある面である。
【００８５】
また、図示する例では、面ＰＬ７は、面ＰＬ８よりＸ軸において、境界線が左側にある面となる。
【００８６】
吸着部が面ＰＬ７等と干渉せず、ピッキングを行うには、例えば、円柱ＣＲで示す空間が必要となる。なお、図示する例は、ピッキングを行う箇所をできるだけ面ＰＬ７側（図では、右側となる。）に近づけた例である。したがって、吸着部がピッキングを行う箇所、すなわち、円柱ＣＲが図示する例より右側となると、ピッキングを行う際に、吸着部が面ＰＬ７と干渉する。
【００８７】
また、図示するような円柱ＣＲの位置より、右側となると、吸着部は、面ＰＬ８には干渉しなくとも、面ＰＬ７に干渉する場合がある。以下、面ＰＬ７がＸ軸において、境界線が最も左側に位置する面であるとする。
【００８８】
図示するような状態を求めるには、面ＰＬ７を構成する境界線を面ＰＬ６上に射影させた射影線Ｌ４と、射影線Ｌ４からオフセット量分オフセットさせた線分Ｌ５とを求める必要がある。すなわち、線分Ｌ５は、Ｘ軸において左側から順に右側に求めていくとすると、吸着部がピッキングを行う箇所のうち、最初に干渉が発生する箇所を示す線分である。この例では、面ＰＬ７の境界線が最も左側にある例であるため、図示するような円柱ＣＲの位置は、面ＰＬ７との干渉を考慮した円柱ＣＲの位置を求めると、面ＰＬ８等の面にも吸着部が干渉しない箇所である。
【００８９】
このような状態を求めるには、例えば、情報処理システムが備える特定部１０Ｆ３は、以下のような処理で射影線Ｌ４及び線分Ｌ５等を求める。
【００９０】
図１６は、本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示すフローチャートである。
【００９１】
＜法線方向における他の面を構成するポリゴンの特定例＞（ステップＳ３６１）
ステップＳ３６１では、情報処理システムが備える特定部１０Ｆ３は、法線方向（図１５におけるＺ軸方向である。）における他の面を構成するポリゴンを特定する。すなわち、情報処理システムが備える特定部１０Ｆ３は、処理対象となる平面（図１５では、面ＰＬ６である。）の上側に、他の面があるか否かを判定し、他の面がある場合には、他の面を構成するポリゴンを特定する。
【００９２】
図１５に示す例では、情報処理システムが備える特定部１０Ｆ３は、他の面として、面ＰＬ７及び面ＰＬ８を特定する。
【００９３】
＜隣接するポリゴンのそれぞれの法線が平面の法線方向に対して逆向き、又は、いずれか一方のポリゴンの法線が平面の法線方向に直交するポリゴンの組み合わせを特定する例＞（ステップＳ３６２）
ステップＳ３６２では、情報処理システムが備える特定部１０Ｆ３は、隣接するポリゴンのそれぞれの法線が平面の法線方向に対して逆向き、又は、いずれか一方のポリゴンの法線が平面の法線方向に直交するポリゴンの組み合わせを特定する。
【００９４】
＜隣接するポリゴンが有する隣接線分を平面に射影する例＞（ステップＳ３６３）
ステップＳ３６３では、情報処理システムが備える特定部１０Ｆ３は、隣接するポリゴンが有する隣接線分を平面に射影する。
【００９５】
＜射影線からオフセットした線分の生成例＞（ステップＳ３６４）
ステップＳ３６４では、情報処理システムが備える特定部１０Ｆ３は、射影線からオフセットした線分を生成する。
【００９６】
例えば、図１６に示す各ステップは、以下のように処理される。
【００９７】
図１７は、本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示す図である。まず、図示する例では、図１５と同様に、面ＰＬ６が処理対象の平面となる例である。この例において、ステップＳ３６１によって、情報処理システムが備える特定部１０Ｆ３は、面ＰＬ７を構成するポリゴンＰＹ１及びポリゴンＰＹ２を特定する。
【００９８】
図示するように、ポリゴンＰＹ１及びポリゴンＰＹ２は、隣接するポリゴンである。また、この例では、ポリゴンＰＹ１及びポリゴンＰＹ２は、図示するように、隣接線分Ｌ３で隣接する。
【００９９】
ステップＳ３６２では、図示するように、隣接するポリゴンＰＹ１及びポリゴンＰＹ２の組み合わせが処理対象となる。そして、ステップＳ３６２では、情報処理システムが備える特定部１０Ｆ３は、まず、各ポリゴンの法線を特定する。図示する例では、ポリゴンＰＹ１の法線は、図示するように、法線ＬＶ１となる。同様に、ポリゴンＰＹ２の法線は、図示するように、法線ＬＶ２となる。
【０１００】
これらの法線は、各ポリゴンの表面側で特定される。なお、ポリゴンの表及び裏は、ポリゴンを示すデータにあらかじめ入力されるため、情報処理システムが備える特定部１０Ｆ３は、データに基づいてポリゴンの表及び裏を判定できる。
【０１０１】
次に、ステップＳ３６２では、情報処理システムが備える特定部１０Ｆ３は、各法線が面ＰＬ６の法線方向に対して逆向きであるか否かを判断する。まず、面ＰＬ６の法線方向は、Ｚ軸方向であり、図では、上向き方向を示す。これに対して、法線ＬＶ２は、面ＰＬ６の法線方向とは逆向きであり、図では、下向き方向である。ゆえに、ステップＳ３６２では、ポリゴンＰＹ１及びポリゴンＰＹ２の組み合わせが特定される。
【０１０２】
なお、法線が直交するポリゴンの組み合わせも、ステップＳ３６２で特定される。
【０１０３】
以上のように、ステップＳ３６２では、情報処理システムが備える特定部１０Ｆ３は、面ＰＬ６と対向する向きのポリゴンを特定し、特定されるポリゴンと隣接するポリゴンの組み合わせを特定する。このような隣接するポリゴンの組み合わせを特定できると、情報処理システムが備える特定部１０Ｆ３は、隣接線分Ｌ３を特定できる。
【０１０４】
次に、ステップＳ３６３では、情報処理システムが備える特定部１０Ｆ３は、隣接線分Ｌ３を面ＰＬ６上に射影する。図示する例では、この射影によって生成される線分が、射影線Ｌ４となる。例えば、図示するように、射影線Ｌ４は、Ｚ軸方向において隣接線分Ｌ３を面ＰＬ６にほぼ垂直に降ろした位置に射影されて生成される。この射影線Ｌ４が、面ＰＬ６と、他の面（ポリゴンＰＹ２で構成される面ＰＬ７である。）との境界線を示す。
【０１０５】
続いて、ステップＳ３６４では、情報処理システムが備える特定部１０Ｆ３は、射影線Ｌ４を基準にオフセットした位置に線分Ｌ５を生成する。なお、オフセットする方向は、図示するように、ポリゴンがあるのとは反対の方向である。図では、射影線Ｌ４より右側にポリゴンがあるため、オフセットする方向は、射影線Ｌ４より左側となる。以上のようにして、情報処理システムが備える特定部１０Ｆ３は、射影線Ｌ４から半径Ｒ分左側へオフセットさせた位置に線分Ｌ５を生成する。
【０１０６】
＜射影例＞（ステップＳ３７）
図５に戻り、ステップＳ３７では、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３５及びステップＳ３６で生成された線分に基づいて重心位置を射影する。例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように処理を行う。
【０１０７】
図１８は、本実施形態に係る情報処理システムによる射影例を示す図である。まず、図示する例では、面ＰＬ９が処理対象であるとする。そして、ステップＳ３５及びステップＳ３６等によって、図示するような線分Ｌ６が生成されたとする。さらに、この例では、重心位置ＰＴ１が、線分Ｌ６上に射影されて、射影点ＰＴ５、射影点ＰＴ６、射影点ＰＴ７、射影点ＰＴ８、射影点ＰＴ９、射影点ＰＴ１０、射影点ＰＴ１１及び射影点ＰＴ１２が生成されるとする。
【０１０８】
＜条件判定例＞（ステップＳ３８）
図５に戻り、ステップＳ３８では、情報処理システムが備える特定部１０Ｆ３は、条件判定を行う。例えば、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３３と同様の処理によって、ステップＳ３７で定まるそれぞれの射影点について条件判定を行う。
【０１０９】
＜条件を満たすと判定されたか否かの判断例＞（ステップＳ３９）
ステップＳ３９では、情報処理システムが備える特定部１０Ｆ３は、各射影点が条件を満たすと判定されたか否かを判断する。具体的には、ステップＳ３８、すなわち、図６に示す処理が行われると、ステップＳ３３３又はステップＳ３３４が行われるため、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３３による判定結果に基づいて、条件を満たすと判定されたか否かが判断できる。
【０１１０】
次に、条件を満たすと判定されたと判断すると（ステップＳ３９でＹＥＳ）、情報処理システムは、ステップＳ３１０に進む。一方で、条件を満たさないと判定されたと判断すると（ステップＳ３９でＮＯ）、情報処理システムは、処理を終了する。
【０１１１】
＜最近点の選択例＞（ステップＳ３１０）
ステップＳ３１０では、情報処理システムが備える特定部１０Ｆ３は、最近点を選択する。以下、図１８に示す射影点ＰＴ５乃至射影点ＰＴ１２のすべての射影点が、すべて条件を満たす点であると判定される場合を例に説明する。そして、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ５乃至射影点ＰＴ１２のうち、各射影点と、重心位置ＰＴ１との距離が最も短くなる点、すなわち、最近点を算出する。図示する例では、射影点ＰＴ５が重心位置ＰＴ１に最も近い点であるため、情報処理システムが備える特定部１０Ｆ３は、射影点ＰＴ５を最近点と算出する。
【０１１２】
＜最近点又は条件を満たす点を候補箇所に指定する例＞（ステップＳ３１１）
ステップＳ３１１では、情報処理システムが備える特定部１０Ｆ３は、最近点又は条件を満たす点を候補箇所に指定する。つまり、情報処理システムが備える特定部１０Ｆ３は、ステップＳ３１０で選択された最近点又はステップＳ３３で条件を満たすと判定された点を候補箇所と指定する。
【０１１３】
＜優先順位の決定例＞（ステップＳ４）
図４に戻り、ステップＳ４では、情報処理システムが備える特定部１０Ｆ３は、候補箇所の優先順位を決定する。すなわち、ステップＳ２によって、複数の平面があると判断されると、情報処理システムが備える特定部１０Ｆ３は、各平面に対してステップＳ３を行う。そのため、ステップＳ３によって、平面ごとに、候補箇所が特定される。そして、ステップＳ４では、情報処理システムが備える特定部１０Ｆ３は、それぞれの候補箇所に対して、優先順位を示す数値を設定する。
【０１１４】
優先順位は、ピッキングに最適な箇所と判断される順で設定される。具体的には、例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように優先順位を決定する。
【０１１５】
図１９は、本実施形態に係る情報処理システムによる優先順位の決定例を示す図（その１）である。例えば、図１９（Ａ）に示すような状態にすると、物体１１は、Ｙ軸方向に長い形状、いわゆる直方体であるとする。
【０１１６】
ピッキングに最適な箇所は、例えば、物体１１を転がした際に最も表になりやすい平面である。このような平面は、例えば、面積を比較して特定できる。すなわち、情報処理システムが備える特定部１０Ｆ３は、物体１１が有する平面のうち、面積が広い順に優先順位を決定する。以下、物体１１が有する平面のうち、面１１ＰＬ１及び面１１ＰＬ２に、ステップＳ３によって候補箇所が指定された例で説明する。また、この例では、面１１ＰＬ１の方が、面１１ＰＬ２より面積が広いとする。
【０１１７】
物体１１は、図示するように、置き方によって、図１９（Ａ）のようにもなり、一方で、物体１１は、図１９（Ｂ）のような状態にもなりうる。すなわち、図１９（Ａ）に示す物体１１は、Ｐｉｔｃｈ回転（図では、Ｘ軸回りの回転となる。）させると、図１９（Ｂ）に示す物体１１となる。
【０１１８】
面１１ＰＬ１のように面積が広い平面の方が、面１１ＰＬ２等の面積が狭い面より、図１９（Ａ）に示すように、表（図では、上方向となる。）となる確率が高い。このように、表になる確率が高い平面を用いてピッキングを行うと、情報処理システムが備える特定部１０Ｆ３は、ロボット８によって、より物体をピッキングしやすくできる。
【０１１９】
したがって、例えば、情報処理システムが備える特定部１０Ｆ３は、面１１ＰＬ１のように面積が広い平面を用いる候補箇所が高い優先順位となるように決定する。
【０１２０】
また、例えば、情報処理システムが備える特定部１０Ｆ３は、以下のように優先順位を決定してもよい。
【０１２１】
図２０は、本実施形態に係る情報処理システムによる優先順位の決定例を示す図（その２）である。
【０１２２】
ピッキングに最適な箇所は、例えば、吸着部の姿勢が変化しても、物体１１のバランスが取りやすい平面である。例えば、図示するように、吸着部が、図１９等の姿勢から９０°Ｐｉｔｃｈ回転（図では、Ｘ軸回りの回転となる。）する場合がある。以下、図示するような吸着部の姿勢を例に説明する。
【０１２３】
ピッキングに最適な箇所となる平面は、例えば、重心位置ＰＴ１からの距離を比較して特定できる。すなわち、情報処理システムが備える特定部１０Ｆ３は、物体１１が有する平面のうち、重心位置ＰＴ１からの距離が短い順に優先順位を決定する。以下、物体１１が有する平面のうち、面１１ＰＬ３及び面１１ＰＬ４に、ステップＳ３によって候補箇所が指定された例で説明する。また、この例では、面１１ＰＬ３上の候補箇所の方が、面１１ＰＬ４上の候補箇所より、重心位置ＰＴ１からの距離が短いとする。
【０１２４】
このように、図示するような姿勢に吸着部がなった場合では、面１１ＰＬ３を用いるピッキングの方が、面１１ＰＬ４を用いる場合より、物体１１がバランスを取りやすく、落ちにくい。
【０１２５】
したがって、例えば、情報処理システムが備える特定部１０Ｆ３は、面１１ＰＬ３のように重心位置ＰＴ１からの距離が短い平面を用いる候補箇所が高い優先順位となるように決定する。
【０１２６】
＜まとめ＞
まず、情報処理システム１０は、ＣＡＤデータ又は画像データ等の形状データＤ１から物体１１がどういった形状であるかを把握できる。
【０１２７】
ロボット８によるピッキングは、いわゆるロボットハンド等と呼ばれる機構で物体１１を把持して物体１１を持ち上げる方法と、本実施形態のように、いわゆるバキュームと呼ばれる機構で物体を吸着させて物体１１を持ち上げる方法とがある。
【０１２８】
特に、物体１１を吸着させるピッキングにおいて、ピッキングを安定して行うには、ピッキングされる箇所が平面であるのが望ましい。すなわち、ピッキングが行われる箇所は、平面であると、吸着部が物体１１に吸着しやすいため、持ち上げた際等に物体１１が落ちにくい。そこで、情報処理システム１０は、判断部１０Ｆ２によって、物体１１の形状のうち、平面といえる部分を判断する。以降、判断部１０Ｆ２によって平面と判断された部分が処理対象となるため、情報処理システム１０は、平面といえる箇所でピッキングを行うことができる。したがって、情報処理システム１０は、判断部１０Ｆ２によって平面と判断された部分からピッキングを行う箇所を特定する。
【０１２９】
なお、特定部１０Ｆ３は、外周、内周又は射影線の少なくともいずれか１つからオフセットした線分を用いてピッキングを行う箇所を特定するのが望ましい。このような線分を用いると、情報処理システム１０は、ピッキングの際に干渉する可能性のある突起部等を回避できるため、物体１１がピッキング中に他の面等に干渉し、物体１１が落ちたり、傷ついたりするのを少なくできる。
【０１３０】
また、情報処理システム１０は、オフセットした線分を用いると、物体１１の端等でピッキングが行われるのを回避できるため、吸着部が接触する面積が広い箇所でピッキングができ、情報処理システム１０は、ロボット８によって、より物体をピッキングしやすくできる。
【０１３１】
＜その他の実施形態＞
なお、本発明に係る各処理の全部又は一部は、低水準言語又は高水準言語で記述され、コンピュータにピッキング箇所特定方法を実行させるためのプログラムによって実現されてもよい。すなわち、プログラムは、情報処理装置又は１以上の情報処理装置を含む情報処理システム等のコンピュータに各処理を実行させるためのコンピュータプログラムである。
【０１３２】
したがって、プログラムに基づいてピッキング箇所特定方法が実行されると、コンピュータが有する演算装置及び制御装置は、各処理を実行するため、プログラムに基づいて演算及び制御を行う。また、コンピュータが有する記憶装置は、各処理を実行するため、プログラムに基づいて、処理に用いられるデータを記憶する。
【０１３３】
また、プログラムは、コンピュータが読み取り可能な記録媒体に記録されて頒布することができる。なお、記録媒体は、磁気テープ、フラッシュメモリ、光ディスク、光磁気ディスク又は磁気ディスク等のメディアである。さらに、プログラムは、電気通信回線を通じて頒布することができる。
【０１３４】
なお、本発明に係る実施形態は、１以上の情報処理装置を有する情報処理システムによって実現されてもよい。また、複数の情報処理装置を有する情報処理システムは、各処理を冗長、分散、並列、仮想化又はこれらを組み合わせて実行してもよい。
【０１３５】
以上、実施形態における一例について説明したが、本発明は、上記実施形態に限定されない。すなわち、本発明の範囲内で種々の変形及び改良が可能である。
【符号の説明】
【０１３６】
８  ロボット
１０  情報処理システム
１１  物体
１４  ＰＣ
Ｒ  半径
１０Ｆ１  取得部
１０Ｆ２  判断部
１０Ｆ３  特定部
Ｄ１  形状データ
【先行技術文献】
【特許文献】
【０１３７】
【特許文献１】特開２０１４‐４６４３３号公報
【図１】
2019126886.tif 000003
【図２】
2019126886.tif 000004
【図３】
2019126886.tif 000005
【図４】
2019126886.tif 000006
【図５】
2019126886.tif 000007
【図６】
2019126886.tif 000008
【図７】
2019126886.tif 000009
【図８】
2019126886.tif 000010
【図９】
2019126886.tif 000011
【図１０】
2019126886.tif 000012
【図１１】
2019126886.tif 000013
【図１２】
2019126886.tif 000014
【図１３】
2019126886.tif 000015
【図１４】
2019126886.tif 000016
【図１５】
2019126886.tif 000017
【図１６】
2019126886.tif 000018
【図１７】
2019126886.tif 000019
【図１８】
2019126886.tif 000020
【図１９】
2019126886.tif 000021
【図２０】
2019126886.tif 000022