(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023063175
(43)【公開日】2023-05-09
(54)【発明の名称】システム
(51)【国際特許分類】
B25J 15/08 20060101AFI20230427BHJP
【FI】
B25J15/08 C
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021173523
(22)【出願日】2021-10-22
(71)【出願人】
【識別番号】515130201
【氏名又は名称】株式会社Preferred Networks
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】高橋 城志
(72)【発明者】
【氏名】深谷 直樹
(72)【発明者】
【氏名】ウマデシング アヴィナシュ
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS04
3C707BS10
3C707ES03
3C707ET08
3C707HS27
3C707HT22
3C707KS33
3C707KS36
3C707KT03
3C707KT06
3C707KW03
3C707KX10
3C707LW12
3C707MT04
3C707NS26
(57)【要約】
【課題】把持対象の定量把持の精度を向上すること。
【解決手段】実施形態に係る把持推定装置は、第1機構と、制御部と、を有する。第1機構は、グリッパで把持されている対象を前記グリッパの外に送り出す。制御部は、前記グリッパに把持された前記対象が目標量分、移載先に移載されるように前記第1機構を制御する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
グリッパで把持されている対象を前記グリッパの外に送り出す第1機構と、
前記グリッパに把持された前記対象が目標量分、移載先に移載されるように前記第1機構を制御する制御部と、
を有するシステム。
【請求項2】
前記制御部は、前記グリッパで把持されている前記対象の量と前記目標量とに基づいて、前記第1機構を制御する、
請求項1に記載のシステム。
【請求項3】
前記制御部は、前記対象をグリッパで把持して引き上げた後に離すように前記グリッパを制御し、前記グリッパから離された前記対象を再度把持するように前記グリッパを制御し、
前記グリッパは、前記第1機構で送り出される部分を含む前記対象を再度把持する、
請求項1に記載のシステム。
【請求項4】
前記制御部は、前記対象を把持している状態の前記グリッパを振動させる第2機構を制御する、
請求項3に記載のシステム。
【請求項5】
前記グリッパの先端は、開口部を有し、
前記第1機構は、前記開口部に向けて前記対象を送り出す、
請求項1乃至4のうちいずれか一項に記載のシステム。
【請求項6】
前記制御部は、前記グリッパで把持されている前記対象の量と前記目標量とに基づいて、前記第1機構による前記対象の送り出しの速度を制御する、
請求項1乃至5のうちいずれか一項に記載のシステム。
【請求項7】
前記制御部は、前記グリッパで把持されている前記対象の量と前記目標量とに基づいて、前記第1機構による前記対象の送り出しの回数を制御する、
請求項1乃至6のうちいずれか一項に記載のシステム。
【請求項8】
前記対象で占められた箇所であって、当該対象を前記目標量より多く把持できる所定条件を満たす前記箇所を、前記グリッパによって前記対象が把持される箇所として特定する選択部を更に備える、
請求項1乃至7のうちいずれか一項に記載のシステム。
【請求項9】
前記対象で占められた箇所について、前記グリッパによる前記対象の把持量と、当該把持量が把持される不確実性の指標と、を推定する推定部を更に備え、
前記選択部は、少なくとも当該推定された把持量および指標に基づいて当該箇所が前記所定条件を満たす箇所であるかを判定する、請求項8に記載のシステム。
【請求項10】
前記グリッパは、前記対象を把持する面の一部に突起部あるいは窪み部を有する、請求項1乃至9のうちいずれか一項に記載のシステム。
【請求項11】
前記第1機構が前記対象を送り出す方向に向いている突起を有する請求項10に記載の前記突起部を有するシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、システムに関する。
【背景技術】
【0002】
従来、弁当などの食品工場では、指定された目標量の食品を食品トレイから把持して、弁当箱に詰めることが行われている。このとき、詰められる食品の種類は多く、また取り扱う食品の種類が頻繁に変わる。このような背景から、大部分の食品に関しては専用機械を作ることが難しく、人手で詰め込み作業が行われている。
【0003】
詰められる食品は、把持と食品の大きさとの観点から、3個、10個などと個数で管理する食品と、60g、100gなどと重さで管理する細片状の食品および粒状の食品とに分類される。粒状の食品は、例えば、粒状であるために不定形であることから扱いが難しい。細片状の食品が当該食品同士で絡まりやすい場合、取り扱いが難しい。細片状の食品または粒状の食品を把持する把持装置は、食品の種別に応じた専用の器具を用いて定量で把持することがある。このとき、様々な食品や異なる把持量に対応するためには、設計変更などの多大な労力が必要となる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
発明が解決しようとする課題は、定量把持の精度を向上することにある。
【課題を解決するための手段】
【0006】
実施形態に係るシステムは、第1機構と、制御部と、を有する。第1機構は、グリッパで把持されている対象を前記グリッパの外に送り出す。制御部は、前記グリッパに把持された前記対象が目標量分、移載先に移載されるように前記第1機構を制御する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係り、把持推定装置を有するシステムの構成の一例を示すブロック図である。
【
図2】
図2は、実施形態に係り、把持装置の外観の一例を示す図である。
【
図3】
図3は、実施形態に係る平行グリッパの一例を示す図である。
【
図4】
図4は、実施形態に係る平行グリッパの一例を示す図である。
【
図5】
図5は、実施形態に係る平行グリッパの一例を示す図である。
【
図6】
図6は、実施形態に係る平行グリッパの一例を示す図である。
【
図7】
図7は、実施形態に係る平行グリッパの一例を示す図である。
【
図8】
図8は、実施形態に係り、把持解放処理の手順の一例を示すフローチャートである。
【
図9】
図9は、実施形態に係る観測データの一例を示す図である。
【
図10】
図10は、実施形態に係る把持量推定モデルに対する入出力の概要の一例を示す図である。
【
図11】
図11は、実施形態に係り、事前把持および事前把持後の把持対象の把持などの手順の概要の一例を示す模式図である。
【
図12】
図12は、実施形態に係り、事後把持における把持量の調整に関する概要の一例を示す模式図である。
【
図13】
図13は、実施形態に係り、把持量推定モデルの生成処理の手順の一例を示すフローチャートである。
【
図14】
図14は、実施形態の応用例に係るエンドエフェクタの断面の一例を示す図である。
【
図15】
図15は、実施形態の応用例に係り、事後把持に関する動作の流れの一例を示す断面図である。
【
図16】
図16は、実施形態における各装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら、実施形態に係るシステム、及びグリッパについて説明する。なお、以下に記載する実施形態の構成は、あくまで一例であって、以下の記載内容に限られるものではない。また、当該構成によってもたらされる作用及び効果も、あくまで一例であって、以下の記載内容に限られるものではない。
【0009】
図1は、把持推定装置17を有するシステム1の構成の一例を示すブロック図である。
図1に示すように、システム1は、把持装置11と、観測装置13と、計量装置15と、把持推定装置17とを有する。
図2は、把持装置11の外観の一例を示す図である。
【0010】
把持装置11は、把持対象133を把持するエンドエフェクタ(end-effector)111と、複数のリンク113、複数のリンクのうち2つのリンクの間に設けられた関節115、および、関節115およびエンドエフェクタ111などをそれぞれ駆動する複数の駆動装置(モータなど)を備える。エンドエフェクタ111は、例えば、送出機構付きの平行グリッパにより実現される。
図2に示すように、エンドエフェクタ111は、グリッパ(把持部)123と、第1機構(以下、送出機構と呼ぶ)124と、を有する。本実施形態は、グリッパ123の一例として、根元BRに沿って平行に開閉可能な平行グリッパを用いる。平行グリッパ123は、開口部125を有する。平行グリッパ123は、不図示の駆動機構により開閉される。複数のリンク113と複数の関節115と複数の関節115を駆動する複数の駆動装置(モータなど)とは、把持対象133を把持している状態の平行グリッパ123を1回または複数回に亘って揺らす(振動させる)第2機構(振動機構)を構成して良い。
【0011】
図3乃至
図7は、平行グリッパ123の一例を示す図である。
図3は、開状態の平行グリッパ123について、異なる2方向から見た2つの斜視図を示している。
図4は、開状態の平行グリッパ123の正面図を示している。また、
図5は、閉状態の平行グリッパ123の斜視図を示している。なお、開状態とは把持対象を把持するためにグリッパが開いた状態を指し、閉状態とは把持対象を把持するためにグリッパが閉じた状態を指す。
図3乃至
図5に示すように、平行グリッパ123は、一例として、櫛歯状の複数の枝126を有する一対の先端部127を有する。開口部125は、一対の先端部127における複数の枝126の先により形成される。複数の枝126は、
図3に示すようにフォーク形状を有する。一方の先端部128における複数の枝126と、一対の先端部127のうち他方の先端部129における複数の枝126の間の隙間とは、嵌め合い可能である。すなわち、一対の先端部127において、櫛歯状の対向する複数の枝126は、平行グリッパ123の閉状態において、互いに接触すること無く、嵌め合い状態となる。なお、平行グリッパ123の別の例は、一対の櫛歯状の複数の枝126でなく、対向する一対の板部材を有する。この一対の板部材は、それぞれの板部材に複数の溝(凹部)が掘られ、一方の板部材に掘られた複数の溝と、他方の板部材に掘られた複数の溝とは、互い違いに配置されるような構成であってもよいし、一方の板部材あるいは両方の板部材に溝の無い構成であってもよい。
【0012】
図3乃至
図7に示すように、複数の枝126は、一例として、複数の枝126に対向する隙間に向けた突起部130を有してよい。突起部130は、一対の先端部127の一方だけに設けられてもよく、平行グリッパ123の把持対象を把持する面(把持対象に接触する面)の少なくとも一部に設けられてよい。突起部130の突起は、後述の送出機構124が平行グリッパ123で把持されている対象を送り出す方向である複数の枝126の先に向けて、配置されているが、突起部130が突出する向きは、これらに限定されない。すなわち、突起部130は、複数の枝126より構成される把持面に対して垂直に、対向する隙間(あるいは溝)に向けて突出していてもよいし、複数の枝126の根元部分121に向けて方向に突出していてもよい。また、突起部130は、対向する隙間(あるいは溝)に向いてなくともよく、横方向に向いていてもよい。また、突起部130の代わりに、個々の突起を窪みに置き換えた窪み部を採用してもよい。突起部130あるいは窪み部によって、グリッパで把持された把持対象を後述する把持量調整において把持対象がほぐれながら少量ずつグリッパ内部から外部に送り出される(落とされる)ことが期待される。したがって、突起部130あるいは窪み部は、グリッパが櫛歯状の複数の枝126ではなく、一対の板部材を有する場合でも、一対の先端部127の両方あるいは一方のみに設けられることで、後述する把持量調整において把持対象がほぐれながら少量ずつグリッパ内部から外部に送り出される(落とされる)ことが期待できる。ただし、これら突起部130あるいは窪み部を備えない構成であっても後述する把持量調整は成立する。
【0013】
図6は、一対の先端部127が樹脂で形成される場合において、開状態の平行グリッパ123の正面図を示している。
図6に示すように、平行グリッパ123における一対の先端部127で挟まれた間隔は、例えば、複数の枝126の根元から複数の枝126の先に向けて、先細り(テーパー)で形成されてよい。すなわち、複数の枝126は、複数の枝126の根元BRに対する垂直方向に対して、所定の角度だけ開口部125に対して内側に傾けて延伸する。所定の角度は、例えば、+2°である。このため、突起部130の長さが一定である場合、正面から平行グリッパ123を見ると、
図5に示す閉状態の平行グリッパ123において、対向する突起部130同士の間隔は、根元BRに向けて広くなっていくこととなる。フォーク形状を傾けることで、平行グリッパ123が閉じた時に把持対象133が引き込まれて確実に把持対象133を掴めることができる。なお、一対の先端部127が把持対象の把持により撓みやすい樹脂ではなく、撓みにくい金属などの材質で形成される場合、一対の先端部127は、互いに平行、すなわち所定の角度=0°であってもよいし、先に向かって広がる、すなわち所定の角度=マイナスの角度であってもよい。
【0014】
また、
図3乃至
図6に示すように、例えば、平行グリッパ123の根元部分121には、力覚センサが設置されてもよい。このとき、力覚センサは、平行グリッパ123により把持された把持対象133の重さを検知する。力覚センサは、把持対象133の重さを、把持推定装置17に出力する。
【0015】
送出機構124は、コントローラ171から出力された制御信号に従って回転するモータMTと、モータMTの駆動軸に接続され当該駆動軸の回転に伴って回転するピニオンギアPGと、ピニオンギアPGと嵌合し、一方の先端部128に設けられたラックギアRGと、を有する。送出機構124は、平行グリッパ123で把持されている対象を平行グリッパ123の外に送り出す。平行グリッパの外とは、例えば、一対の先端部127の外側であって、
図6に示す開口部125の下方に相当する。
【0016】
図7は、送出機構124により、移動された一方の先端部128の一例を示す図である。
図7に示すように、送出機構124は、一方の先端部128を、他方の先端部129に対して相対的に、複数の枝126の長軸方向に沿って移動させる。送出機構124の制御については、後ほど説明する。
【0017】
観測装置13は、例えば、各種カメラにより実現される。当該カメラは、例えば、RGB(Red、Green、Blue)カメラにより実現される。RGBカメラは、トレイ131に配置された複数の把持対象133を撮影する光学カメラである。このとき、観測データは、RGB画像に相当する。RGB画像における画素は、例えば、赤、緑、青の色値(0乃至255)を有する。なお、RGBカメラの代わりに、単色(Monochrome:モノクロ)カメラが用いられてもよい。また、観測装置13は、上記観測データとは異なる種類の観測データを取得してもよい。このとき、観測装置13は、3次元計測カメラ(以下、D(Depth)カメラと呼ぶ)により実現される。また、観測装置13は、RGBカメラとDカメラ(以下、RGB-Dカメラと呼ぶ)とにより実現されてもよい。Dカメラによる画像(以下、D画像と呼ぶ)の画素は、深さ情報を有する。深さ情報は、例えば、基準位置に対する深さ(cm)である。以下、説明を具体的にするために、観測装置13は、RGB-Dカメラにより実現されるものとする。RGB-Dカメラによる撮影範囲は、把持対象133が配置されたトレイ131の全域が含まれる範囲である。基準位置は、例えば、観測データの取得位置、すなわちRGB-Dカメラの設置位置である。
【0018】
計量装置15は、例えば、トレイ131の下面に配置される。計量装置15は、例えば、トレイ131とトレイ131に配置された把持対象133との合計の重さを計測するスケールに相当する。計量装置15は、トレイ131の計量に伴う計量データを、把持推定装置17に出力する。把持推定装置17は、把持対象133の把持前後における計量装置15からの出力の計測データの差分から把持量を算出し、この把持量を、例えば、後述の把持量推定モデルの生成(学習)において用いる。このため、把持量推定モデルの生成が完了すれば、計量装置15は、システム1に用いずともよい。また、平行グリッパ123に力覚センサが設けられている場合、計量装置15をトレイ131の下面に配置せずともよい。また、力覚センサが平行グリッパ123に力覚センサが設けられていない場合、計量装置15は、例えば、トレイ131の下面に配置される。
【0019】
把持推定装置17は、コントローラ171を有する。
図1に示すように、コントローラ171は、取得部173と、推定部175と、選択部179と、制御部181とを有する。
【0020】
取得部173は、把持対象133の観測データを取得する。観測データは、上述のように、把持対象133の画像データを含む。また、観測データは、観測データの取得位置から把持対象133の表面までの距離データを含む。すなわち、距離データは、観測データの取得位置であるDカメラの設置位置から把持対象133の表面までの距離を示すデータである。把持対象133は、例えば、キャベツの千切り、大根の細切りなどの細片の食品である。なお、取得部173は、観測データとは異なる種類の観測データを取得してもよい。
【0021】
具体的には、取得部173は、RGB画像およびD画像を取得する。より詳細には、取得部173は、把持対象133の分布領域における複数の部分領域各々において観測データを取得する。把持対象133の分布領域は、例えば、トレイ131において把持対象を配置可能な領域に相当する。複数の部分領域各々は、所定サイズの領域であって、RGB画像およびD画像からクロップ(Crop)された領域(切り取られた領域:パッチ)に相当する。部分領域の中心を把持点と呼ぶことがある。以下、RGB画像における部分領域をRGBパッチ画像と呼ぶ。また、D画像における部分領域をDパッチ画像と呼ぶ。取得部173は、計量データを計量装置15から取得、またはエンドエフェクタ111により把持された把持対象133の重さを力覚センサから取得する。すなわち、取得部173は、平行グリッパ123で把持されている対象の量を、計量装置15または力覚センサから取得する。
【0022】
推定部175は、把持対象133の表面から一対の先端部127を仮に挿入したときの深さ(以下、挿入深さと呼ぶ)と観測データとに基づいて、把持装置11により把持対象133の把持量に関するデータ(一例では把持量の確率分布のパラメータ)を出力する。例えば、出力されるデータが標準正規分布のパラメータである場合、出力されるのは、標準正規分布の平均および標準偏差である。平均は、把持装置11により把持対象133が把持される把持量の平均値(以下、推定把持量と呼ぶ)に対応する。推定把持量は把持量の推定値である。
【0023】
標準偏差は、推定された把持量だけが把持装置11により把持される不確実性の指標(以下、不確実性指標と呼ぶ)に相当する。不確実性指標は、例えば、推定把持量だけを把持装置11が把持する不確実性を示す度合い(または割合)である不確実度であってよい。すなわち、不確実性指標は、実際の把持される量が推定把持量に近いか否かを評価するための指標である。なお、不確実性指標は、当該不確実度の代わりに、推定された把持量だけを把持装置11が把持する確かさを示す度合い(または割合)、すなわち推定された把持量を把持装置11が把持する信頼度であってもよい。
【0024】
挿入深さは、予め設定された長さであって、把持推定装置17におけるメモリに予め記憶される。挿入深さ(cm)は、例えば、+2.0、+2.25、+2.50、+2.75、+3.00、+3.25、+3.50、+3.75、+4.0の9パターンである。なお、上記挿入深さのパターンは一例であって、任意に設定、調整が可能である。
【0025】
推定部175は、把持対象で占められた箇所について、平行グリッパ123による把持対象の把持量と、当該把持量が把持される不確実性の指標と、を推定する。具体的には、推定部175は、観測データにおける上記複数の部分領域各々において、挿入深さのパターンに応じた推定把持量と不確実性指標とを出力する。推定部175は、例えば、平行グリッパ123の挿入深さの情報(以下、挿入深さ情報と呼ぶ)と把持対象133の観測データとを入力として確率分布を出力するように学習された学習済みの把持量推定モデルに、観測データと挿入深さ情報とを入力し、確率分布を推定する。挿入深さ情報Ins[cm]は、Dパッチ画像の中央値(median)に、挿入深さに対応する変数valを加算した値(Ins=median+val)に相当する。
【0026】
より詳細には、推定部175は、複数のRGBパッチ画像各々と、複数のDパッチ画像各々と、挿入深さのパターンに応じた複数の挿入深さ情報各々とを学習済みの把持量推定モデルに入力し、複数の部分領域各々と複数の挿入深さ各々とに応じた推定把持量と標準偏差とを出力する。換言すれば、推定部175は、挿入深さと観測データとに基づいて、確率分布を推定する。推定された確率分布は、RGB-Dパッチ画像の個所において、平行グリッパ123を挿入深さだけ挿入して把持される把持対象の把持量に関する確率の分布(横軸が確率変数としての把持量に対応し、縦軸が把持量に対する確率密度に対応する)を表している。
【0027】
例えば、把持量X[g]を把持する確率が標準正規分布N(μ、σ
2)で表現される確率分布によりモデル化される場合、把持量推定モデルが出力する確率分布のパラメータは、平均値μと標準偏差σである。すなわち、平均値μと標準偏差σとをパラメータとし有する標準正規分布N(μ、σ
2)は、入力されたRGB-Dパッチ画像の箇所において挿入深さ情報Ins[cm]に従って平行グリッパ123を挿入して把持される対象の把持量X[g]の確率分布Pを表している。換言すると、この箇所においてこの挿入深さ情報Ins[cm]で平行グリッパ123により把持される対象の把持量がX[g]である確率P(X)は、以下の式で表される。
【数1】
【0028】
すなわち、推定部175は、複数の部分領域および複数の挿入深さごとに、RGBパッチ画像とDパッチ画像とを連結(concatinate)し、さらに挿入深さ情報を連結(concatinate)して学習済みの把持量推定モデルに順次入力することで、複数の部分領域と複数の挿入深さとに応じた複数の確率分布を推定する。次いで、推定部175は、複数の確率分布において、複数の確率分布のパラメータをそれぞれ出力する。具体的には、推定部175は、複数の部分領域と複数の挿入深さとに応じた複数の推定把持量と複数の推定把持量に対応する複数の不確実性指標(例えば、標準偏差)とを出力する。換言すれば、推定部175は、RGB-Dパッチ画像と挿入深さ情報とが把持量推定モデルに入力されると、RGB-Dパッチ画像の箇所での推定把持量と推定把持量に対応する標準偏差とを出力する把持量推定モデルを利用している。
【0029】
これまでの説明において、把持量推定モデルに関する確率分布は標準正規分布を仮定していたが、確率分布は標準正規分布に限定されない。例えば、確率分布として、N個の標準正規分布からなる混合正規分布を仮定してもよい。把持量X[g]を把持する確率が混合正規分布で表現される確率分布でモデル化される場合、把持量推定モデルに入力されたRGB-Dパッチ画像の箇所において挿入深さ情報Ins[cm]に従って平行グリッパ123により把持される対象の把持量がX[g]である確率P(X)は、以下の式で表される。
【数2】
このとき、把持量推定モデルから出力される確率分布Pのパラメータは、N個の標準正規分布に対するk番目の標準正規分布の混合比α
k、k番目の標準正規分布の平均値μ
k、k番目の標準正規分布の標準偏差σ
k(k=1~N)の3N個となる。
【0030】
また、把持量推定モデルは、RGB-Dパッチ画像と挿入深さ情報とを入力として、推定把持量μを出力する学習済みモデルであってもよい。このとき、把持量推定モデルは、RGB-Dパッチ画像と挿入深さ情報とから推定把持量μを出力する。すなわち、把持量推定モデルは、標準偏差σを出力しない。この場合、推定部175は、標準偏差σを出力しない複数の異なる把持量推定モデルにRGB-Dパッチ画像と挿入深さ情報とを入力し、これら複数のモデルから出力される複数の推定把持量の平均および標準偏差をそれぞれ推定把持量μおよび標準偏差σとして算出してよい。
【0031】
把持量推定モデルは、例えば、把持装置11による把持対象133の把持前の観測データおよび挿入深さ情報をモデルに入力して当該モデルから出力されるデータと、把持装置11により把持された把持対象133の把持量の実測値と、に基づいて当該モデルのパラメータを更新することで得られる。この手順については、後ほど説明する。
【0032】
選択部179は、少なくとも当該推定された把持量および推定された不確実性の指標に基づいて当該箇所が所定条件を満たす箇所であるかを判定する。選択部179は、把持対象で占められた箇所であって、当該把持対象を目標量より多く把持できる所定条件を満たす箇所を、平行グリッパ123によって把持対象が把持される箇所として特定する。例えば、選択部179は、複数の部分領域各々における推定把持量μと推定把持量μに関する標準偏差σとを用いて、複数の部分領域から、把持対象を把持装置11によって把持する領域を選択する。以下、説明を具体的にするために、ユーザにより設定された目標となる把持量(以下、目標把持量と呼ぶ)は52gであるものとする。このとき、選択部179は、所定の判定条件を満たす領域(以下、条件適合領域と呼ぶ)を、複数の部分領域から特定する。所定の判定条件は、推定把持量から標準偏差のn倍(nは、正数)を差分した値が目標把持量を超過する条件であって、目標把持量<μ-n*σで表される。上記nは、任意に設定可能である。例えばn=1が設定され、目標把持量が52gであるとき、
図10で示される平均μ=60gかつ標準偏差σ=7gの部分領域PRが条件を満たす。nを小さくすればするほど、把持装置11による把持量が少なくなる可能性が高まる。このとき、把持量が少なくなった量に応じて、後述の事後把持(post-grasping)に掛かる時間は短くなる。
【0033】
一方、nを大きくすればするほど、把持装置11による把持量が多くなる可能性が高まる。このとき、把持量が多くなった量に応じて、事後把持(post-grasping)に掛かる時間は長くなる。事後把持に掛かる時間と、把持された把持対象が目標把持量に到達しない場合における把持のリトライに掛かる時間とのトレードオフ(代償)に応じて、ユーザは、nを適宜調整して設定することができる。次いで、選択部179は、例えば、特定された複数の部分領域に関する平均値μと目標把持量との差分の絶対値|目標把持量-μ|を計算する。
【0034】
選択部179は、条件適合領域のうち、判定量が最小になる部分領域を、把持装置11によって把持対象を把持する領域(以下、把持領域と呼ぶ)として選択する。なお、選択部179は、特定された複数の部分領域に関する平均値μと目標把持量との差分の絶対値|目標把持量-μ|を判定量として用いて、当該判定量が最小となる個所を、把持領域として選択してもよい。また、選択部179は、判定量として、平均値μと目標把持量との差分の絶対値|目標把持量-μ|に標準偏差σを加えた値を、判定量として算出してもよい。このとき、選択部179は、算出された判定量が最小となる部分領域を、条件適合領域から把持領域として選択する。すなわち、選択部179は、不確実性指標である標準偏差σが低いものに関する部分領域を、把持領域として選択する。換言すれば、平均値μと目標把持量との差分の絶対値|目標把持量-μ|に標準偏差σを加えた値が最小ということは、目標把持量と平均値μとの差(|目標把持量-μ|)が小さく、且つ、その予測のバラつきである標準偏差σが小さいことを意味する。
【0035】
なお、確率分布として混合正規分布が用いられる場合、選択部179は、把持領域を選択するために用いられる推定把持量μとして、例えば、以下のような3つの手法のいずれかにより特定されてもよい。
【数3】
【0036】
また、選択部179は、標準偏差σを用いずに、把持領域を選択してもよい。例えば、選択部179は、目標把持量<μ-cons.(定数)を満たす箇所を、条件適合領域として特定する。次いで、選択部179は、条件適合領域の中から、|目標把持量-μ|が最小になる箇所を、把持領域として選択する。
【0037】
制御部181は、把持装置11の動作(把持対象133の把持動作、送出動作、移動動作、および解放動作)を制御する。具体的には、制御部181は、把持動作として、選択された把持位置および挿入深さで把持対象133を把持するように、把持装置11を制御する。これにより、把持装置11は、把持位置および挿入深さにおいて把持対象133を把持する。具体的には、制御部181は、把持対象133を平行グリッパ123で把持して引き上げた後に離すように平行グリッパ123を制御し(以下、事前把持(pre-grasping)と呼ぶ)、平行グリッパ123から離された把持対象を再度把持するように、平行グリッパ123を制御する。これにより、平行グリッパ123は、送出機構124で送り出される部分を含む把持対象を再度把持する。上記把持動作の詳細については、後ほど説明する。
【0038】
制御部181は、送出動作として、平行グリッパ123で把持されている対象の量と目標量とに基づいて、送出機構124を制御する。これにより、送出機構124は、開口部125に向けてグリッパにより把持された把持対象を送り出す。具体的には、送出機構124は、一対の先端部127のうち一方の先端部128において、複数の枝126の根元から複数の枝126の先に向けて把持された把持対象を送り出す。例えば、制御部181は、把持された把持対象の量と目標把持量とに基づいて、送出機構124による把持対象の送り出しの速度を制御する。なお、制御部181は、把持された把持対象の量と目標把持量とに基づいて、送出機構124による把持対象の送り出しの回数を制御してもよい。また、制御部181は、この速度制御と回数制御の両者を実施してもよい。
【0039】
すなわち、送出動作は、一対の先端部127のうち一方の先端部128を、送出機構124におけるラックピニオン機構(ラックギアRGおよびピニオンギアPG)により上下動させ、一対の先端部127により把持されている把持対象をアクティブに落とす(送り出す)ことで、一対の先端部127による把持量を調整する動作に相当する。アクティブに落とすことは、平行グリッパ123の開口部125を広げて把持対象を自然落下させることではなく、一方の先端部128を下方に動かすことで、一方の先端部128を動かす前は一対の先端部127で挟んで把持された把持対象を、一対の先端部127で挟まない状態にして落とすこと、すなわち、一対の先端部127の外に把持対象の一部を送り出すことに相当する。なお、一対の先端部127のうち一方の先端部128を上下動させて把持対象を送り出すラックピニオン機構は、送出動作の実現手段の一例であり、送出動作は、他の既知の機構により実現されてもよい。これらのことから、送出動作は、把持対象の把持後の動作(post-grasping)であって、一対の先端部127により把持された把持対象の把持量の調整に相当する。当該送出動作の詳細については、後ほど説明する。
【0040】
制御部181は、把持された把持対象133を、予め設定された目的位置まで移動し、この目的位置で、把持対象133を解放するように、把持装置11を制御する。移動動作および解放動作の制御については、既知の制御が適宜利用であるため、説明は省略する。
【0041】
以上、システム1における構成について説明した。以下、システム1による把持動作から解放動作にまでの一連の処理(以下、把持解放処理と呼ぶ)について説明する。
図8は、把持解放処理の手順の一例を示すフローチャートである。以下、説明を具体的にするために、把持量推定モデルに関する確率分布は、標準正規分布であるものとする。
【0042】
(把持解放処理)
(ステップS801)
選択部179は、事前把持の対象となる部分領域を選択する。具体的には、取得部173は、把持対象133に関する所定サイズの複数の部分領域それぞれについて、観測データを、観測装置13から取得する。所定サイズは、平行グリッパ123による把持可能なサイズとして、把持推定装置17におけるメモリに予め記憶される。
図9は、観測データの一例を示す図である。
図9に示すように、取得部173は、例えば、複数の部分領域それぞれについて、トレイ131に配置された把持対象133である細片の食品のRGB画像とD画像とを取得する。
【0043】
次いで、取得部173は、所定サイズのRGBパッチ画像およびDパッチ画像(以下、RGB-Dパッチ画像と呼ぶ)を、複数個所、観測データから取得する。複数のRGB-Dパッチ画像は、把持量推定モデルに順次入力される。RGB-Dパッチ画像は、例えば、観測データにおける全領域に対して、所定の幅でずらしながら複数設定される。
【0044】
推定部175は、複数の部分領域および複数の挿入深さごとに、RGB-Dパッチ画像と挿入深さ情報とを連結して学習済みの把持量推定モデルに順次入力することで、複数の部分領域と複数の挿入深さとに応じた複数の推定把持量と複数の標準偏差とを出力する。
【0045】
図10は、把持量推定モデルに対する入出力の概要の一例を示す図である。
図10に示すように、複数の部分領域および複数の挿入深さごとに、RGB-Dパッチ画像と挿入深さ情報とが把持量推定モデルに入力される。1つのRGB-Dパッチ画像に関して、例えば、+2.0、+2.25、+2.50、+2.75、+3.00、+3.25、+3.50、+3.75、+4.0の9パターンそれぞれの挿入深さを変数valとして適用した挿入深さ情報Ins[cm]が、把持量推定モデルに順次入力される。把持量推定モデルは、確率分布Pのパラメータを出力する。
【0046】
確率分布Pのパラメータは、
図10に示すように、例えば、標準正規分布のパラメータである平均値μと標準偏差σとである。例えば、
図10における四角の枠PRは、
図10に示す観測データにおけるRGB-Dパッチ画像に対応する部分領域である。
図10における四角の枠PRに示すように、RGB-Dパッチ画像と挿入深さとしての変数valが例えば+2.0cmである場合、把持量推定モデルは、平均値(推定把持量)として60gを出力し、標準偏差として7を出力する。
【0047】
続いて、選択部179は、把持量推定モデルから出力された確率分布のパラメータと目標把持量とに基づいて、所定の判定条件により、条件適合領域を特定する。次いで、選択部179は、目標把持量と推定把持量とを用いて(場合によっては標準偏差を用いて)、判定量を算出する。選択部179は、判定量の定義に応じて、判定量が最小となる部分領域を、条件適合領域から把持領域として選択する。以上により、事前把持の対象となる部分領域が把持領域として選択される。このとき、選択された把持領域に関する挿入深さ情報、すなわち判定量を最小にしたパラメータを把持量推定モデルから出力させた挿入深さ情報が、選択部179から制御部181に送信される。
【0048】
(ステップS802)
制御部181は、選択された把持領域における事前把持を実行するように、把持装置11を制御する。具体的には、制御部181は、把持領域の直上にエンドエフェクタ111が位置するように、より詳細には把持領域の中心位置に、開口部の125の中心が位置するように、複数のリンク113の動作に関する駆動装置を制御する。このとき、開口部125の開口幅が所定の幅まで開いていなければ、制御部181は、開口部125の開口幅を所定の幅まで広げるように、一対の先端部127の開閉に関する駆動装置(以下、開閉モータと呼ぶ)を制御する。これらにより、エンドエフェクタ111は、予め設定された開き幅まで開口部125が開いた状態で、把持領域の直上に移動する。
【0049】
次いで、制御部181は、把持領域において、送信された挿入深さ情報における挿入深さ(以下、把持深さと呼ぶ)に一対の先端部127の先端を移動させるように、送信された挿入深さ情報に従って、複数のリンク113の動作に関する駆動装置を制御する。これにより、一対の先端部127の先端は、把持領域における把持深さまで挿入される。次いで、制御部181は、予め設定された閉じ幅まで開口部125を狭めるように、開閉モータを制御する。一例として、制御部181は、開閉モータの負荷をモニタし、当該負荷が所定の閾値を超えるまで当該開閉モータを動作させる。所定の閾値は、一対の先端部127が把持対象をある程度しっかりと把持することで、開閉モータに高い負荷が生じた状態に対応する。これにより、一対の先端部127は、予め設定された閉じ幅まで開口部125を狭める。
【0050】
なお、上記説明では、開き幅、閉じ幅は、予め設定されたものとして説明したが、これに限定されない。例えば、把持量推定モデルは、閉じ幅を更に用いて学習されてもよい。このとき、閉じ幅は、選択された把持領域に関して把持量推定モデルに入力された閉じ幅が用いられることとなる。すなわち、推定部175は、複数の部分領域ごと、複数の挿入深さごと、および複数の閉じ幅ごとに、RGB-Dパッチ画像と挿入深さ情報と閉じ幅とを連結して学習済みの把持量推定モデルに順次入力することで、複数の部分領域と複数の挿入深さとに応じた複数の推定把持量と複数の標準偏差とを出力する。開き幅に関しても同様である。
【0051】
制御部181は、把持対象を把持した状態で把持領域の直上へ向けてエンドエフェクタ111を移動させるように駆動装置を制御する。把持領域の直上への移動距離は、例えば、把持深さ、把持深さより短い距離、把持深さより長い距離など、任意に設定可能である。これにより、エンドエフェクタ111は、把持対象を把持した状態で、上方に移動される。続いて、制御部181は、予め設定された開口幅まで開口部125を広げるように、開閉モータを制御する。これにより、一対の先端部127は、予め設定された開口幅まで開口部125を広げる。以上により、事前把持は完了する。
【0052】
(ステップS803)
制御部181は、把持領域において、把持深さに一対の先端部127の先端を移動させるように、送信された挿入深さ情報に従って、複数のリンク113の動作に関する駆動装置を制御する。これにより、一対の先端部127の先端は、把持領域における把持深さまで挿入される。次いで、制御部181は、予め設定された閉じ幅まで開口部125を狭めるように、開閉モータを制御する。これにより、一対の先端部127は、把持対象を把持する。把持深さまでの一対の先端部127の先端の挿入、および一対の先端部127による把持対象の把持は、ステップS802における処理と同様なため説明は省略する。
【0053】
(ステップS804)
制御部181は、把持対象を再度把持した平行グリッパ123を、複数回に亘って揺らすように、第2機構を制御する。例えば、制御部181は、エンドエフェクタ111に把持された把持対象の一部を振るい落とすように、複数のリンク113の動作に関する駆動装置を制御する。これにより、平行グリッパ123は、制御部181による制御の下で振れる。なお、第2機構は、把持対象を再度把持した平行グリッパ123を揺動する揺動機構、および/または把持対象を再度把持した平行グリッパ123を旋回する旋回機構を有していてもよい。当該揺動機構および旋回機構は、複数のギア、ラックアンドピニオンなどか既知の技術が適用可能であるため、説明は省略する。なお、本ステップにおける処理は、把持解放処理における追加可能な処理(オプショナルな処理)であるため、適宜省略可能であるが、意図せずして引き上げてしまった把持対象を振るい落とすことができ、事後把持における把持量の調整の精度を向上させることができる。
【0054】
図11は、ステップS802乃至ステップS804に関する事前把持および事前把持後の把持対象の把持などの手順の概要の一例を示す模式図である。
図11における(1)乃至(4)における状態は、ステップS802における事前把持に対応する。
図11における(1)に示すように、エンドエフェクタ111は、制御部181による制御の下で、把持領域の直上に移動後、一対の先端部127を、挿入深さまで挿入する。次いで、
図11における(2)に示すように、エンドエフェクタ111は、制御部181による制御の下で、開口部125を狭める。これにより、一対の先端部127において把持対象が把持される。
【0055】
続いて、
図11における(3)に示すように、エンドエフェクタ111は、制御部181による制御の下で、把持対象を把持した状態で、把持領域の直上へ向けて移動する(Unt)。これにより、一対の先端部127において把持された把持対象と、トレイ131における把持対象133との絡まり、すなわち細片食品同士の絡まりがほぐれる。細片食品の絡まりがほぐれる個所は、
図11の(3)におけるEntに示されるようにグリッパの周辺である。また、
図11の(3)におけるGrOは、一対の先端部127により把持された把持対象であって、トレイにおける把持対象からほぐれた様子を示している。さらに、
図11における(4)に示すように、エンドエフェクタ111は、制御部181による制御の下で、開口部125を広げる。これにより、一対の先端部127において把持された把持対象は、解放される。
【0056】
また、
図11における(5)および(6)における状態は、ステップS803での処理に対応する。
図11における(5)に示すように、エンドエフェクタ111は、制御部181による制御の下で、一対の先端部127を挿入深さまで挿入し、開口部125を狭める。これにより、一対の先端部127において把持対象GrOが再度把持される。このとき、エンドエフェクタ111は、制御部181による制御の下で、振れてもよい。
図11における(6)に示すように、エンドエフェクタ111は、制御部181による制御の下で、把持対象を把持した状態で、把持領域の直上へ向けて移動する。これらにより、一対の先端部127において把持された把持対象と、トレイ131における把持対象133との絡まりを低減させて、すなわち細片食品同士の絡まりによる意図しない量の食品の把持を低減させて、推定把持量に近い量の把持対象を把持することができる。
【0057】
(ステップS805)
取得部173は、ステップS803の処理の前後における計量装置15からの出力に基づいて、把持装置11により把持された把持対象の重さ(以下、把持重量と呼ぶ)を取得する。なお、取得部173は、ステップS803の処理の前後における力覚センサからの出力に基づいて、把持重量を取得してもよい。
【0058】
制御部181は、事後把持として、把持重量と目標把持量とに基づいて、ラックアンドピニオン機構における移動の上限と下限との間で、送出機構124の動作すなわち把持量の調整を制御する。例えば、制御部181は、把持重量と目標把持量との差に基づいて、把持量の調整に係る制御量を決定する。把持量の調整に係る制御量は、一方の先端部128の上下動に関連し、例えば、当該上下動の幅、当該上下動の実行時間、当該上下動の回数などである。制御部181による制御量の決定方法は、深層学習ベースの方法でも、センサ値のフィードバック制御による方法でも、いずれでも実現可能である。
【0059】
例えば、一方の先端部128の上下動が複数のステップの上下動により実現される場合、1ステップごとの一方の先端部128の移動量(以下、ステップ移動量と呼ぶ)は、目標把持量と現在の把持量(把持重量)とに依存する。具体的には、制御部181は、目標把持量(e.g.38[g])と現在の把持量(e.g.60[g])との差分が大きいほど、ステップ移動量を増大させる。このとき、一方の先端部128の上下動において一方の先端部128の移動速度が速くなる。このため、目標把持量と把持重量との差分が大きいほど、一対の先端部127から落ちる把持対象(例えば、細片食品)の落下量が増大する。
【0060】
例えば、当該差分が30g以上である場合、制御部181は、ステップ移動量が5cmとなるように、送出機構124におけるモータMTを制御する。また、当該差分が10g未満である場合、制御部181は、ステップ移動量が1cmとなるように、送出機構124におけるモータMTを制御する。当該差分が10g以上30g未満である場合、制御部181は、ステップ移動量が1cmから5cmの線形補間で当該差分と対応付けられた移動量となるように、送出機構124におけるモータMTを制御する。制御部181は、例えば、当該差分が所定の重さ以下となるまで、送出機構124の動作すなわち把持量の調整の制御を、繰り返し実行する。所定の重さとは、例えば、2gである。
【0061】
なお、把持量の調整の制御は、ステップ移動量すなわち1ステップあたりの一方の先端部128の移動量の制御に限定されない。例えば、制御部181は、予め設定された1ステップ移動量(以下、所定ステップ移動量と呼ぶ)を用いて実行されるステップ数を、目標把持量と把持重量との差分に応じて制御してもよい。例えば、所定ステップ移動量が1cmである場合について、把持量の調整の制御について説明する。例えば、当該差分が30g以上である場合、制御部181は、ステップ数を5としてモータMTを制御する。このとき、一方の先端部128は5cm移動する。また、当該差分が10g未満である場合、制御部181は、ステップ数を1としてモータMTを制御する。このとき、一方の先端部128は1cm移動する。当該差分が10g以上30g未満である場合、制御部181は、ステップ数が1から5の線形補間で当該差分と対応付けられた移動量となるように、モータMTを制御する。
【0062】
なお、制御部181は、本ステップ805において、把持量の調整の制御とともに、ステップS804で説明した平行グリッパ123を振る動作の制御を同時に行ってもよい。把持量の調整の制御とともに平行グリッパ123が振られるため、平行グリッパ123からはみ出た状態で把持されている把持対象を、効率的に振るい落とすことができる。このため、把持量の調整の制御とともに平行グリッパ123を振る場合、把持量の調整の線形性を向上することできる。
【0063】
図12は、事後把持における把持量の調整に関する概要の一例を示す模式図である。
図12における(A)に示すように、平行グリッパ123は、制御部181による制御の下で、一対の先端部127を挿入深さまで挿入された状態で、開口部125を狭める。これにより、一対の先端部127において把持対象GrOが再度把持される。このとき、
図12における(A)に示すように、フォーク形状の一方の先端部128および他方の先端部129における複数の枝の間の隙間とは、嵌め合い状態となる。
図12における(A)は、ステップS803および
図11における(5)に対応する。
【0064】
図12における(B)に示すように、ランクアンドピニオン機構R&PにおけるピニオンギアPGは、制御部181による制御の下でのモータMTの回転により、回転を示す矢印RAに沿って回転する。ピニオンギアPGの回転のステップに応じて、一方の先端部128は、下方DAへ向けて移動する。これにより、把持対象GrOは、平行グリッパ123の外へ送り出される。
【0065】
図12における(C)に示すように、制御部181により決定された制御量で、送出機構124が制御されると、平行グリッパ123の外へ送り出された把持対象DGOに対すは、トレイ131内に落下する。一方の先端部128の上下動が制御部181による制御の下で繰り返されることで、把持量の調整が実現される。
【0066】
(ステップS806)
制御部181は、把持量調整後の把持対象を、例えば弁当箱などの移載先へ移動させるように、複数のリンク113の動作に関する駆動装置を制御する。具体的には、制御部181は、一対の先端部127を移載先の直上に移動させるように、駆動装置を制御する。次いで、制御部181は、開口部125の開口幅を所定の幅まで広げるように、開閉モータを制御する。これらにより、平行グリッパ123により把持された把持対象は、移載先に解放(リリース)される。以上により、把持解放処理は終了する。なお、本システム1において、把持装置11は、グリッパ123の表面に付着した対象を削ぎ落す機構をさらに有してもよい。この機構は一例としてグリッパ表面に沿って上下あるいは左右に部材を往復させる機構であり、この部材は例えばグリッパ123の枝126どうしの隙間を梳くような形状でよい。制御部181は、所定のタイミングでこの削ぎ落し機構を制御して、グリッパ123の表面に付着した対象を削ぎ落すようにしてもよい。所定のタイミングは例えばステップS806の処理が完了する度に行ってもよいし、ステップS806の処理が所定回数完了する度に行ってもよい。
【0067】
以上で説明した実施形態に係るシステム1は、例えば細片の食品である把持対象133の観測データを取得し、取得された観測データに基づいて、把持装置11により把持対象133が把持される把持量を推定し、推定された把持量に基づいて把持領域を特定する。次いで、本システム1は、平行グリッパ123で把持されている対象を平行グリッパ123の外に送り出す送出機構124を備え、グリッパで把持されている対象の量(把持重量)と目標量(目標把持量)とに基づいて、送出機構124を制御する。例えば、本システム1は、事前把持として、把持対象を平行グリッパ123で把持して引き上げた後に離すように平行グリッパ123を制御し、平行グリッパ123から離された把持対象を再度把持するように平行グリッパ123を制御する。上記事前把持により、本システム1は、絡まった状態で引き上げられる把持対象(細片食品)の量を減らすことができ、事後把持における把持量の調整の精度を向上させることができる。
【0068】
これらのことから、実施形態に係るシステム1によれば、ユーザが所望する把持量を観測データから推定し、推定された把持量のうち不確実性の度合いが低い領域を、把持領域として選択することができる。加えて、本システム1に係るエンドエフェクタ111によれば、絡まりやすい細片食品を適切に把持することができる。このため、本平行グリッパ123によれば、専用の器具や定量を把持するエンドエフェクタは不要であって、設計変更などの多大な労力を削減することができる。
【0069】
以上のことから、本システム1によれば、千切りキャベツや小口切りされたネギなど、互いに絡まりやすかったり付着しやすかったりする細片食品の定量把持の精度を向上することができる。
【0070】
また、以上で説明した実施形態に係るシステム1において、制御部181は、グリッパ123で把持されている対象の量と目標量とに基づいて送出機構124を制御することで、グリッパ123から対象をほぐしながら少しずつ落とす。この「対象をほぐしながら少しずつ落とす」という作用効果に着目して、本システム1を次のように使うこともできる。すなわち、システム1において、制御部181は、把持装置11を制御してグリッパ123に対象を把持させ、対象を把持しているグリッパ123を対象の移載先の直上に移動させ、目標量だけグリッパ123から対象を移載先に落とすように送出機構124を制御することもできる。この場合、制御部181がグリッパ123から実際に落ちた対象の量(落下量)と落とすべき対象の目標量とを取得して落下量と目標量とに基づいて送出機構124による対象の送出を停止してもよいし、移載先に計量装置を設けてその計測装置によって計測された落下量が目標量に達したことを検知してその検知信号を基に制御部181が送出機構124による対象の送出を停止してもよい。落下量は、送出機構124による送出開始時点のグリッパ123の把持量と現在の把持量との差分から算出してもよいし、移載先に計量装置を設けてその計量装置によって計測してもよい。
【0071】
以下、把持量推定モデルの生成過程について説明する。把持量推定モデルの生成過程は、学習過程に相当する。このとき、
図1に示すシステム1または把持推定装置17は、モデル学習装置として機能する。
図13は、把持量推定モデルの生成処理(以下、推定モデル生成処理と呼ぶ)の手順の一例を示すフローチャートである。なお、推定モデル生成処理は、エンドエフェクタ111の種別に応じて実行される。
【0072】
(推定モデル生成処理)
(ステップS131)
取得部173は、把持対象133に関する所定サイズの部分領域について、観測データを、観測装置13から取得する。トレイ131における部分領域の位置は、予め設定される。取得部173は、部分領域の位置を、制御部181に出力する。また、取得部173は、部分領域の位置を、メモリに記憶する。推定部175は、設定された部分領域に関するRGB-Dパッチ画像と挿入深さ情報とを、学習対象のモデルに入力する。
【0073】
(ステップS132)
推定部175は、入力されたRGB-Dパッチ画像と挿入深さ情報とに対応する把持量の確率分布のパラメータを、学習対象のモデルで推定する。確率分布が標準正規分布の場合、確率分布のパラメータは、平均値μと標準偏差σである。また、確率分布が混合正規分布である場合、確率分布のパラメータは、N個の標準正規分布に対するk番目の標準正規分布の混合比αk、k番目の標準正規分布の平均値μk、k番目の標準正規分布の標準偏差σk(k=1~N)の3N個となる。なお、確率分布が用いられない場合、推定部175は、推定把持量μを出力する。推定把持量μは、確率分布のパラメータのうち平均値に相当する。
【0074】
(ステップS133)
制御部181は、設定された部分領域に対して把持対象133の把持を実行するように、把持装置11を制御する。把持装置11は、制御部181による制御のもとで、部分領域における把持対象133を把持する。取得部173は、計量装置15もしくは力覚センサからの出力に基づいて、把持装置11による把持量の実測値、すなわち実際の把持量を取得する。計量装置15からの出力である計量データに基づいて実測値を計算する場合、取得部173は、例えば、把持装置11による把持対象133の把持の前後における計量データを差分することで、実測値を取得する。なお、力覚センサがエンドエフェクタ111に搭載されている場合、取得部173は、力覚センサからの出力を重さに変換することにより、実測値を取得する。
【0075】
(ステップS134)
推定部175は、推定された確率分布において、把持された把持対象の量が把持される確率を計算する。確率の計算は、既知の方法を適用可能であるため、説明は省略する。なお、確率分布が用いられない場合、本ステップは不要となる。
【0076】
(ステップS135)
推定部175は、計算された確率に基づいて損失を計算する。確率分布が標準正規分布であって、ステップS133において取得された実際の把持量がX[g]である場合、推定部175は、以下の式によりモデルの損失(-logP(X))を計算する。
【数4】
【0077】
また、確率分布が混合標準正規分布であって、ステップS133において取得された実際の把持量がX[g]である場合、推定部175は、P(X)として以下の式を用いて、モデルの損失(-logP(X))を計算する。
【数5】
【0078】
また、確率分布が用いられない場合、推定部175は、推定把持量μと実測値との差分に基づいて損失を計算する。例えば、推定部175は、当該差分を損失関数に適用することにより、損失(2乗誤差)を計算する。
【0079】
(ステップS136)
推定部175は、ステップS135において計算された損失を低減するように学習対象のモデルにおけるパラメータを更新する。例えば、推定部175は、誤差逆伝播法または確率的勾配降下法などの既知の手法により、損失を低減するように学習対象のモデルにおけるパラメータを更新する。
【0080】
(ステップS137)
パラメータの更新回数が所定回数であれば(ステップS137のYes)、ステップS139の処理が実行される。パラメータの更新回数が所定回数でなければ(ステップS137のNo)、ステップS138の処理が実行される。所定回数は、ユーザなどにより予め設定される。なお、本ステップにおける処理は、パラメータの更新回数と所定回数との比較に限定されない。例えば、学習対象のモデルに対する学習が収束するまで、ステップS131乃至ステップS138の処理が繰り返されてもよい。学習対象のモデルに対する学習の収束とは、例えば、推定量と実測値との差分が所定の値以下となる場合である。所定回数または所定の値は、把持推定装置17におけるメモリに予め記憶される。
【0081】
(ステップS138)
取得部173は、観測データにおいて、ステップS131における部分領域とは異なる他の部分領域を設定する。取得部173は、他の部分領域の位置を制御部181に出力する。
【0082】
(ステップS139)
推定部175は、学習対象のモデルを、把持量推定モデルとして設定する。推定部175は、把持量推定モデルを、把持推定装置17におけるメモリに記憶する。以上により、推定モデル生成処理は終了する。
【0083】
以上に述べた実施形態に係る推定モデル生成処理によれば、把持推定装置17において用いられる把持量推定モデルは、把持装置11による把持対象133の把持前の観測データと、平行グリッパ123の挿入深さの情報とを学習対象のモデルへの入力し、当該学習対象のモデルから出力された確率分布のパラメータと把持装置11により把持された把持対象133の把持量の実測値とに基づいて損失を計算し、当該損失を低減するように当該学習対象のモデルを学習することにより生成される。
【0084】
(第1変形例)
本変形例のコントローラ171は、(A)事前把持を複数の部分領域に対して実行し、(B)事前把持が行われた各部分領域について把持量推定モデルを用いて推定把持量および標準偏差を出力し、(C)目標把持量に近い推定把持量、および、小さい標準偏差が得られた部分領域を把持領域として選択し、(D)その把持領域から把持対象を把持するようにエンドエフェクタ111を制御する。処理(B)において、取得部173は、事前把持が行われた複数の部分領域それぞれについて、観測データを取得する。そして次に推定部175は、取得されたRGB-Dパッチ画像と挿入深さ情報とを連結して学習済みの把持量推定モデルに順次入力することで、各部分領域について、複数の挿入深さそれぞれに対する複数の推定把持量および複数の標準偏差を出力する。続いて、処理(C)において、選択部179は、出力された複数の推定把持量および複数の標準偏差に基づいて、判定量を算出し、この判定量に基づいて複数の部分領域のなかから把持領域を選択する。このとき選択部179は、上述のステップS801同様に、挿入深さ情報を制御部181に送信する。
【0085】
そして処理(D)において、把持領域の選択後、制御部181は、この把持領域において把持対象を把持するように、複数のリンク113の動作に関する駆動装置および開閉モータを制御する。これにより、一対の先端部127は、把持対象を把持する。把持深さまでの一対の先端部127の先端の挿入、および一対の先端部127による把持対象の把持は、ステップS802における処理と同様なため説明は省略する。続いて、ステップS804以降の処理が実行される。なお、本変形例において、ステップS804およびS805の処理はオプショナルである。
【0086】
第1変形例に係るシステム1は、事前把持後に観測データを取得して把持領域を選択する。このため、第1変形例に係るシステム1によれば、細片食品の定量把持の精度をさらに向上することができる。加えて、第1変形例に係るシステム1によれば、事後把持に関する時間も低減する、あるいは、省略することができるため、細片食品の定量把持に関する処理の時間を低減すること、すなわち細片食品の定量把持のスループットを向上させることができる。他の効果は、実施形態と同様なため、説明は省略する。
【0087】
(第2変形例)
本変形例のコントローラ171は、(A)1つの部分領域を把持領域として設定してこの把持領域に対して事前把持を実行し、(B)事前把持が行われたこの把持領域について、把持量推定モデルを用いて複数の挿入深さ情報それぞれに対する把持量推定および標準偏差を出力し、(C)目標把持量に近い推定把持量、および、小さい標準偏差が得られたときにモデルに入力された挿入深さ情報を特定し、(D)特定された挿入深さ情報に基づいて把持領域から把持対象を把持する用にエンドエフェクタ111を制御する。処理(B)において、取得部173は、把持領域におけるRGB-Dパッチ画像を取得し、取得されたRGB-Dパッチ画像と挿入深さ情報とを連結して学習済みの把持量推定モデルに順次入力することで、把持領域に関して、複数の挿入深さそれぞれに対する推定把持量および標準偏差を出力する。続いて、処理(C)において推定部175は、各挿入深さに対する推定把持量および標準偏差に基づいて、把持領域における挿入深さを特定する。具体的には、推定部175は、複数の挿入深さ情報のなかから、判定量を最小にする推定把持量および標準偏差を把持量推定モデルから出力させた挿入深さ情報を特定する。そして推定部175は、その挿入深さ情報における挿入深さを、把持領域に対して用いる挿入深さとして特定する。
【0088】
そして、処理(D)において制御部181は、把持領域において、特定された挿入深さで把持対象を把持するように、複数のリンク113の動作に関する駆動装置および開閉モータを制御する。これにより、一対の先端部127は、把持対象を把持する。特定された把持深さまでの一対の先端部127の先端の挿入、および一対の先端部127による把持対象の把持は、ステップS802における処理と同様なため説明は省略する。続いて、ステップS804以降の処理が実行される。なお、本変形例において、ステップS804およびS805の処理はオプショナルである。
【0089】
第2変形例に係るシステム1は、事前把持後に把持領域におけるRGB-Dパッチ画像取得し、取得されたRGB-Dパッチ画像と把持量推定モデルとを用いて、把持領域における挿入深さを特定する。第2変形例における効果は、実施形態および第1変形例と同様なため、説明は省略する。
【0090】
(応用例)
本応用例は、実施形態におけるエンドエフェクタ111と異なることにある。
図14は、本応用例におけるエンドエフェクタ112の断面の一例を示す図である。
図14に示すエンドエフェクタ112は、システム1における把持装置11に搭載される。エンドエフェクタ112は、ペースト状の食品(以下、ペースト食品と呼ぶ)を把持対象とする。ペース食品は、流動性のある半固形に加工された食品であって、例えば、ポテトサラダである。
【0091】
図14に示すエンドエフェクタ112は、基部140、掬い側グリッパ143と、壁グリッパ145と、送出機構124に設けられた押し出しプレート147とを備える。基部14の根元部分には、力覚センサが搭載されてもよい。基部140は、掬い側グリッパ143と、壁グリッパ145と、押し出しプレート147とを支持する。基部140は、開口部125を開閉可能に、掬い側グリッパ143と壁グリッパ145とを支持する。掬い側グリッパ143と壁グリッパ145との移動機構は、例えば、コントローラ171から出力された制御信号に従って回転するモータと、モータの駆動軸に接続され当該駆動軸の回転に伴って回転するピニオンギアと、ピニオンギアと嵌合し、開口部125の開閉方向に沿って基部140に設けられたラックギアとにより実現される。なお、壁グリッパ145は、基部140に固定されてもよい。
【0092】
掬い側グリッパ143は、ペースト食品を掬うことが可能であって、複数の面形状により構成される。掬い側グリッパ143の根元部分は、ラックギアに設けられる。ラックギアは、直動ガイドを介して基部140に搭載される。押し出しプレート147は、壁グリッパ142の根元部分に取り付けられる。押し出しプレート147は、送出機構124により、掬い側グリッパ143および壁グリッパ145に沿って移動可能である。例えば、押し出しプレート147は、ラックギアRGの歯列方向に対して垂直に取り付けられる。ラックギアRGは、モータMTの回転軸に取り付けられたピニオンギアPGと嵌合する。これにより、コントローラ171から出力された制御信号に従ってモータMTが回転すると、モータMTの駆動軸の回転に伴ってピニオンギアPGが回転する。ピニオンギアPGの回転によりラックギアRG移動することで、押し出しプレート147は、掬い側グリッパ143および壁グリッパ145に、押し出しプレート147の端部を接触させながら移動する。
【0093】
以下、
図14に示すエンドエフェクタ112による事後把持について説明する。
図15は、事後把持に関する動作の流れの一例を示す断面図である。
図15の(1)に示すように掬い側グリッパ143によりトレイ131中のペースト食品POが掬われて、ペースト食品POがエンドエフェクタ112に把持される。次いで、
図15の(2)に示すように、制御部181による制御の下で、壁グリッパ145と掬い側グリッパ143とが、開口部125を閉じるように移動する。これにより、
図15の(2)に示すように、ペースト食品POは、掬い側グリッパ143と壁グリッパ145とに挟まれて、3角柱形状(断面では3角形)に成型される。なお、掬い側グリッパ143と壁グリッパ145とが完全に閉じたときに両グリッパの外にはみ出る食品は、トレイ131に落ちる可能性が高い。
【0094】
図15の(3)および(4)に示すように、制御部181による制御の下で送出機構124が駆動し、押し出しプレート147は、把持対象のペースト食品POをエンドエフェクタ112の外に押し出す。押し出しプレート147の移動に伴って、制御部181による制御の下で、掬い側グリッパ143および壁グリッパ145は互いに離れるように移動する。このとき、押し出しプレート147は、掬い側グリッパ143および壁グリッパ145に付着したペースト食品POを刮いで、エンドエフェクタ112(グリッパ)の外に押し出す。この押し出しの際、エンドエフェクタ112の外に押し出したペースト食品POをトレイ131に落とせばグリッパ内に目標把持量のペースト食品POが把持されるように、制御部181は、実際に把持された量と目標把持量に応じて押し出しプレート147の移動量を決める。そして制御部181は、送出機構124を制御して押し出しプレート147を逆向きに移動させながら、両グリッパを閉じる。これにより、目標把持量を上回る量のペースト食品POがエンドエフェクタ112により把持された場合、制御部181は、目標把持量に対して余剰なペースト食品POをトレイ131に落とすことができる。本応用例における効果は、実施形態と同様なため、説明は省略する。
【0095】
前述した実施形態における把持量推定モデルは、Dパッチ画像が入力されるが、Dパッチ画像そのものに代えて、Dパッチ画像を構成する画素の深さの平均と標準偏差が入力されるよう構成されてもよい。この場合、モデルの訓練および使用時に、Dパッチ画像の代わりにDパッチ画像における深さの平均と標準偏差をモデルに入力すればよい。
【0096】
前述した実施形態における把持量推定モデルは、パッチの観測データとしてDパッチ画像とともにRGBパッチ画像が入力され、そのパッチから把持される対象の把持量に関するデータを出力していた。しかし、把持量推定モデルは、入力としてRGBパッチ画像を必要としないモデルであってもよい。このようなモデルは、RGBパッチ画像を用いない推定モデル生成処理を行うことで得られ、把持解放処理においてRGBパッチ画像なしで用いられる。また、RGBパッチ画像を用いない把持量推定モデルは、Dパッチ画像の代わりにDパッチ画像における深さの平均と標準偏差を入力として受け付けるよう訓練され、使用されてもよい。
【0097】
前述した実施形態における把持量推定モデルは、パッチの観測データと挿入深さ情報とが入力され、そのパッチから把持される対象の把持量に関するデータを出力していた。しかし、把持量推定モデルは、パッチの観測データを入力として必要としないモデルであってもよいし、挿入深さ情報を入力として必要としないモデルであってもよい。
【0098】
パッチの観測データなしに挿入深さ情報から把持量に関するデータを出力する把持量推定モデルは、例えば次のような推定モデル生成処理で得られる。推定モデル生成処理は、複数の挿入深さについて、そのパッチの食品表面からその挿入深さで対象を把持して実際の把持量を計測し、その挿入深さをモデルに入力して把持量の平均μと標準偏差σを推定し、その平均μと標準偏差σと実際の把持量とに基づいて損失を計算し、損失を小さくする方向にモデルパラメータを更新する。このときパッチの食品表面は、そのパッチの深さの中央値でも平均でもよく、パッチのサイズは様々なものを用いる。なお、挿入深さから推定把持量の平均μ標準偏差σを出力可能であれば、学習モデルではなくデータテーブルを把持量推定モデルとしてもよく、このテーブルは各挿入深さに対する把持量の実測値の平均および標準偏差を挿入深さと対応付けることで生成できる。一方、把持解放処理は、複数の挿入深さそれぞれについて挿入深さを把持量推定モデルに入力して把持量の平均μと標準偏差σを推定し、判定量を最小にする平均μと標準偏差σに対応する挿入深さを特定し、予め設定されたパッチを把持領域として選択し、ステップS802以降の処理を行う。
【0099】
挿入深さ情報なしにパッチの観測データから把持量に関するデータを出力する把持量推定モデルは、例えば次のような推定モデル生成処理で得られる。推定モデル生成処理は、複数のパッチについて、各パッチの食品表面から1つの所定の挿入深さで対象を把持して実際の把持量を計測し、そのパッチの観測データをモデルに入力して把持量の平均μと標準偏差σを推定し、その平均μと標準偏差σと実際の把持量とに基づいて損失を計算し、損失を小さくする方向にモデルパラメータを更新する。一方、把持解放処理は、複数のパッチそれぞれについて各パッチの観測データを把持量推定モデルに入力して把持量の平均μと標準偏差σを推定し、複数のパッチのなかから、判定量を最小にする平均μと標準偏差σに対応するパッチを、把持領域として選択し、ステップS802以降の処理を行う。
【0100】
前述した実施形態における各装置(把持推定装置17又はコントローラ171など)の一部又は全部は、ハードウェアで構成されていてもよいし、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等が実行するソフトウェア(プログラム)の情報処理で構成されてもよい。ソフトウェアの情報処理で構成される場合には、前述した実施形態における各装置(把持推定装置17及び/又はコントローラ171など)の少なくとも一部の機能を実現するソフトウェアを、CD-ROM(Compact Disc-Read Only Memory)、USB(Universal Serial Bus)メモリ等の非一時的な記憶媒体(非一時的なコンピュータ可読媒体)に収納し、コンピュータに読み込ませることにより、ソフトウェアの情報処理を実行してもよい。また、通信ネットワークを介して当該ソフトウェアがダウンロードされてもよい。さらに、ソフトウェアの処理の全部又は一部がASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の回路に実装されることにより、当該ソフトウェアによる情報処理がハードウェアにより実行されてもよい。
【0101】
ソフトウェアを収納する記憶媒体は、光ディスク等の着脱可能なものでもよいし、ハードディスク、メモリ等の固定型の記憶媒体であってもよい。また、記憶媒体は、コンピュータ内部に備えられてもよいし、(主記憶装置、補助記憶装置)、コンピュータ外部に備えられてもよい。
【0102】
図16は、前述した実施形態における各装置(把持推定装置17又はコントローラ171など)のハードウェア構成の一例を示すブロック図である。各装置は、一例として、プロセッサ811と、主記憶装置812(メモリ)と、補助記憶装置813(メモリ)と、ネットワークインタフェース814と、デバイスインタフェース815と、を備え、これらがバス816を介して接続されたコンピュータ81として実現されてもよい。
【0103】
図16のコンピュータ81は、各構成要素を一つ備えているが、同じ構成要素を複数備えていてもよい。また、
図16では、1台のコンピュータ81が示されているが、ソフトウェアが複数台のコンピュータにインストールされて、当該複数台のコンピュータそれぞれがソフトウェアの同一の又は異なる一部の処理を実行してもよい。この場合、コンピュータそれぞれがネットワークインタフェース814等を介して通信して処理を実行する分散コンピューティングの形態であってもよい。つまり、前述した実施形態における各装置(把持推定装置17又はコントローラ171など)は、1又は複数の記憶装置に記憶された命令を1台又は複数台のコンピュータが実行することで機能を実現するシステムとして構成されてもよい。また、端末から送信された情報をクラウド上に設けられた1台又は複数台のコンピュータで処理し、この処理結果を端末に送信するような構成であってもよい。
【0104】
前述した実施形態における各装置(把持推定装置17又はコントローラ171など)の各種演算は、1又は複数のプロセッサを用いて、又はネットワークを介した複数台のコンピュータを用いて、並列処理で実行されてもよい。また、各種演算が、プロセッサ内に複数ある演算コアに振り分けられて、並列処理で実行されてもよい。また、本開示の処理、手段等の一部又は全部は、ネットワークを介してコンピュータ81と通信可能なクラウド上に設けられたプロセッサ及び記憶装置の少なくとも一方により実現されてもよい。このように、前述した実施形態における各装置は、1台又は複数台のコンピュータによる並列コンピューティングの形態であってもよい。
【0105】
プロセッサ811は、少なくともコンピュータの制御又は演算のいずれかを行う電子回路(処理回路、Processing circuit、Processing circuitry、CPU、GPU、FPGA、ASIC等)であってもよい。また、プロセッサ811は、汎用プロセッサ、特定の演算を実行するために設計された専用の処理回路又は汎用プロセッサと専用の処理回路との両方を含む半導体装置等のいずれであってもよい。また、プロセッサ811は、光回路を含むものであってもよいし、量子コンピューティングに基づく演算機能を含むものであってもよい。
【0106】
プロセッサ811は、コンピュータ81の内部構成の各装置等から入力されたデータやソフトウェアに基づいて演算処理を行ってもよく、演算結果や制御信号を各装置等に出力してもよい。プロセッサ811は、コンピュータ81のOS(Operating System)や、アプリケーション等を実行することにより、コンピュータ81を構成する各構成要素を制御してもよい。
【0107】
前述した実施形態における各装置(把持推定装置17又はコントローラ171など)は、1又は複数のプロセッサ811により実現されてもよい。ここで、プロセッサ811は、1チップ上に配置された1又は複数の電子回路を指してもよいし、2つ以上のチップあるいは2つ以上のデバイス上に配置された1又は複数の電子回路を指してもよい。複数の電子回路を用いる場合、各電子回路は有線又は無線により通信してもよい。
【0108】
主記憶装置812は、プロセッサ811が実行する命令及び各種データ等を記憶してもよく、主記憶装置812に記憶された情報がプロセッサ811により読み出されてもよい。補助記憶装置813は、主記憶装置812以外の記憶装置である。なお、これらの記憶装置は、電子情報を格納可能な任意の電子部品を意味するものとし、半導体のメモリでもよい。半導体のメモリは、揮発性メモリ又は不揮発性メモリのいずれでもよい。前述した実施形態における各装置(把持推定装置17又はコントローラ171など)において各種データ等を保存するための記憶装置は、主記憶装置812又は補助記憶装置813により実現されてもよく、プロセッサ811に内蔵される内蔵メモリにより実現されてもよい。例えば、前述した実施形態における把持推定装置17におけるメモリは、主記憶装置812又は補助記憶装置813により実現されてもよい。
【0109】
前述した実施形態における各装置(把持推定装置17又はコントローラ171など)が、少なくとも1つの記憶装置(メモリ)と、この少なくとも1つの記憶装置に接続(結合)される少なくとも1つのプロセッサで構成される場合、記憶装置1つに対して、少なくとも1つのプロセッサが接続されてもよい。また、プロセッサ1つに対して、少なくとも1つの記憶装置が接続されてもよい。また、複数のプロセッサのうち少なくとも1つのプロセッサが、複数の記憶装置のうち少なくとも1つの記憶装置に接続される構成を含んでもよい。また、複数台のコンピュータに含まれる記憶装置とプロセッサによって、この構成が実現されてもよい。さらに、記憶装置がプロセッサと一体になっている構成(例えば、L1キャッシュ、L2キャッシュを含むキャッシュメモリ)を含んでもよい。
【0110】
ネットワークインタフェース814は、無線又は有線により、通信ネットワーク82に接続するためのインタフェースである。ネットワークインタフェース814は、既存の通信規格に適合したもの等、適切なインタフェースを用いればよい。ネットワークインタフェース814により、通信ネットワーク82を介して接続された外部装置83aと情報のやり取りが行われてもよい。なお、通信ネットワーク82は、WAN(Wide Area Network)、LAN(Local Area Network)、PAN(Personal Area Network)等のいずれか又はそれらの組み合わせであってよく、コンピュータ81と外部装置83aとの間で情報のやり取りが行われるものであればよい。WANの一例としてインターネット等があり、LANの一例としてIEEE802.11やイーサネット(登録商標)等があり、PANの一例としてBluetooth(登録商標)やNFC(Near Field Communication)等がある。
【0111】
デバイスインタフェース815は、外部装置83bと直接接続するUSB等のインタフェースである。
【0112】
外部装置83aはコンピュータ81とネットワーク82を介して接続されている装置である。外部装置83bはコンピュータ81と直接接続されている装置である。
【0113】
外部装置83a又は外部装置83bは、一例として、入力装置であってもよい。入力装置は、例えば、カメラ、マイクロフォン、モーションキャプチャ、各種センサ、キーボード、マウス、タッチパネル等のデバイスであり、取得した情報をコンピュータ81に与える。また、パーソナルコンピュータ、タブレット端末、スマートフォン等の入力部とメモリとプロセッサを備えるデバイスであってもよい。
【0114】
また、外部装置83a又は外部装置83bは、一例として、出力装置でもよい。出力装置は、例えば、LCD(Liquid Crystal Display)、有機EL(Electro Luminescence)パネル等の表示装置であってもよいし、音声等を出力するスピーカ等であってもよい。また、パーソナルコンピュータ、タブレット端末又はスマートフォン等の出力部とメモリとプロセッサを備えるデバイスであってもよい。
【0115】
また、外部装置83aまた外部装置83bは、記憶装置(メモリ)であってもよい。例えば、外部装置83aはネットワークストレージ等であってもよく、外部装置83bはHDD等のストレージであってもよい。
【0116】
また、外部装置83a又は外部装置83bは、前述した実施形態における各装置(把持推定装置17又はコントローラ171など)の構成要素の一部の機能を有する装置でもよい。つまり、コンピュータ81は、外部装置83a又は外部装置83bに処理結果の一部又は全部を送信してもよいし、外部装置9A又は外部装置9Bから処理結果の一部又は全部を受信してもよい。例えば、外部装置83a又は外部装置83bは、前述した実施形態における把持装置11と、観測装置13と、計量装置15と、把持推定装置17などのうちの少なくとも1つであっても構わない。
【0117】
本明細書(請求項を含む)において、「a、b及びcの少なくとも1つ(一方)」又は「a、b又はcの少なくとも1つ(一方)」の表現(同様な表現を含む)が用いられる場合は、a、b、c、a-b、a-c、b-c又はa-b-cのいずれかを含む。また、a-a、a-b-b、a-a-b-b-c-c等のように、いずれかの要素について複数のインスタンスを含んでもよい。さらに、a-b-c-dのようにdを有する等、列挙された要素(a、b及びc)以外の他の要素を加えることも含む。
【0118】
本明細書(請求項を含む)において、「データを入力として/を用いて/データに基づいて/に従って/に応じて」等の表現(同様な表現を含む)が用いられる場合は、特に断りがない場合、データそのものを用いる場合や、データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、データから抽出した特徴量、データの中間表現等)を用いる場合を含む。また、「データを入力として/を用いて/データに基づいて/に従って/に応じて」何らかの結果が得られる旨が記載されている場合(同様な表現を含む)、特に断りがない場合、当該データのみに基づいて当該結果が得られる場合や、当該データ以外の他のデータ、要因、条件及び/又は状態にも影響を受けて当該結果が得られる場合を含む。また、「データを出力する」旨が記載されている場合(同様な表現を含む)、特に断りがない場合、データそのものを出力として用いる場合や、データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、データから抽出した特徴量、各種データの中間表現等)を出力として用いる場合を含む。
【0119】
本明細書(請求項を含む)において、「接続される(connected)」及び「結合される(coupled)」との用語が用いられる場合は、直接的な接続/結合、間接的な接続/結合、電気的(electrically)な接続/結合、通信的(communicatively)な接続/結合、機能的(operatively)な接続/結合、物理的(physically)な接続/結合等のいずれをも含む非限定的な用語として意図される。当該用語は、当該用語が用いられた文脈に応じて適宜解釈されるべきであるが、意図的に或いは当然に排除されるのではない接続/結合形態は、当該用語に含まれるものして非限定的に解釈されるべきである。
【0120】
本明細書(請求項を含む)において、「AがBするよう構成される(A configured to B)」との表現が用いられる場合は、要素Aの物理的構造が、動作Bを実行可能な構成を有するとともに、要素Aの恒常的(permanent)又は一時的(temporary)な設定(setting/configuration)が、動作Bを実際に実行するように設定(configured/set)されていることを含んでよい。例えば、要素Aが汎用プロセッサである場合、当該プロセッサが動作Bを実行可能なハードウェア構成を有するとともに、恒常的(permanent)又は一時的(temporary)なプログラム(命令)の設定により、動作Bを実際に実行するように設定(configured)されていればよい。また、要素Aが専用プロセッサ、専用演算回路等である場合、制御用命令及びデータが実際に付属しているか否かとは無関係に、当該プロセッサの回路的構造等が動作Bを実際に実行するように構築(implemented)されていればよい。
【0121】
本明細書(請求項を含む)において、含有又は所有を意味する用語(例えば、「含む(comprising/including)」、「有する(having)」等)が用いられる場合は、当該用語の目的語により示される対象物以外の物を含有又は所有する場合を含む、open-endedな用語として意図される。これらの含有又は所有を意味する用語の目的語が数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)である場合は、当該表現は特定の数に限定されないものとして解釈されるべきである。
【0122】
本明細書(請求項を含む)において、ある箇所において「1つ又は複数(one or more)」、「少なくとも1つ(at least one)」等の表現が用いられ、他の箇所において数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)が用いられているとしても、後者の表現が「1つ」を意味することを意図しない。一般に、数量を指定しない又は単数を示唆する表現(a又はanを冠詞とする表現)は、必ずしも特定の数に限定されないものとして解釈されるべきである。
【0123】
本明細書において、ある実施形態の有する特定の構成について特定の効果(advantage/result)が得られる旨が記載されている場合、別段の理由がない限り、当該構成を有する他の1つ又は複数の実施形態についても当該効果が得られると理解されるべきである。但し当該効果の有無は、一般に種々の要因、条件及び/又は状態に依存し、当該構成により必ず当該効果が得られるものではないと理解されるべきである。当該効果は、種々の要因、条件及び/又は状態が満たされたときに実施形態に記載の当該構成により得られるものに過ぎず、当該構成又は類似の構成を規定したクレームに係る発明において、当該効果が必ずしも得られるものではない。
【0124】
本明細書(請求項を含む)において、複数のハードウェアが所定の処理を行う場合、各ハードウェアが協働して所定の処理を行ってもよいし、一部のハードウェアが所定の処理の全てを行ってもよい。また、一部のハードウェアが所定の処理の一部を行い、別のハードウェアが所定の処理の残りを行ってもよい。本明細書(請求項を含む)において、「1又は複数のハードウェアが第1の処理を行い、前記1又は複数のハードウェアが第2の処理を行う」等の表現(同様な表現を含む)が用いられている場合、第1の処理を行うハードウェアと第2の処理を行うハードウェアは同じものであってもよいし、異なるものであってもよい。つまり、第1の処理を行うハードウェア及び第2の処理を行うハードウェアが、前記1又は複数のハードウェアに含まれていればよい。なお、ハードウェアは、電子回路、電子回路を含む装置等を含んでよい。
【0125】
本明細書(請求項を含む)において、複数の記憶装置(メモリ)がデータの記憶を行う場合、複数の記憶装置のうち個々の記憶装置は、データの一部のみを記憶してもよいし、データの全体を記憶してもよい。また、複数の記憶装置のうち一部の記憶装置がデータを記憶する構成を含んでもよい。
【0126】
以上、本開示の実施形態について詳述したが、本開示は上記した個々の実施形態に限定されるものではない。特許請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲において、種々の追加、変更、置き換え、部分的削除等が可能である。例えば、前述した実施形態において、数値又は数式を説明に用いている場合、これらは例示的な目的で示されたものであり、本開示の範囲を限定するものではない。また、実施形態で示した各動作の順序も例示的なものであり、本開示の範囲を限定するものではない。