(57)【要約】【課題】３次元点群データから推定対象となる物品の位置を推定可能な位置推定装置を提供する。【解決手段】位置推定装置は、距離センサ１１から得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて作業者の手が触れた接触位置を検出することで、接触位置の分布を求める接触位置検出部２２と、接触位置の分布を一連の作業において作業者の手が触れる１以上の物品のそれぞれに対応する接触位置のグループに分割し、グループのそれぞれごとに、そのグループの代表点を１以上の物品のうちのそのグループに対応する物品の位置として推定する位置推定部２３とを有する。【選択図】図３
2019120577.tif 000002
【特許請求の範囲】
【請求項１】
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求める接触位置検出部と、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する位置推定部と、
を有する位置推定装置。
【請求項２】
前記位置推定部は、前記接触位置の分布に対して所定のクラスタリング手法を適用することで前記接触位置の分布を前記１以上の物品のそれぞれに対応する前記接触位置のグループに分割する、請求項１に記載の位置推定装置。
【請求項３】
前記位置推定部は、前記グループの数を変えながら、当該数ごとに前記接触位置の分布に対して前記所定のクラスタリング手法を適用して前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに分割された前記グループ全体の尤度を算出し、算出された尤度が最大となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、請求項２に記載の位置推定装置。
【請求項４】
前記接触位置検出部は、前記接触位置の分布に前記接触位置ごとの頻度を含め、
前記位置推定部は、前記接触位置ごとの頻度を含む前記接触位置の分布を混合正規分布で近似することで前記接触位置の分布を前記１以上の物品のそれぞれに対応する前記接触位置のグループに分割する、請求項１に記載の位置推定装置。
【請求項５】
前記位置推定部は、前記グループの数を変えながら、当該数ごとに、当該数の正規分布を含む前記混合正規分布で前記接触位置の分布を近似することで前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに前記混合正規分布の尤度を算出し、算出された尤度が最大となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、請求項４に記載の位置推定装置。
【請求項６】
前記位置推定部は、前記グループの数を変えながら、当該数ごとに、当該数の正規分布を含む前記混合正規分布で前記接触位置の分布を近似することで前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに前記混合正規分布についての所定の情報量基準値を算出し、算出された情報量基準値が最小となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、請求項５に記載の位置推定装置。
【請求項７】
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求め、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する、
ことを含む位置推定方法。
【請求項８】
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求め、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する、
ことをコンピュータに実行させるための位置推定用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、３次元点群データから物品の位置を推定する位置推定装置、位置推定方法及び位置推定用コンピュータプログラムに関する。
【背景技術】
【０００２】
３次元点群データから、その３次元点群データに表された１以上の物品の位置及びサイズを、グラフカット等の手法を用いて推定する技術が提案されている（例えば、非特許文献１を参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】A. Golovinskiy他、「Min-Cut Based Segmentation of Point Clouds」、IEEE Workshop on Search in 3D and Video (S3DV) at ICCV、2009年
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１に開示された技術では、推定対象となる物品の大凡の位置及び大きさに関する情報が予め与えられることが求められる。しかし、用途によっては、推定対象となる物品の大凡の位置及び大きさに関する情報が無いことがある。
【０００５】
一つの側面では、本発明は、３次元点群データから推定対象となる物品の位置を推定可能な位置推定装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一実施形態によれば、位置推定装置が提供される。この位置推定装置は、距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて作業者の手が触れた接触位置を検出することで、接触位置の分布を求める接触位置検出部と、接触位置の分布を一連の作業において作業者の手が触れる１以上の物品のそれぞれに対応する接触位置のグループに分割し、グループのそれぞれごとに、そのグループの代表点を１以上の物品のうちのそのグループに対応する物品の位置として推定する位置推定部とを有する。
【発明の効果】
【０００７】
一つの側面では、３次元点群データから推定対象となる物品の位置を推定できる。
【図面の簡単な説明】
【０００８】
【図１】一つの実施形態による位置推定装置のハードウェア構成図である。
【図２】一つの実施形態による位置推定装置で用いられる距離センサによる撮影範囲の一例を示す図である。
【図３】一つの実施形態によるプロセッサの機能ブロック図である。
【図４】位置推定部による処理の概要説明図である。
【図５】位置推定部による処理の動作フローチャートである。
【図６】位置推定処理の動作フローチャートである。
【図７】変形例による位置推定部による処理の概要説明図である。
【図８】変形例による位置推定部による処理の動作フローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照しつつ、位置推定装置について説明する。この位置推定装置は、３次元点群データを表す距離画像から、例えば、装置の組み立てといった一連の作業で用いられる、１以上の物品の位置及びサイズを推定する。
【００１０】
ここで、発明者は、作業者がその一連の作業を実施する間において、作業者の手が各物品に触れることに着目した。そこでこの位置推定装置は、一連の作業中に得られた一連の距離画像のそれぞれから作業者の手を検出し、検出された手に基づいて、作業者の手が触れた位置を検出する。そしてこの位置推定装置は、作業者の手が触れた位置の分布を物品ごとにグループ化することで、物品ごとの位置及びサイズを推定する。
【００１１】
図１は、一つの実施形態による位置推定装置のハードウェア構成図である。図２は、一つの実施形態による位置推定装置で用いられる距離センサによる撮影範囲の一例を示す図である。位置推定装置１は、距離センサ１１と、メモリ１２と、プロセッサ１３と、ディスプレイ１４とを有する。そして距離センサ１１、メモリ１２及びディスプレイ１４は、それぞれ、プロセッサ１３と信号線を介して接続される。また、位置推定装置１は、位置推定装置１を他の機器と接続するための通信インターフェース（図示せず）をさらに有していてもよい。
【００１２】
距離センサ１１は、距離測定部の一例である。そして距離センサ１１は、図２に示されるように、例えば、作業台の上方において、例えば鉛直下方へ向けて取り付けられる。そして距離センサ１１の撮影範囲には、例えば、作業対象物が載置される作業台１００、及び、各部品または工具などが収容される、１以上の工具箱１０１が配置される備品棚などが含まれる。さらに、距離センサ１１の撮影範囲には、一連の作業中の作業者の手１０２も含まれる。工具箱１０１は、位置推定対象となる物品の一例である。なお、位置推定対象となる物品は、工具箱に限られず、一連の作業中において作業者の手が触れる様々な備品の何れであってもよい。
【００１３】
距離センサ１１は、一連の作業中において、一定の周期（例えば、30フレーム／秒〜60フレーム／秒）ごとに、作業者の手を含む撮影範囲の距離画像を生成する。そして距離センサ１１は、生成した距離画像をプロセッサ１３へ出力する。そのために、距離センサ１１は、例えば、デプスカメラとすることができる。あるいは、距離センサ１１は、距離画像とともに、カラーまたはモノクロ画像を生成できるカメラであってもよい。
【００１４】
距離画像は、３次元点群データの一例であり、例えば、画素ごとに、その画素の値により、距離センサ１１からその画素に写っている物体の点までの距離を表す。例えば、距離センサ１１から距離画像中の画素に写っている物体の点までの距離が遠いほど、その画素の値は大きくなる。なお、距離画像中の画素に写っている物体の点までの距離が遠いほど、その画素の値が小さくなるようにしてもよい。また、距離画像上の画素の位置は距離センサ１１からの方向を表す。そのため、距離画像の各画素は、距離画像上でのその画素の位置と値とにより、その画素に写っている物体の３次元空間での位置を表す。
【００１５】
メモリ１２は、記憶部の一例であり、例えば、揮発性又は不揮発性の半導体メモリ回路を有する。そしてメモリ１２は、距離センサ１１により得られた一連の距離画像を含む映像信号などを記憶する。さらに、メモリ１２は、位置推定処理で利用される様々な情報、あるいは、位置推定処理の途中で生成されるデータを記憶する。例えば、メモリ１２は、背景画像及び作業者が手を触れた位置（以下、接触位置と呼ぶ）の分布及び接触位置ごとの頻度を表す接触位置マップなどを記憶する。さらに、メモリ１２は、位置推定処理の結果得られた物品ごとの推定位置及び推定サイズを記憶してもよい。
【００１６】
背景画像は、例えば、作業者が距離センサ１１の撮影範囲内に存在していない場合において距離センサ１１により得られた距離画像とすることができ、距離センサ１１から作業台１００及び各工具箱１０１までの距離を表すデータである。なお、一連の作業中において得られた一連の距離画像のうち、作業者の手が検出されない距離画像により、背景画像は更新されてもよい。
【００１７】
プロセッサ１３は、制御部の一例であり、例えば、Central Processing Unit(CPU)と、その周辺回路とを有する。さらに、プロセッサ１３は、数値演算プロセッサを有していてもよい。そしてプロセッサ１３は、位置推定装置１全体を制御する。またプロセッサ１３は、位置推定処理を実行する。なお、位置推定処理の詳細については後述する。
【００１８】
ディスプレイ１４は、表示部の一例であり、例えば、液晶ディスプレイあるいは有機ＥＬディスプレイを有する。そしてディスプレイ１４は、プロセッサ１３による位置推定処理の結果を表示する。
【００１９】
以下、プロセッサ１３により実行される、位置推定処理に関する構成要素の詳細について説明する。
図３は、プロセッサ１３の機能ブロック図である。プロセッサ１３は、手領域検出部２１と、接触位置検出部２２と、位置推定部２３とを有する。
プロセッサ１３が有するこれらの各部は、プロセッサ１３上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、プロセッサ１３が有するこれらの各部は、その各部の機能を実現する専用の回路として、プロセッサ１３に組み込まれてもよい。
【００２０】
本実施形態では、プロセッサ１３は、作業台上で一連の作業を作業者が実行する間に撮影された時系列の複数の距離画像のそれぞれから、作業者の手を検出する。そしてプロセッサ１３は、各距離画像から検出された手の位置に基づいて、手の接触位置を記録することで接触位置マップを生成し、接触位置マップに基づいて１以上の物品の位置及びサイズを推定する。
【００２１】
手領域検出部２１は、距離センサ１１からプロセッサ１３が取得した距離画像から、作業者の手が写っている領域である手領域を検出する。なお、手領域検出部２１は、一連の作業中に得られた各距離画像について同一の処理を行えばよいので、以下では、一つの距離画像に対する処理について説明する。
【００２２】
例えば、手領域検出部２１は、距離画像上の各画素について、その画素の値と、背景画像の対応画素の値とを比較する。手領域検出部２１は、距離画像の画素の値と背景画像の対応画素の値の差の絶対値が所定の検出閾値以上となる画素を抽出する。なお、所定の検出閾値は、例えば、5mm〜10mmに相当する距離画像上の画素値とすることができる。
【００２３】
手領域検出部２１は、抽出された画素に対して、例えば、ラベリング処理を実行して、抽出された画素をグループ化することで、それぞれが抽出された画素を含み、かつ、互いに分離した１以上の候補領域を求める。そして手領域検出部２１は、１以上の候補領域のうち、その候補領域に含まれる画素数が最大となる候補領域を手領域とする。なお、作業者の両方の手が距離画像に写っていることもあるので、手領域検出部２１は、その候補領域に含まれる画素数が多い方から順に二つの候補領域を、それぞれ、手領域としてもよい。この場合、作業者と距離センサ１１の位置関係は、予め分かっているので、距離画像上での左手と右手の位置関係も分かる。例えば、指が伸ばされた状態で距離画像上で指先が上側を向く場合、二つの手領域のうちの右側の手領域が右手であり、左側の手領域が左手であると想定される。そこで手領域検出部２１は、二つの手領域間の相互の位置関係に応じて、手領域ごとに、その手領域が作業者の何れの手を表すかを示す識別情報を付してもよい。
【００２４】
あるいはまた、手領域検出部２１は、含まれる画素数が所定の画素数以上となる候補領域が存在しない場合には、距離画像には手領域が含まれない、すなわち、距離画像に作業者の手が写っていないと判定してもよい。
このように、本実施形態では、手領域検出部２１は、距離画像に基づいて作業者の手を検出するので、背景となる作業台及びその周囲が複雑な形状となっている場合でも、作業者の手を正確に検出できる。
【００２５】
また、距離センサ１１が、距離画像とともに、モノクロ画像またはカラー画像を生成する場合には、手領域検出部２１は、距離センサ１１により生成されたモノクロ画像またはカラー画像に基づいて手領域を検出してもよい。例えば、距離センサ１１がカラー画像を生成する場合、手領域検出部２１は、カラー画像上で肌色を持つ画素を抽出し、抽出された画素に対してラベリング処理を実行して、抽出された画素をグループ化することで１以上の候補領域を求める。そして手領域検出部２１は、１以上の候補領域のうち、その候補領域に含まれる画素数が最大となる候補領域を手領域としてもよい。あるいは、手領域検出部２１は、カラー画像またはモノクロ画像に対して、画像上の手を検出するように予め学習された識別器を用いて手領域を検出してもよい。この場合、手領域検出部２１は、識別器として、例えば、AdaBoost識別器を用い、画像の着目領域から抽出されたHOG特徴を識別器に入力することで、その着目領域に手領域が含まれるか否かを判定できる。
【００２６】
手領域検出部２１は、距離画像上の手領域を接触位置検出部２２へ通知する。
【００２７】
接触位置検出部２２は、一連の作業中に得られた一連の距離画像のそれぞれについて、その距離画像上の手領域に写っている作業者の手が何れかの場所に触れたか否かを判定し、何れかの場所に触れたと判定した場合、その接触位置を記録する。なお、接触位置検出部２２は、一連の作業中に得られた各距離画像について同一の処理を行えばよいので、以下では、一つの距離画像に対する処理について説明する。
【００２８】
例えば、作業者は、指先で部品または工具を把持することが想定される。そのため、作業者が一連の作業を実行している間において、物品内に収容されている工具あるいは部品を取ったり、戻したりするために、物品に手を触れると想定される。
【００２９】
そこで、接触位置検出部２２は、手領域に含まれる画素ごとに、その画素の値と、背景画像の対応画素の値とを比較する。接触位置検出部２２は、手領域内の何れかの画素の値と背景画像の対応画素の値の差の絶対値（以下、単に距離と呼ぶこともある）が接触判定閾値以下となる場合、作業者の手が何れかの場所に触れたと判定する。なお、接触判定閾値は、例えば、手領域の検出に利用される検出閾値よりも大きく、例えば、10mm〜15mmに相当する距離画像上の画素値とすることができる。
【００３０】
なお、変形例によれば、手領域内の所定数以上の画素について、背景画像の対応画素の値との差の絶対値が接触判定閾値以下となる場合に、接触位置検出部２２は、作業者の手が何れかの場所に触れたと判定してもよい。所定数は、例えば、2〜5に設定される。これは、作業者が物品内に収容された工具などを取る場合に、複数の指で物品に手を触れることが想定されるためである。
【００３１】
作業者の手が何れかの場所に触れたと判定とした場合、接触位置検出部２２は、距離が接触判定閾値以下となる各画素に相当する実空間の３次元位置を記録する。例えば、接触位置検出部２２は、距離センサ１１による撮影範囲を含む実空間の３次元の接触位置マップにおいて、距離が接触判定閾値以下となる画素ごとに、その画素に相当する実空間の３次元位置（すなわち、接触位置）に所定の投票値(例えば、1)を加算する。あるいは、接触位置検出部２２は、距離が接触判定閾値以下となる画素ごとの対応する実空間の３次元位置の重心を接触位置としてもよい。なお、作業者の手の接触位置が作業台上である場合には、接触位置検出部２２は、接触位置マップにおけるその接触位置に投票しなくてもよい。これにより、作業台が物品として誤って検出されることが抑制される。なお、接触位置が作業台上であるか否かを判定するために、予め、背景画像上で作業台が表される範囲が記録されてもよい。そして接触位置が作業台が表される範囲内である場合、接触位置検出部２２は、接触位置が作業台上であると判定してもよい。
【００３２】
上記のように、距離画像上の画素の位置は距離センサ１１からの方向を表し、距離画像上の画素の値は距離センサ１１からの距離を表している。そのため、接触位置検出部２２は、距離が接触判定閾値以下となる画素の距離画像上の位置と値とに基づいて、その画素に対応する接触位置を特定できる。
【００３３】
接触位置マップは、例えば、距離センサ１１を原点とし、距離センサ１１の光軸方向を一つの軸の方向とする実空間の直交座標系で表すことができる。ただし接触位置マップは、実空間の他の座標系、例えば、作業者の作業空間上の任意の点を原点とする直交座標系で表されてもよく、あるいは、距離センサ１１を原点とする極座標系で表されてもよい。
【００３４】
また、作業者の手にはある程度の厚みがあり、かつ、距離センサ１１は、作業者の手を、物品が設置されている側とは反対側から作業者の手を撮影している。そのため、接触位置に相当する距離画像上での画素の値が表す手までの距離は実際の物品までの距離よりも小さい。そこで、接触位置検出部２２は、距離が接触判定閾値以下となる画素の値が表す距離センサ１１と手までの距離に、手の厚さに相当するオフセット値（例えば、10mm）を加算した値を、距離センサ１１から接触位置までの距離としてもよい。
【００３５】
さらに、接触位置マップで表される空間は所定単位のブロック（例えば、10mm〜20mm四方のブロック）ごとに分割されてもよい。そして接触位置検出部２２は、ブロックごとに投票してもよい。この場合には、接触位置検出部２２は、接触位置ごとに、その接触位置が含まれるブロックに所定の投票値を投票すればよい。あるいは、接触位置検出部２２は、接触位置から離れるほど小さくなるように投票値を算出し、接触位置ごとに、その接触位置の周囲にも算出された投票値を加算してもよい。この場合、投票値は、例えば、接触位置を平均値とするガウス関数に従って算出されればよい。
このように投票値を加算することで、接触位置検出部２２は、実空間の位置ごとに、作業者が手を触れた頻度を正確に評価することができる。
【００３６】
接触位置検出部２２は、距離画像ごとに常時の処理を実行することで、距離画像ごとに接触位置マップを更新する。そして接触位置検出部２２は、接触位置マップを更新する度に、更新された接触位置マップをメモリ１２に保存する。
【００３７】
位置推定部２３は、一連の作業を撮影することで得られた一連の距離画像に基づいて求められた接触位置マップに基づいて、物品の推定位置及び物品の推定サイズを求める。本実施形態では、位置推定部２３は、接触位置マップにより表される接触位置の分布を、一連の作業中に作業者の手が触れる１以上の物品のそれぞれに対応するグループに分割し、各グループの代表点をそのグループに対応する物品の位置として推定する。
【００３８】
図４は、位置推定部２３による処理の概要説明図である。図４では、簡単化のために、物品の数は２個であるとした。なお、図４に示される接触位置マップ４００では、色が濃いところほど、頻度が高いものとした。
【００３９】
作業者が工具箱などの物品に手を触れる場合、物品内に収容されている部品または工具を取り易いよう、あるいは、工具を戻し易いように、物品の中心に近い位置では手が触れる頻度が高く、物品の端部に近づくほど手が触れる頻度が低くなると想定される。そのため、物品４０１または物品４０２が有る位置では、接触位置マップ４００において、作業者の手の接触頻度が高くなる。さらに、物品が大きいほど、手が触れる範囲が広くなると想定される。そこで、本実施形態では、接触位置の分布は、物品ごとの確率分布により近似できると仮定する。例えば、物品４０１の近傍における接触位置の分布は、物品４０１の中心に近い位置を平均値とし、物品４０１の大きさに相当する分散共分散行列を持つ正規分布４１１で近似される。同様に、物品４０２の近傍における接触位置の分布は、物品４０２の中心に近い位置を平均値とし、物品４０２の大きさに相当する分散共分散行列を持つ正規分布４１２で近似される。すなわち、各接触位置は、その接触位置からのマハラノビス距離が最小となる正規分布に属するように、接触位置の分布は個々の正規分布に相当するグループに分割される。
【００４０】
そこで、位置推定部２３は、接触位置マップを、３次元の位置座標を変数とする混合正規分布で近似する。その際、位置推定部２３は、例えば、EMアルゴリズム（期待値最大化法とも呼ばれる）を適用することで、混合正規分布に含まれる各正規分布の位置の平均値及び分散共分散行列などを求める。なお、混合正規分布に含まれる正規分布の数は、物品の数に対応し、個々の正規分布は、一つの物品に対応する接触位置のグループを表す。また、各正規分布の位置の平均値は、その正規分布が表す接触位置のグループの代表点、すなわち、その正規分布にて表される物品の推定位置を表す。例えば、図４において、正規分布４１１の位置の平均４２１が、物品４０１の推定位置を表し、正規分布４１２の位置の平均４２２が、物品４０２の推定位置を表す。また、各正規分布の分散共分散行列は、その正規分布にて表される物品の推定サイズに対応する。
【００４１】
図５は、位置推定部２３による処理の動作フローチャートである。
先ず、位置推定部２３は、物品の数ｎを１と仮定する（ステップＳ１０１）。
【００４２】
位置推定部２３は、接触位置マップに含まれる各接触位置の頻度に基づいて、仮定した物品の数ｎと同数の正規分布を持つ混合正規分布で接触位置の分布を近似する（ステップＳ１０２）。その際、位置推定部２３は、例えば、EMアルゴリズムを用いることで、混合正規分布に含まれる正規分布のそれぞれについて、位置の平均値、分散共分散行列及び重み係数を最尤推定すればよい。
【００４３】
なお、位置推定部２３は、混合正規分布の各パラメータを求めるために利用するアルゴリズムとして、EMアルゴリズムの代わりに、マルコフ連鎖モンテカルロ法またはシミュレーティッドアニーリングを利用してもよい。
【００４４】
位置推定部２３は、接触位置の分布を近似したｎ個の正規分布を持つ混合正規分布の尤度を算出する（ステップＳ１０３）。混合正規分布の尤度は、推定された物品の数、及び、個々の物品の位置及びサイズの確からしさを表す。その際、位置推定部２３は、例えば、接触位置マップに含まれる接触位置ごとに、その接触位置から混合正規分布に含まれる各正規分布の位置の平均値までの距離のうちの最小値を算出する。そして位置推定部２３は、各接触位置について算出された距離の最小値の和の逆数を尤度として算出する。
【００４５】
位置推定部２３は、混合正規分布に含まれる正規分布の数ｎ（すなわち、仮定された物品の数）、混合正規分布に含まれる各正規分布の位置の平均値、分散共分散行列及び重み係数、及び、混合正規分布の尤度をメモリ１２に保存する（ステップＳ１０４）。
【００４６】
位置推定部２３は、仮定された物品の数ｎが想定される物品の数の最大値Nmax未満か否か判定する（ステップＳ１０５）。仮定された物品の数ｎが想定される物品の数の最大値Nmax未満であれば（ステップＳ１０５−Ｙｅｓ）、位置推定部２３は、仮定された物品の数ｎを１増加する（ステップＳ１０６）。そして位置推定部２３は、ステップＳ１０２以降の処理を繰り返す。
【００４７】
一方、仮定された物品の数ｎが想定される物品の数の最大値Nmax以上であれば（ステップＳ１０５−Ｎｏ）、位置推定部２３は、仮定された物品の数ごとに算出された混合正規分布の尤度のうちの最大値を求める。そして位置推定部２３は、尤度の最大値に対応する物品の数ｎmlの正規分布を含む混合正規分布に基づいて、各物品の推定位置及び推定サイズを求める（ステップＳ１０７）。例えば、位置推定部２３は、混合分布に含まれる正規分布ごとに、その正規分布の位置の平均値を、その正規分布に対応する一つの物品の推定位置とする。また位置推定部２３は、混合分布に含まれる正規分布ごとに、その正規分布の分散共分散行列から算出されるマハラノビス距離が所定値(例えば、1〜2)以下となる範囲を、その正規分布に対応する一つの物品のサイズとして推定する。そしてステップＳ１０７の後、位置推定部２３は処理を終了する。
【００４８】
なお、位置推定部２３は、上記の処理により得られた個々の物品の推定位置及び推定サイズを物品の大凡の位置及びサイズとして用いて、接触位置マップに対して、例えば、非特許文献１に記載されたグラフカット手法を適用してもよい。これにより、位置推定部２３は、各物品の推定位置及び推定サイズをより精密に求めることができる。
【００４９】
また、一連の作業中において作業者の手が触れる物品の数が予め分かっている場合、位置推定部２３は、ステップＳ１０１にて、ｎを既知の物品の数に設定すればよい。そしてステップＳ１０３−Ｓ１０６の処理は省略されてもよい。
【００５０】
位置推定部２３は、各物品の推定位置及び推定サイズをメモリ１２に保存する。また位置推定部２３は、各物品の推定位置及び推定サイズをディスプレイ１４に表示させてもよい。あるいは、位置推定部２３は、各物品の推定位置及び推定サイズを表す情報を、通信インターフェース（図示せず）を介して他の機器へ出力してもよい。
【００５１】
さらに、プロセッサ１３は、各物品の推定位置及び推定サイズと、一連の作業中における作業者の手の接触位置の遷移とに基づいて、最適な物品の配置を推定してもよい。例えば、プロセッサ１３は、一連の作業中に得られた一連の距離画像のそれぞれから検出された手領域を追跡することで、作業者の手ごとに、その手の接触位置の遷移を求めることができる。そしてプロセッサ１３は、作業者の手の接触位置の遷移と、推定された各物品の推定位置及び推定サイズとから、物品ごとに作業者が手を触れる回数、及び、手を触れる順序をもとめる。そしてプロセッサ１３は、各物品の配置の複数の組み合わせの中から、手を触れる順序に従って作業者の手の遷移距離が最小となるように、所定の最適化手法に従って各物品の最適な配置の組み合わせを求めればよい。その際、プロセッサ１３は、例えば、所定の最適化手法として、シミュレーティッドアニーリング、ボルツマンマシンあるいは遺伝的アルゴリズムを利用することができる。
【００５２】
図６は、位置推定処理の動作フローチャートである。
手領域検出部２１は、一連の作業を距離センサ１１により撮影することで得られた一連の距離画像のそれぞれから手領域を検出する（ステップＳ２０１）。
【００５３】
接触位置検出部２２は、一連の距離画像のそれぞれについて、その距離画像上の手領域に写っている作業者の手が何れかの場所に触れたか否かを判定する。そして接触位置検出部２２は、一連の距離画像のそれぞれについて、何れかの場所に触れたと判定した場合、接触位置に投票値を加算することで接触位置マップを更新する（ステップＳ２０２）。
【００５４】
一連の距離画像の全てについて、接触位置マップの更新が終了すると、位置推定部２３は、接触位置マップに基づいて、各物品の推定位置及び推定サイズをもとめる（ステップＳ２０３）。そしてプロセッサ１３は、位置推定処理を終了する。
【００５５】
以上に説明してきたように、この位置推定装置は、一連の作業を距離センサを用いて撮影することで得られた一連の距離画像のそれぞれから、作業者の手の接触位置の分布及び接触位置ごとの頻度をもとめる。そしてこの位置推定装置は、接触位置の分布及び接触位置ごとの頻度を混合正規分布で近似することで、各接触位置を作業者の手が触れる物品ごとにグループ化して、各物品の推定位置及び推定サイズをもとめる。そのため、この位置推定装置は、事前に物品の数、各物品の大凡の位置及びサイズが分かっていなくても、各物品の位置を推定することができるとともに、各物品のサイズを推定できる。
【００５６】
変形例によれば、位置推定部２３は、接触位置ごとの頻度を利用せず、接触位置の分布に対してクラスタリング手法を適用することで、物品ごとに、接触位置をグループ化してもよい。
【００５７】
図７は、この変形例による、位置推定部２３による処理の概要説明図である。図７では、簡単化のために、物品の数は２個であるとした。なお、図７に示される接触位置マップ７００では、各点が一つの接触位置を表す。
【００５８】
接触位置マップ７００に表される各接触点は、物品７０１または物品７０２が有る位置に応じて分布する。そのため、接触位置の分布をクラスタリングすることで、各接触位置は、物品ごとにグループ化される。図７に示される例では、各接触位置は、物品７０１と重なる接触位置のグループ７１１と、物品７０２と重なる接触位置のグループ７１２とにグループ化される。そこで、グループ７１１に含まれる各接触位置の重心７２１が、グループ７１１の代表点、すなわち、グループ７１１に対応する物品７０１の推定位置として求められる。同様に、グループ７１２に含まれる各接触位置の重心７２２が、グループ７１２の代表点、すなわち、グループ７１２に対応する物品７０２の推定位置として求められる。また、グループ７１１に含まれる接触位置を全て包含する最小球７３１の半径r1は、グループ７１１に対応する物品７０１の推定サイズを表す。同様に、グループ７１２に含まれる接触位置を全て包含する最小球７３２の半径r2は、グループ７１２に対応する物品７０２の推定サイズを表す。
【００５９】
この場合、接触位置検出部２２は、一連の距離画像のそれぞれについて、何れかの場所に触れたと判定した場合、その接触位置を接触位置マップに記録すればよい。そして位置推定部２３は、接触位置マップに対してクラスタリング手法を適用することで、接触位置の分布を１以上の物品のそれぞれに対応するグループに分割すればよい。なお、位置推定部２３は、適用するクラスタリング手法として、例えば、K-means法を用いることができる。また位置推定部２３は、他のクラスタリング手法、例えば、K近傍法あるいはウォード法を用いてもよい。
【００６０】
図８は、この変形例による位置推定部２３による処理の動作フローチャートである。
先ず、位置推定部２３は、物品の数ｎを１と仮定する（ステップＳ３０１）。
【００６１】
位置推定部２３は、接触位置マップにて表される接触位置の分布に対して、K-means法といったクラスタリング手法を適用することで、接触位置の分布を仮定した物品の数ｎと同数のグループに分割し、各グループの重心を算出する（ステップＳ３０２）。
【００６２】
位置推定部２３は、得られたｎ個のグループ全体についての尤度を算出する（ステップＳ３０３）。グループ全体についての尤度は、推定された物品の数、及び、個々の物品の位置及びサイズの確からしさを表す。その際、位置推定部２３は、例えば、接触位置マップに含まれる接触位置ごとに、その接触位置から各グループの重心までの距離のうちの最小値を算出する。そして位置推定部２３は、各接触位置について算出された距離の最小値の和の逆数を尤度として算出する。
【００６３】
位置推定部２３は、グループの数ｎ（すなわち、仮定された物品の数）、各グループの重心、各接触位置が属するグループ、及び、グループ全体の尤度をメモリ１２に記憶する（ステップＳ３０４）。
【００６４】
位置推定部２３は、仮定された物品の数ｎが想定される物品の数の最大値Nmax未満か否か判定する（ステップＳ３０５）。仮定された物品の数ｎが想定される物品の数の最大値Nmax未満であれば（ステップＳ３０５−Ｙｅｓ）、位置推定部２３は、仮定された物品の数ｎを１増加する（ステップＳ３０６）。そして位置推定部２３は、ステップＳ３０２以降の処理を繰り返す。
【００６５】
一方、仮定された物品の数ｎが想定される物品の数の最大値Nmax以上であれば（ステップＳ３０５−Ｎｏ）、位置推定部２３は、仮定された物品の数ごとに算出されたグループの尤度のうちの最大値を求める。そして位置推定部２３は、尤度の最大値に対応する物品の数ｎmlのグループに基づいて、各物品の推定位置及び推定サイズを求める（ステップＳ３０７）。例えば、位置推定部２３は、グループごとに、そのグループに含まれる各接触位置の重心をそのグループに対応する一つの物品の推定位置とする。また位置推定部２３は、グループごとに、そのグループの重心を中心とし、そのグループに属する各接触位置を包含する最小球の半径を、そのグループに対応する一つの物品の推定サイズとする。ステップＳ３０７の後、位置推定部２３は処理を終了する。
【００６６】
なお、この変形例においても、位置推定部２３は、上記の処理により得られた個々の物品の推定位置及び推定サイズを物品の大凡の位置及びサイズとして用いて、接触位置マップに対して、例えば、非特許文献１に記載されたグラフカット手法を適用してもよい。これにより、位置推定部２３は、各物品の推定位置及び推定サイズをより精密に求めることができる。
また、この変形例においても、一連の作業中において作業者の手が触れる物品の数が予め分かっている場合、位置推定部２３は、ステップＳ３０１にて、ｎを既知の物品の数に設定すればよい。そしてステップＳ３０３−Ｓ３０６の処理は省略されてもよい。
【００６７】
この変形例についても、位置推定装置は、事前に物品の数、各物品の大凡の位置及び大きさが分かっていなくても、各物品の位置を推定することができるとともに、各物品の大きさを推定できる。またこの位置推定装置は、上記の実施形態と比較して、演算量を削減することができる。
【００６８】
上記の実施形態において、位置推定部２３は、ステップＳ１０７において、正規分布の数が異なる混合正規分布ごとの尤度を算出する代わりに、正規分布の数が異なる混合正規分布ごとに赤池情報量基準(Akaike's Information Criterion, AIC)を算出してもよい。例えば、位置推定部２３は、正規分布の数が異なる混合正規分布ごとに、次式に従ってAICを算出すればよい。
【数１】
2019120577.tif 000003
ここでLは、混合正規分布について算出された尤度である。kは混合正規分布を規定するために用いられるパラメータ（各正規分布の位置の平均値、分散共分散行列及び重み係数）の数であり、混合正規分布に含まれる正規分布の数が増えるほど大きな値になる。
【００６９】
位置推定部２３は、AICの値が最小となる数の正規分布を含む混合正規分布に基づいて、各物品の推定位置及び推定サイズをもとめればよい。
【００７０】
あるいは、位置推定部２３は、ステップＳ１０７において、混合正規分布ごとの尤度を算出する代わりに、混合正規分布ごとにベイズ情報量基準(Bayesian information criteria, BIC)を算出してもよい。この場合も、位置推定部２３は、BICの値が最小となる数の正規分布を含む混合正規分布に基づいて、各物品の推定位置及び推定サイズをもとめればよい。
【００７１】
このように、赤池情報量基準またはベイズ情報量基準に基づいて、混合正規分布に含まれる正規分布の数を特定することで、位置推定部２３は、物品の数をより高精度に推定できる。その結果として、位置推定部２３は、各物品の位置及びサイズをより高精度で推定できる。
【００７２】
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
【００７３】
以上説明した実施形態及びその変形例に関し、更に以下の付記を開示する。
（付記１）
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求める接触位置検出部と、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する位置推定部と、
を有する位置推定装置。
（付記２）
前記位置推定部は、前記接触位置の分布に対して所定のクラスタリング手法を適用することで前記接触位置の分布を前記１以上の物品のそれぞれに対応する前記接触位置のグループに分割する、付記１に記載の位置推定装置。
（付記３）
前記位置推定部は、前記グループのそれぞれについて、当該グループに属する前記接触位置の重心を当該グループの前記代表点とする、付記２に記載の位置推定装置。
（付記４）
前記位置推定部は、前記グループのそれぞれについて、当該グループに属する前記接触位置の重心を中心とし、当該グループに含まれる前記接触位置を含む最小球の半径を、当該グループに対応する前記物品のサイズとして推定する、付記３に記載の位置推定装置。
（付記５）
前記位置推定部は、前記グループの数を変えながら、当該数ごとに前記接触位置の分布に対して前記所定のクラスタリング手法を適用して前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに分割された前記グループ全体の尤度を算出し、算出された尤度が最大となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、付記２〜４の何れかに記載の位置推定装置。
（付記６）
前記接触位置検出部は、前記接触位置の分布に前記接触位置ごとの頻度を含め、
前記位置推定部は、前記接触位置ごとの頻度を含む前記接触位置の分布を混合正規分布で近似することで前記接触位置の分布を前記１以上の物品のそれぞれに対応する前記接触位置のグループに分割する、付記１に記載の位置推定装置。
（付記７）
前記位置推定部は、前記グループのそれぞれについて、前記混合正規分布に含まれる正規分布のうちの当該グループに対応する正規分布の前記接触位置の平均値を当該グループの前記代表点とする、付記６に記載の位置推定装置。
（付記８）
前記位置推定部は、前記グループのそれぞれについて、前記混合正規分布に含まれる正規分布のうちの当該グループに対応する正規分布の前記接触位置の平均値から所定のマハラノビス距離となる範囲を、当該グループに対応する前記物品のサイズとして推定する、付記７に記載の位置推定装置。
（付記９）
前記位置推定部は、前記グループの数を変えながら、当該数ごとに、当該数の正規分布を含む前記混合正規分布で前記接触位置の分布を近似することで前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに前記混合正規分布の尤度を算出し、算出された尤度が最大となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、付記６〜８の何れかに記載の位置推定装置。
（付記１０）
前記位置推定部は、前記グループの数を変えながら、当該数ごとに、当該数の正規分布を含む前記混合正規分布で前記接触位置の分布を近似することで前記接触位置の分布を当該数の前記グループに分割し、当該数ごとに前記混合正規分布についての所定の情報量基準値を算出し、算出された情報量基準値が最小となるときの数の前記グループのそれぞれの前記代表点を当該グループに対応する前記物品の位置として推定する、付記６〜８の何れかに記載の位置推定装置。
（付記１１）
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求め、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する、
ことを含む位置推定方法。
（付記１２）
距離センサから得た、一連の作業中の作業者の手を撮影することで得られる、複数の３次元点群データのそれぞれについて前記作業者の手が触れた接触位置を検出することで、前記接触位置の分布を求め、
前記接触位置の分布を前記一連の作業において前記作業者の手が触れる１以上の物品のそれぞれに対応する前記接触位置のグループに分割し、前記グループのそれぞれごとに、当該グループの代表点を前記１以上の物品のうちの当該グループに対応する物品の位置として推定する、
ことをコンピュータに実行させるための位置推定用コンピュータプログラム。
【符号の説明】
【００７４】
１    位置推定装置
１１    距離センサ
１２    メモリ
１３    プロセッサ
１４    ディスプレイ
２１    手領域検出部
２２    接触位置検出部
２３    位置推定部
【図１】
2019120577.tif 000004
【図２】
2019120577.tif 000005
【図３】
2019120577.tif 000006
【図４】
2019120577.tif 000007
【図５】
2019120577.tif 000008
【図６】
2019120577.tif 000009
【図７】
2019120577.tif 000010
【図８】
2019120577.tif 000011