(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025002087
(43)【公開日】2025-01-09
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
B25J 13/08 20060101AFI20241226BHJP
B25J 9/10 20060101ALI20241226BHJP
【FI】
B25J13/08 A
B25J9/10 A
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023102012
(22)【出願日】2023-06-21
(71)【出願人】
【識別番号】000125370
【氏名又は名称】学校法人東京理科大学
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】荒井 翔悟
(72)【発明者】
【氏名】嵯峨野 拓海
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS01
3C707DS01
3C707KS03
3C707KS04
3C707KS12
3C707KS13
3C707KT03
3C707KT05
3C707LS15
3C707LT06
(57)【要約】
【課題】三次元形状の計測に起因したタクトタイムの増加を抑制することが可能な情報処理装置、情報処理方法、及びプログラムを提供する。
【解決手段】プロセッサを備え、プロセッサは、ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間にロボットハンドが通過する複数の経由点においてロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得し、取得した画像に基づいて第2対象物体の三次元形状を推定する情報処理装置。
【選択図】
図8
【特許請求の範囲】
【請求項1】
プロセッサを備え、
前記プロセッサは、
ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間に前記ロボットハンドが通過する複数の経由点において前記ロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得し、
取得した前記画像に基づいて前記第2対象物体の三次元形状を推定する
情報処理装置。
【請求項2】
前記第2対象物体の三次元形状は、前記複数の経由点の各々において得られた複数の前記画像に対して前記第2対象物体を示す像が抽出された結果に対して、視体積交差法を用いることで推定される
請求項1に記載の情報処理装置。
【請求項3】
前記搬送動作は、複数の前記第1対象物体毎に行われ、
前記複数の経由点は、直前の搬送動作における前記第2対象物体の三次元形状の計測結果に基づいて設定される
請求項1に記載の情報処理装置。
【請求項4】
前記搬送動作は、前記ロボットハンドが第1対象物体を把持するために移動する第1動作と、前記ロボットハンドにより把持された前記第1対象物体が別の場所へ搬送される第2動作とを含み、
前記第2動作における前記経由点は、前記第1動作の間における前記第2対象物体の三次元形状の計測結果に基づいて設定される
請求項1に記載の情報処理装置。
【請求項5】
前記経由点は、前記計測結果から求められる前記三次元計測の候補点と、前記ロボットハンドの移動可能点とに基づいて設定される
請求項3又は4に記載の情報処理装置。
【請求項6】
前記候補点は、前記三次元形状に対応した複数の点から成る点群であって各点が三次元空間座標を示す前記点群に対する主成分分析を行うことにより得られる第3主成分に沿った軸と前記撮像装置の光軸とが一致する位置に設定される
請求項5に記載の情報処理装置。
【請求項7】
前記候補点は、前記第3主成分に沿った方向において、前記撮像装置の撮影範囲に含まれる前記点群における点の数が予め設定された範囲となる位置に設定される
請求項6に記載の情報処理装置。
【請求項8】
前記移動可能点は、前記三次元計測における前記第2対象物体の重心を原点とする球面座標系を用いて設定される
請求項5に記載の情報処理装置。
【請求項9】
前記経由点は、前記球面座標系により示される格子点であり、前記候補点と前記ロボットハンドの前記移動可能点とに最も近い点である
請求項8に記載の情報処理装置。
【請求項10】
ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間に前記ロボットハンドが通過する複数の経由点において前記ロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得すること、及び、
取得した前記画像に基づいて前記第2対象物体の三次元形状を推定することを含む
情報処理方法。
【請求項11】
コンピュータに、
ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間に前記ロボットハンドが通過する複数の経由点において前記ロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得すること、及び、
取得した前記画像に基づいて前記第2対象物体の三次元形状を推定すること
を含む処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
昨今、産業分野をはじめとして、様々な分野においてロボットシステムが導入され、省人化、作業の効率化が図られている。例えば、産業分野においては、全世界の産業用ロボットの設置台数は増加傾向にある。ところで、産業用ロボットをはじめとしたロボットの導入に際しては、いわゆるティーチング&プレイバック方式が採用されることが多く、この方式では、動作を教示する作業や位置決め治具等の周辺の専用機器が必要な場合がある。このため、ティーチング&プレイバック方式は、対象物体(例えば、生産する製品)の種類や量が変動する形態(例えば、変種変量生産形態)には不向きである。そこで、変種変量の物体に対応可能なロボットシステムとして、対象物体の形状を認識し、把持を行う自律的なロボットシステムが検討されている。
【0003】
例えば、特許文献1には、ロボットと、該ロボットの手先部に取り付けられワークを把持するハンドと、ロボットの手先部に取り付けられ、コンテナ内の部分領域の三次元点群の位置情報を取得する三次元センサと、該三次元センサにより取得された第1部分領域の三次元点群の位置情報に基づいてワークの位置および姿勢を算出するワーク状態算出部と、三次元センサにより取得された第1部分領域の三次元点群の位置情報に基づいて、次に位置情報を取得する第2部分領域のロボット位置を算出するデータ取得位置算出部と、ワーク状態算出部により算出されたワークの位置および姿勢並びにデータ取得位置算出部により算出された第2部分領域のロボット位置に基づいて、ロボットおよびハンドを制御する制御部と、を備えるワーク取出しシステムが記載されている。
【0004】
特許文献2には、ロボットハンドに固定された三次元カメラを用いてワークの形状を測定し、測定されたワークの形状データに基づいて、三次元カメラのカメラ座標をロボットハンドのロボット座標に変換するためのキャリブレーションを実行する制御装置であって、ロボットハンドをXYZ方向へ移動させる動作と、ロボットハンドを所定の軸周りに複数回回転させる動作とを繰り返し実行し、各動作後、ロボットハンドの停止位置でワークを三次元カメラにより測定して得られた形状データに基づいてワーク座標を検出するとともに、当該ワーク座標を得た時のロボット座標を取得し、取得した複数のワーク座標とロボット座標の組に基づいて、カメラ座標における位置をロボット座標上の位置に変換するためのパラメータを算出する通常キャリブレーション処理と、通常キャリブレーション処理により求められたロボットハンドのツール中心と三次元カメラの相対位置に基づいて、暫定回転中心を決定し、該暫定回転中心周りにロボットハンドを複数回回転させた各位置で、ワークを三次元カメラにより測定して得られた形状データに基づいてワーク座標を検出するとともに、当該ワーク座標を得た時のロボット座標を取得し、取得した複数のワーク座標とロボット座標の組に基づいて、ロボットハンドの最終的な回転中心を決定する高精度キャリブレーション処理とを実行するキャリブレーション実行部を備える制御装置が記載されている。
【0005】
特許文献3には、撮像装置で撮像したワークの画像を取得する撮像画像取得部と、多関節ロボットの各関節部に取り付けられたエンコーダのエンコーダ値を取得するエンコーダ値取得部と、エンコーダ値取得部で取得したエンコーダ値に基づいて、撮像装置の姿勢を演算する撮像装置姿勢演算部と、撮像画像取得部で取得したワークの画像および撮像装置姿勢演算部で演算した撮像装置の姿勢に基づいて、ワークの三次元形状を演算する三次元形状演算部と、を備える三次元計測装置が記載されている。
【0006】
特許文献4には、カメラを有するロボットビジョンシステムにおいて、ワークを照射する光源と、ワークの基準位置を記憶する記憶部と、光源の照射条件を変更する照射条件変更部と、光源の照射条件を変えながらカメラによって撮像された複数の画像を参照してワークの形状を算出する形状情報算出部と、基準位置と算出されたワークの形状からロボットから該ワークまでの距離を算出する距離算出部とを備えることを特徴するロボットビジョンシステムが記載されている。
【0007】
特許文献5には、ロボットハンドで把持するワークの形状および位置を表す画像データを得るワーク画像化手段と、ワーク画像化手段が撮像したワークの画像データに基づき、ワークの位置と形状のデータを算出するワーク位置形状検出手段と、ワーク位置形状検出手段が算出した位置と形状のデータに基づき、ロボットハンドによりワークを把持するための把持位置データを生成する把持位置データ生成手段と、把持位置データ生成手段が生成した把持位置データに基づき、ロボットハンドの把持位置を変更するハンド把持位置制御手段と、を備え、ロボットハンドが自律して最適な把持位置でワークを把持可能なことを特徴とする手先視覚付ロボットハンドが記載されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2018-192592号公報
【特許文献2】特開2022-122648号公報
【特許文献3】特開2021-133458号公報
【特許文献4】特開2023-10172号公報
【特許文献5】特開2003-94367号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、特許文献1~5に記載の技術では、ロボットハンドによる対象物体の把持のために対象物体の三次元形状を計測するには、依然として改善の余地があった。そこで、本開示は、上記事情に鑑み成されたものであり、三次元形状の計測に起因したタクトタイムの増加を抑制することが可能な情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0010】
本開示の技術に係る第1の態様は、プロセッサを備え、プロセッサは、ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間にロボットハンドが通過する複数の経由点においてロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得し、取得した画像に基づいて第2対象物体の三次元形状を推定する情報処理装置である。
【0011】
本開示の技術に係る第2の態様は、第2対象物体の三次元形状は、複数の経由点の各々において得られた複数の画像に対して第2対象物体を示す像が抽出された結果に対して、視体積交差法を用いることで推定される第1の態様に係る情報処理装置である。
【0012】
本開示の技術に係る第3の態様は、搬送動作は、複数の第1対象物体毎に行われ、複数の経由点は、直前の搬送動作における第2対象物体の三次元形状の計測結果に基づいて更新される第1の態様に係る情報処理装置である。
【0013】
本開示の技術に係る第4の態様は、搬送動作は、ロボットハンドが第1対象物体を把持するために移動する第1動作と、ロボットハンドにより把持された第1対象物体が別の場所へ搬送される第2動作とを含み、第2動作における経由点は、第1動作の間における第2対象物体の三次元形状の計測結果に基づいて設定される第1の態様に係る情報処理装置である。
【0014】
本開示の技術に係る第5の態様は、経由点は、計測結果から求められる三次元計測の候補点と、ロボットハンドの移動可能点とに基づいて設定される第3又は4の態様に係る情報処理装置である。
【0015】
本開示の技術に係る第6の態様は、候補点は、三次元形状に対応した複数の点から成る点群であって各点が三次元空間座標を示す点群に対する主成分分析を行うことにより得られる第3主成分に沿った軸と撮像装置の光軸とが一致する位置に設定される第5の態様に係る情報処理装置である。
【0016】
本開示の技術に係る第7の態様は、候補点は、第3主成分に沿った方向において、撮像装置の撮影範囲に含まれる点群における点の数が予め設定された範囲となる位置に設定される第6の態様に係る情報処理装置である。
【0017】
本開示の技術に係る第8の態様は、移動可能点は、三次元計測における第2対象物体の重心を原点とする球面座標系を用いて設定される第5の態様に係る情報処理装置である。
【0018】
本開示の技術に係る第9の態様は、経由点は、球面座標系により示される格子点であり、候補点とロボットハンドの移動可能点とに最も近い点である第8の態様に係る情報処理装置である。
【0019】
本開示の技術に係る第10の態様は、ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間にロボットハンドが通過する複数の経由点においてロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得すること、及び、取得した画像に基づいて第2対象物体の三次元形状を推定することを含む情報処理方法である。
【0020】
本開示の技術に係る第11の態様は、コンピュータに、ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間にロボットハンドが通過する複数の経由点においてロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得すること、及び、取得した画像に基づいて第2対象物体の三次元形状を推定することを含む処理を実行させるプログラムである。
【発明の効果】
【0021】
本開示によれば、三次元形状の計測に起因したタクトタイムの増加を抑制することが可能な情報処理装置、情報処理方法、及びプログラムが提供される。
【図面の簡単な説明】
【0022】
【
図1】実施形態に係るロボットアームシステムの構成の一例を示す概念図である。
【
図2】実施形態に係る制御装置の電気系のハードウェア構成の一例を示すブロック図である。
【
図3】実施形態に係るプロセッサにおける動作制御部の処理内容の一例を示す概念図である。
【
図4】実施形態に係るプロセッサにおける取得部及び画像処理部の処理内容の一例を示す概念図である。
【
図5】実施形態に係るプロセッサにおける三次元計測部の処理内容の一例を示す概念図である。
【
図6】実施形態に係るプロセッサにおける候補点算出部の処理内容の一例を示す概念図である。
【
図7】実施形態に係るプロセッサにおける経由点決定部の処理内容の一例を示す概念図である。
【
図8】実施形態に係るプロセッサにおける動作制御部の処理内容の一例を示す概念図である。
【
図9】実施形態に係るロボットアームの制御処理の流れの一例を示すフローチャートである。
【
図10】実施形態に係る経由点算出処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0023】
以下、図面を参照して本開示の技術に係る実施形態について説明する。
【0024】
図1は、ロボットアームシステム10の構成の一例を示す概念図である。
一例として
図1に示すように、ロボットアームシステム10は、ロボットアーム12と、制御装置15とを含んで構成されている。ロボットアーム12は、物体Bを搬送するための装置である。
図1に示す例では、台A1上に複数の円柱状の物体Bが置かれており、ロボットアーム12は、台A1上の物体Bを搬送先の台A2まで搬送する。
【0025】
ここで、ロボットアーム12による搬送動作には、搬送の対象となる物体Bを取りに行く動作と、把持した物体Bを搬送先まで移動させる動作とが含まれる。すなわち、搬送動作には、ロボットハンド16が物体Bを把持するために移動する動作と、ロボットハンド16により把持された物体Bが別の場所まで搬送される動作とが含まれる。
【0026】
ロボットアームシステム10は、例えば、産業分野における各種部品、半製品、若しくは製品又は物品の搬送作業、組付け作業、又は加工作業等に利用可能である。また、ロボットアームシステム10は、例えば、介護分野における身の回りの品物(例えば、コップ、又は置物等)の搬送、又は受け渡し等にも利用可能である。
【0027】
なお、ここでは、物体Bの一例として円柱状の物体の例を示しているが、これはあくまでも一例にすぎない。物体Bの形状としては、ロボットハンド16によって把持可能であればよく、特に限定されない。また、物体Bの光学特性についても特に限定されず、可視光に対して透明、若しくは不透明であってもよいし、又は光沢(例えば、金属光沢又は樹脂表面の光沢)を有していてもよい。
【0028】
制御装置15は、ロボットアーム12の動作を制御可能な装置である。制御装置15は、ロボットアーム12と別体とされた端末(例えば、パーソナル・コンピュータ又はタブレット)であってもよいし、ロボットアーム12に組み込まれていてもよい。
【0029】
ロボットアーム12は、アーム本体14と、ロボットハンド16と、カメラ18とを備えている。アーム本体14は、制御装置15の制御下においてロボットハンド16を所定の位置まで移動させる。アーム本体14において、基端が土台Cに取り付けられており、先端にロボットハンド16が取り付けられている。アーム本体14において、複数の関節14Bを介してリンク部分14Aが回動することで、ロボットハンド16の移動が実現される。
【0030】
ロボットハンド16は、制御装置15の制御下において物体Bを把持する。
図1に示す例では、ロボットハンド16は、基端部16Cを介してアーム本体14の先端に取り付けられている。そして、ロボットハンド16は、基端部16Cから延出された一対の指16A及び16Bを備えている。一対の指16A及び16Bで物体Bを挟むことで、ロボットハンド16により物体Bが把持される。ロボットハンド16は、本開示の技術に係る「ロボットハンド」の一例である。
【0031】
カメラ18は、物体Bを撮像可能な撮像装置である。カメラ18は、ロボットハンド16の基端部16Cに取り付けられている。なお、これはあくまでも一例にすぎず、カメラ18は、ロボットハンド16に対して固定されていればよく、固定箇所は特に限定されない。カメラ18は、RGB画像を取得可能な撮像素子と、測距センサとを含んで構成される、いわゆるRGB-Dカメラである。カメラ18は、画素毎にRGB値とともに被写体までの距離情報(すなわち、深度)が埋め込まれた画像を撮像可能とされている。カメラ18は、本開示の技術に係る「撮像装置」の一例である。
【0032】
図2は、制御装置15の電気系のハードウェア構成の一例を示すブロック図である。
一例として
図2に示すように、制御装置15は、コンピュータ20と、通信I/F(インタフェース)28と、受付装置30と、表示装置32とを備えている。コンピュータ20は、プロセッサ22と、ストレージ24と、RAM(Random Access Memory)26とを備えている。プロセッサ22と、ストレージ24と、RAM26と、通信I/F28と、受付装置30と、表示装置32とは、バス34に接続されている。コンピュータ20は、本開示の技術に係る「コンピュータ」及び「情報処理装置」の一例であり、プロセッサ22は、本開示の技術に係る「プロセッサ」の一例である。
【0033】
プロセッサ22には、メモリが接続されている。メモリは、ストレージ24及びRAM26を含む。プロセッサ22は、例えば、CPU(Central Processing Unit)を有する。
【0034】
ストレージ24は、各種プログラム及び各種パラメータ等を記憶する不揮発性の記憶装置である。ストレージ24としては、例えば、フラッシュメモリ(例えば、EEPROM(Electrically Erasable and Programmable Read Only Memory)及びSSD(Solid State Drive)等)及び/又はHDD(Hard Disk Drive)が挙げられる。なお、フラッシュメモリ及びHDDは、あくまでも一例に過ぎず、フラッシュメモリ、HDD磁気抵抗メモリ、及び強誘電体メモリのうちの少なくとも1つをストレージ24として用いてもよい。
【0035】
RAM26は、一時的に情報が記憶されるメモリであり、プロセッサ22によってワークメモリとして用いられる。RAM26としては、例えば、DRAM(Dynamic Random Access Memory)又はSRAM(Static Random Access Memory)等が挙げられる。
【0036】
通信I/F28は、ロボットアーム12に接続されている。通信I/F28は、ロボットアーム12との間の情報の授受を司る。例えば、通信I/F28は、プロセッサ22からの要求に応じた情報を、ロボットアーム12に送信する。また、通信I/F28は、ロボットアーム12から送信された情報を受信し、受信した情報を、バス34を介してプロセッサ22に出力する。
【0037】
受付装置30は、ユーザからの指示を受け付ける。受付装置30は、例えば、キーボード及びマウス等である。表示装置32は、制御装置15の制御下で、各種情報(例えば、画像及び文字等)を表示する。表示装置32としては、例えば、EL(Electro-Luminescence)ディスプレイ又は液晶ディスプレイ等が挙げられる。
【0038】
ストレージ24には、動作制御プログラム24A及び経由点算出プログラム24Bが記憶されている。動作制御プログラム24Aは、ロボットアーム12による搬送動作を制御するためプログラムである。また、経由点算出プログラム24Bは、搬送動作の際にロボットハンド16の経由する点を算出するためのプログラムである。経由点算出プログラム24Bは、本開示の技術に係る「プログラム」の一例である。
【0039】
プロセッサ22は、ストレージ24から動作制御プログラム24Aを読み出し、読み出した動作制御プログラム24AをRAM26上で実行することで、動作制御処理を実行する。動作制御処理は、プロセッサ22が、動作制御部22Aとして動作することによって実現される。
【0040】
また、プロセッサ22は、ストレージ24から経由点算出プログラム24Bを読み出し、読み出した経由点算出プログラム24BをRAM26上で実行することで、経由点算出処理を実行する。経由点算出処理は、プロセッサ22が、取得部22B、画像処理部22C、三次元計測部22D、候補点算出部22E、及び経由点決定部22Fとして動作することによって実現される。
【0041】
図3は、プロセッサ22における動作制御部22Aの処理内容の一例を示す概念図である。
一例として
図3に示すように、動作制御部22Aは、動作信号36をロボットアーム12に対して出力する。動作信号36は、ロボットアーム12の搬送動作における経由点及び搬送対象となる物体Bを示す信号である。以下では、ロボットアーム12による搬送動作の内、物体B1を取りに行く動作を例に挙げて説明する。この場合、動作制御部22Aは、物体B1を取りに行く動作における経由点を示す動作信号36Aをロボットアーム12に対して出力する。物体B1は、本開示の技術に係る「第1対象物体」の一例である。
【0042】
ロボットアーム12は、動作信号36Aに基づいて物体Bを取りに行く動作を開始する。ロボットアーム12の動作に伴って、ロボットハンド16は、動作信号36Aにおいて指示された経由点を通過する。また、カメラ18は、各経由点において撮像を行う。
図3に示す例では、4つの経由点D1~D4を通過する例が示されている。
【0043】
ここで、経由点D1~D4は、予め設定されている。詳細は後述するが、経由点D1~D4は、一つ前の搬送動作における物体Bを移動させる動作により得られた三次元計測結果に基づいて決定されている。なお、前回の搬送動作が行われていない場合(すなわち、初回の搬送動作の場合)には、別途、三次元計測を行って経由点を決定してから、搬送動作を開始してもよい。また、搬送対象となる物体B1についても、予め定められたアルゴリズムに基づいて適宜設定される。例えば、一つ前の搬送動作における三次元計測の結果、ロボットハンド16による把持が可能な程度の精度で三次元形状の寸法が得られた物体B1を、搬送対象として設定してもよい。
【0044】
図4は、プロセッサ22における取得部22B及び画像処理部22Cの処理内容の一例を示す概念図である。
一例として
図4に示すように、カメラ18は、複数の経由点D1~D4の各々で取得した撮像画像群38を制御装置15のプロセッサ22に対して出力する。プロセッサ22において、取得部22Bは、撮像画像群38を取得する。撮像画像群38は、複数の経由点D1~D4の各々において得られた撮像画像40A~40Dを含んでいる。すなわち、撮像画像40A~40Dは、それぞれ経由点D1~D4で撮像された画像である。以下の説明において、撮像画像40A~40Bを区別する必要がない場合、単に「撮像画像40」とも称する。撮像画像40は、三次元計測の対象となる物体B2を示す像を含む画像である。なお、以下では説明の便宜上、撮像画像40に一つの物体B2が含まれている例を挙げて説明するが、三次元計測の対象は、複数の物体Bであってもよい。物体B2は、本開示の技術に係る「第2対象物体」の一例である。
【0045】
取得部22Bは、取得した撮像画像群38を画像処理部22Cに対して出力する。画像処理部22Cは、撮像画像群38に対して物体検出処理を実行することにより、撮像画像40において物体B2を示す画像領域42を抽出する。具体的には、画像処理部22Cは、ストレージ24から物体抽出用学習済みモデル24Cを取得する。
【0046】
物体抽出用学習済みモデル24Cは、例えば、ニューラルネットワークに対して教師データを用いた機械学習が行われることによって物体B2の抽出機能を実現している。教師データとしては、例えば、過去の試験結果により得られたデータセットであって、物体B2を含む画像を例題データとし、物体B2を示す画像領域を特定可能な情報を正解データとした教師データが挙げられる。
【0047】
そして、画像処理部22Cは、物体抽出用学習済みモデル24Cに対して、撮像画像40を入力する。物体抽出用学習済みモデル24Cは、入力された撮像画像40に応じた抽出領域情報44を出力する。抽出領域情報44は、撮像画像40において、物体B2を示す画像領域42を特定可能な情報である。画像処理部22Cは、物体抽出用学習済みモデル24Cから出力された抽出領域情報44を取得する。このように、画像処理部22Cは、撮像画像40から物体B2を示す画像領域42を抽出する。
【0048】
なお、ここではAI(Artificial Intelligence)方式による画像領域の抽出の例を挙げたが、これはあくまでも一例にすぎない。例えば、パターンマッチング方式による画像領域の抽出が行われてもよい。
【0049】
また、ここでは、複数の静止画からなる撮像画像群38に対して画像処理が行われる形態例を挙げたが、本開示の技術はこれに限定されない。例えば、カメラ18により得られた動画から抽出された数フレーム(例えば、2~3フレーム)に対して画像処理が行われる形態例であってもよい。
【0050】
また、ここでは、複数の撮像画像40に対してまとめて画像処理が行われる形態例を挙げたが、本開示の技術はこれに限定されない。例えば、撮像画像40が得られる度に、画像処理が並列的に行われてもよい。
【0051】
図5は、プロセッサ22における三次元計測部22Dの処理内容の一例を示す概念図である。
一例として
図5に示すように、三次元計測部22Dは、取得部22Bから撮像位置情報46を取得する。撮像位置情報46は、撮像画像40が撮像された位置(例えば、撮像画像40が撮像されたときのカメラ18の光学中心の三次元座標)を示す情報である。撮像位置情報46は、例えば、撮像画像40に付帯されている。また、三次元計測部22Dは、画像処理部22Cから抽出領域情報44を取得する。
【0052】
三次元計測部22Dは、撮像位置情報46及び抽出領域情報44を用いて、物体B2の三次元計測処理を実行する。具体的には、三次元計測部22Dは、複数の撮像位置から観測した物体B2を示す画像領域42に対して視体積交差法を用いた物体B2の三次元形状の推定を行う。視体積交差法(SfS;Shape from Silhouette)とは、複数の撮像位置で対象物体を観測して得られるシルエットから対象物体の形状を推定する手法である。三次元計測部22Dは、撮像画像40Aにおける画像領域42に向かって撮像位置E1から仮想的に伸ばした錐体状の空間F1を算出する。ここで、撮像位置E1は、撮像画像40Aを撮像した位置である。また、三次元計測部22Dは、撮像画像40Bにおける画像領域42に向かって撮像位置E2から仮想的に伸ばした錐体状の空間F2を算出する。
図5に示す例では、2つの撮像位置から三次元形状が推定される例を挙げているが、2つ以上の撮像位置が用いられてもよいことはもちろんである。
【0053】
そして、三次元計測部22Dは、空間F1及び空間F2の両方に含まれる三次元形状Gを物体B2の形状として推定する。三次元計測処理の結果、物体B2の三次元形状Gを示す物体形状情報48が得られる。このように、三次元計測部22Dは、撮像画像40に基づいて物体B2の三次元形状を推定する。より具体的には、三次元計測部22Dは、複数の撮像画像40における画像領域42に対して視体積交差法を用いることにより、物体B2の三次元形状を推定する。
【0054】
図6は、プロセッサ22における候補点算出部22Eの処理内容の一例を示す概念図である。
一例として
図6に示すように、候補点算出部22Eは、三次元計測部22Dから物体形状情報48を取得する。先ず、候補点算出部22Eは、物体形状情報48により示される三次元形状Gを点群Hに変換する。点群Hは、三次元形状Gに対応した点の集合であって、各点は、三次元空間の位置座標を有している。さらに、候補点算出部22Eは、点群Hに対して主成分分析を行う。これにより、点群Hを構成する各点の三次元空間における分布について、第1主成分σ1、第2主成分σ2、及び第3主成分σ3が得られる。
【0055】
ここで、主成分分析により得られる第1主成分σ1及び第2主成分σ2は、それぞれ点群Hに含まれる点の三次元空間の分布において、最もばらつきの大きい方向と、二番目にばらつきの大きい方向である。また、第1主成分σ1及び第2主成分σ2は、互いに直交しており、平面を成している。そして、第3主成分σ3は、第1主成分σ1及び第2主成分σ2に直交する方向であり、第3主成分σ3に沿った方向は、第1主成分σ1及び第2主成分σ2と比較して、点のばらつきが小さい方向となっている。すなわち、第3主成分σ3に沿った方向は、点群Hにおける点の分布に関して情報が少ない方向といえる。
【0056】
そして、候補点算出部22Eは、第3主成分σ3に沿った方向に延在される軸L上に三次元計測の候補点Iを設定する。換言すれば、候補点算出部22Eは、第3主成分σ3に沿った軸Lと、カメラ18の光軸とが一致する位置に候補点Iを設定する。候補点Iは、三次元計測の際にカメラ18が位置する候補となる点である。
【0057】
また、候補点算出部22Eは、カメラ18の撮影範囲(すなわち、画角)に含まれる点群Hにおける点の数が予め設定された範囲となる位置に候補点Iを設定する。撮像範囲内の点の数が、予め設定された範囲の下限値以上である場合(すなわち、カメラ18の位置が点群Hに対して十分に離れている場合)は、対象物体のシルエットを画角内に収めることができる。このため、三次元形状計測の精度が向上する。一方、撮像範囲内の点の数が、予め設定された範囲の上限値以下である場合(すなわち、カメラ18の位置が点群Hに対して適切な距離にある場合)は、空間解像度が確保され、十分な精度での三次元形状の計測が実現される。
【0058】
候補点算出部22Eは、上述した条件を満たす撮像位置を、次回の搬送動作(ここでは、物体B1を移動させる動作)における候補点Iとして算出する。そして、候補点算出部22Eは、候補点Iを示す情報である候補点情報50を出力する。
【0059】
図7は、プロセッサ22における経由点決定部22Fの処理内容の一例を示す概念図である。
一例として
図7に示すように、経由点決定部22Fは、候補点算出部22Eから点群情報52及び候補点情報50を取得する。点群情報52は、点群Hに含まれる複数の点の各々の位置座標を示す情報である。先ず、経由点決定部22Fは、ロボットハンド16が移動可能な点を算出する。具体的には、経由点決定部22Fは、点群Hの重心を原点とする球面座標系を用いて、ロボットハンド16が移動可能な点を設定する。より具体的には、経由点決定部22Fは、点群Hの重心Jを導出する。そして、経由点決定部22Fは、点群Hの重心Jを原点とする球面座標系において格子点を生成する。格子点の生成において、経由点決定部22Fは、候補点Iの座標に対して、第1角度の差分Δθだけずらした点、及び第2角度の差分Δφだけずらした点を生成することで、格子点を生成する。また、候補点Iの原点からの距離rを差分Δrだけずらした点についても同様に、第1角度の差分Δθだけずらした点、及び第2角度の差分Δφだけずらした点を生成することで、格子点を生成する。
【0060】
そして、経由点決定部22Fは、生成した格子点の中からロボットハンド16が移動可能な点を探索する。具体的には、経由点決定部22Fは、アーム本体14のリンク部分14Aの長さ、及び関節14Bの回転可能角度等に基づいて、格子点の中でロボットハンド16が移動可能な点を導出する。この結果、ロボットハンド16が移動可能な点を示す情報である移動可能点情報54が得られる。
【0061】
経由点決定部22Fは、候補点情報50及び移動可能点情報54に基づいて、次回の搬送動作における経由点を決定する。具体的には、経由点決定部22Fは、ロボットハンド16が移動可能な点と候補点Iとに最も近い点を経由点として決定する。例えば、経由点決定部22Fは、候補点Iと移動可能点とについて二分法を用いることにより、経由点を算出する。具体的には、候補点Iと移動可能点の座標を初期値とし、予め定められた回数の反復計算を実行することで得られる両者に最も近い点を、経由点として決定する。経由点決定部22Fは、決定した経由点を示す情報である経由点情報56を出力する。
【0062】
なお、ここでは二分法を用いて経由点として決定する形態例を挙げたがこれはあくまでも一例にすぎない。その他の数値解析手法を用いて、経由点が決定されてもよい。
【0063】
図8は、プロセッサ22における動作制御部22Aの処理内容の一例を示す概念図である。
一例として
図8に示すように、動作制御部22Aは、経由点決定部22Fから経由点情報56を取得する。動作制御部22Aは、経由点情報56に基づいて動作信号36Bを生成する。動作信号36Bは、物体B1を置きに行く動作における経由点を示す信号である。そして、動作制御部22Aは、動作信号36Bをロボットアーム12に対して出力する。ロボットアーム12は、動作信号36Bに基づいて物体B1を台A2へ置きに行く動作を開始する。ロボットアーム12の動作に伴って、ロボットハンド16は、動作信号36Bにおいて指示された経由点を通過する。また、カメラ18は、各経由点において撮像を行う。
図8に示す例では、3つの経由点K1~K3を通過する例が示されている。このように、物体B1を置きに行く動作における経由点は、物体B1を取りに行く動作の間における物体B2の三次元形状の計測結果に基づいて設定される。
【0064】
ロボットアーム12による物体B1の搬送動作が終了した後、動作制御部22Aは、次の物体B(例えば、物体B3)に対する搬送動作を開始する。この搬送動作の物体B3を取りに行く動作において、ロボットアーム12の経由点は、一つ前の搬送動作における物体B1を置きに行く動作において得られた撮像画像40に基づいて算出された経由点である。このように、ある搬送動作における複数の経由点は、直前の搬送動作における物体Bの三次元形状の計測結果に基づいて設定される。
【0065】
次に、本実施形態に係るロボットアームシステム10におけるロボットアーム12の制御処理(以下単に「制御処理」とも称する)について、
図9及び
図10を参照しながら説明する。
図9は、制御処理の一例を示すフローチャートである。また、
図10は、経由点算出処理の一例を示すフローチャートである。
図10に示す経由点算出処理の流れは、本開示の技術に係る「情報処理方法」の一例である。
【0066】
一例として
図9に示すように、制御処理では、先ず、ステップST14で、動作制御部22Aは、複数の物体Bの中から搬送対象となる物体B1を決定する。ステップST14の処理が実行された後、制御処理は、ステップST16へ移行する。
【0067】
ステップST16で、動作制御部22Aは、ロボットアーム12に対して物体B1を取りに行く動作を開始させる。ステップST16の処理が実行された後、制御処理は、ステップST18へ移行する。
【0068】
ステップST18で、動作制御部22Aは、物体B1を取りに行く動作における経由点毎にカメラ18に撮像対象となる物体B2を撮像させる。ステップST18の処理が実行された後、制御処理は、ステップST20へ移行する。
【0069】
ステップST20で、取得部22Bは、カメラ18により得られた撮像画像40及び撮像位置情報46を取得する。ステップST20の処理が実行された後、制御処理は、ステップST100へ移行する。
【0070】
ステップST100で、経由点算出処理が実行される。ステップST100の処理が実行された後、制御処理は、ステップST22へ移行する。
【0071】
ステップST22で、動作制御部22Aは、ステップST100の経由点算出処理の結果得られた経由点を通過するように、ロボットアーム12に対して物体B1を置きに行く動作を実行させる。ステップST22の処理が実行された後、制御処理は、ステップST24へ移行する。
【0072】
ステップST24で、動作制御部22Aは、物体B1を置きに行く動作における経由点毎にカメラ18に撮像対象となる物体B2を撮像させる。ステップST24の処理が実行された後、制御処理は、ステップST26へ移行する。
【0073】
ステップST26で、取得部22Bは、カメラ18により得られた撮像画像40及び撮像位置情報46を取得する。ステップST26の処理が実行された後、制御処理は、ステップST100Aへ移行する。
【0074】
ステップST100Aで、経由点算出処理が実行される。ステップST100Aの処理が実行された後、制御処理は、ステップST28へ移行する。
【0075】
ステップST28で、動作制御部22Aは、制御処理を終了させる条件(以下、「終了条件」と称する)を満足したか否かを判定する。終了条件としては、受付装置30を介して搬送動作を終了させる指示が入力された、との条件が挙げられる。ステップST28で、終了条件を満足したと判定された場合、判定が肯定されて、制御処理は、終了する。ステップST28で、終了条件を満足したと判定されない場合、判定が否定されて、制御処理は、ステップST14に戻る。
【0076】
一例として
図10に示すように、ステップST100及びST100Aにおける経由点算出処理において、ステップST101では、画像処理部22Cは、取得部22Bにより取得された撮像画像40に対して物体抽出処理を実行することにより、物体B2を示す画像領域42を抽出する。ステップST101の処理が実行された後、経由点算出処理は、ステップST103へ移行する。
【0077】
ステップST103では、三次元計測部22Dは、画像処理部22Cにおいて得られた抽出結果に基づいて、視体積交差法による物体B2の三次元計測処理を実行する。ステップST103の処理が実行された後、経由点算出処理は、ステップST105へ移行する。
【0078】
ステップST105では、候補点算出部22Eは、三次元計測部22Dにおいて得られた三次元計測結果を点群Hに変換する。ステップST105の処理が実行された後、経由点算出処理は、ステップST107へ移行する。
【0079】
ステップST107では、候補点算出部22Eは、ステップST105において得られた点群Hに対して主成分分析を行う。ステップST107の処理が実行された後、経由点算出処理は、ステップST109へ移行する。
【0080】
ステップST109では、候補点算出部22Eは、ステップST107において得られた主成分分析結果のうちの第3主成分σ3に沿った方向にカメラ18の光軸を設定する。ステップST109の処理が実行された後、経由点算出処理は、ステップST111へ移行する。
【0081】
ステップST111では、候補点算出部22Eは、ステップST109において設定された光軸上で、画角内の点の数が予め定められた範囲内になる位置に候補点Iを設定する。ステップST111の処理が実行された後、経由点算出処理は、ステップST113へ移行する。
【0082】
ステップST113では、経由点決定部22Fは、点群Hの重心を原点とする球面座標系において格子点を生成する。ステップST113の処理が実行された後、経由点算出処理は、ステップST115へ移行する。
【0083】
ステップST115では、経由点決定部22Fは、ステップST113で得られた格子点の中からロボットハンド16が移動可能な点を探索する。ステップST115の処理が実行された後、経由点算出処理は、ステップST117へ移行する。
【0084】
ステップST117では、経由点決定部22Fは、移動可能な点と候補点と基づいて経由点を決定する。ステップST117が実行された後、経由点算出処理が終了する。
【0085】
以上説明したように、本実施形態に係るロボットアームシステム10では、制御装置15の取得部22Bにおいて、ロボットハンド16に設けられたカメラ18により得られた撮像画像40が取得される。撮像画像40は、ロボットハンド16による物体B1に対する搬送動作の間に、ロボットハンド16が通過する複数の経由点において撮像されて得られた画像である。撮像画像40には、物体B2を示す像が含まれている。そして、三次元計測部22Dは、取得した撮像画像40に基づいて物体B2の三次元形状を推定する。これにより、搬送動作とは別に、三次元形状を測定するために複数の計測点へロボットハンド16を移動させる必要が無くなり、三次元形状の測定に起因したタクトタイムの増加が抑制される。
【0086】
また、本実施形態に係るロボットアームシステム10では、三次元計測部22Dにおいて、物体B2の三次元形状は、複数の経由点の各々において得られた複数の撮像画像40に対して物体B2を示す画像領域42が抽出された結果に対して、視体積交差法を用いることで推定される。これにより、ロボットハンド16に設けられたカメラ18により得られた撮像画像40に基づいた三次元形状の推定を行う場合であっても、三次元計測に要する時間を短縮できる。
【0087】
例えば、三次元計測用のステレオカメラをロボットアーム12とは別体に設けた構成と比較して、ロボットアームシステム10の構成の簡素化、及び低コスト化が期待できる。
【0088】
また、例えば、物体B2が様々な光学特性を有する物体であっても、正確な三次元形状の推定を行うことができる。具体的には、物体B2が、可視光に対して不透明な光学特性を有する場合、ステレオカメラを用いた三次元計測では、外観形状を把握することが困難となる。また、物体B2が光沢を有する場合、2台のカメラの各々において物体B2を見る角度によって物体B2の光る位置(すなわち、物体B2において反射光の強度が最も大きくなる位置)が変化してしまう。また、2台のカメラの各々が、物体B2の光る位置に合わせて感度を調整してしまう。このため、ステレオカメラ間の視差を正確に求めることが困難になり、正確な三次元計測を行うことが困難になる、あるいはステレオカメラシステムが高コスト化する。一方、本構成では、撮像画像40から物体B2を示す画像領域42を抽出した結果に対して視体積交差法を用いることで、物体B2の三次元形状を推定する。これにより、様々な光学特性を持つ物体B2であっても、低コスト化かつ高速に三次元計測を行うことが実現される。
【0089】
また、本実施形態に係るロボットアームシステム10では、搬送動作は、複数の物体B毎に行われ、複数の経由点は、直前の搬送動作における物体Bの三次元形状の計測結果に基づいて設定される。この結果、より計測に適した経由点をロボットハンド16に通過させることが実現される。
【0090】
また、本実施形態に係るロボットアームシステム10では、ロボットアーム12による搬送動作には、ロボットハンド16が物体B1を把持するために移動する動作(すなわち、物体B1を取りに行く動作)と、ロボットハンド16により把持された物体B1が別の場所へ搬送される動作(すなわち、物体B1を置きに行く動作)とを含む。そして、物体B1を置きに行く動作における経由点は、取りに行く動作の間における物体B2の三次元形状の計測結果に基づいて設定される。この結果、より計測に適した経由点をロボットハンド16に通過させることが実現される。
【0091】
また、本実施形態に係るロボットアームシステム10では、経由点は、計測結果から求められる三次元計測の候補点Iと、ロボットハンド16の移動可能点とに基づいて設定される。これにより、三次元計測に適し、かつロボットハンド16の移動を制限しない経由点の設定が実現される。
【0092】
また、本実施形態に係るロボットアームシステム10では、候補点算出部22Eは、物体B1の三次元形状に対応した複数の点から成る点群Hに対する主成分分析を行う。そして、候補点算出部22Eは、主成分分析により得られる第3主成分σ3に沿った軸とカメラ18の光軸Lとが一致する位置に、候補点Iを設定する。このように、主成分分析によって点群Hのばらつきを示す指標が定量的に得られる。さらに、ばらつきの大きい方向である第1主成分σ1と第2主成分σ2とから成る平面に対して、直交する方向である第3主成分σ3に沿った方向に光軸Lを一致させる。これにより、点群Hが分布する方向に対してカメラ18を垂直に向けることができる。この結果、より三次元計測に適した計測点を設定することができる。
【0093】
また、本実施形態に係るロボットアームシステム10では、候補点算出部22Eにおいて、候補点Iは、第3主成分σ3に沿った方向において、カメラ18の撮影範囲に含まれる点群Hにおける点の数が予め設定された範囲となる位置に設定される。これにより、三次元計測のための候補点Iが、カメラ18の撮影範囲に点が閾値以上含まれ、かつ空間解像度が確保される位置に設定されるので、より三次元計測に適した計測点を設定することができる。
【0094】
また、本実施形態に係るロボットアームシステム10では、経由点決定部22Fにおいて、経由点は、三次元計測における物体B2の重心を原点とする球面標系を用いて設定される。これにより、物体B2を中心とした経由点を算出することが容易となる。
【0095】
また、本実施形態に係るロボットアームシステム10では、経由点決定部22Fにおいて、経由点は、球面座標系により示される格子点であり、候補点とロボットハンド16の移動可能点とに最も近い点である。これにより、三次元計測に適し、かつロボットハンド16の移動を制限しない経由点の設定が実現される。
【0096】
上記実施形態において、物体B1を取りに行く動作及び物体B1を置きに行く動作の両方で三次元計測が行われる形態例を挙げて説明したが、本開示の技術はこれに限定されない。例えば、物体B1を取りに行く動作及び物体B1を置きに行く動作のいずれかで三次元計測が行われてもよい。
【0097】
また、上記実施形態において、ロボットハンド16により台A1から台A2へ物体Bが搬送される形態例を挙げて説明したが、本開示の技術はこれに限定されない。例えば、物体Bが箱の内部に積まれた状態からピッキングされて別の場所へ搬送される形態であってもよいし、物体Bがベルトコンベア上を流れ、そこからピッキングされる形態であってもよい。また、例えば、物体Bが搬送先において、別の部品に組付けられる形態であってもよいし、別のロボットハンド又は作業者に対して受け渡される形態であってもよい。
【0098】
また、上記実施形態では、ストレージ24に動作制御プログラム24A及び経由点算出プログラム24B(以下単に「各種プログラム」とも称する)が記憶されている形態例を挙げて説明したが、本開示の技術はこれに限定されない。例えば、各種プログラムがSSD、又はUSB(Universal Serial Bus)メモリなどの可搬型の非一時的記憶媒体に記憶されていてもよい。非一時的記憶媒体に記憶されている各種プログラムは、制御装置15にインストールされる。プロセッサ22は、各種プログラムに従って動作制御処理及び経由点算出処理(以下単に「各種処理」とも称する)を実行する。また、動作制御プログラム24A及び経由点算出プログラム24Bが、一つのプログラムとしてストレージ24又は非一時的記憶媒体に記憶されていてもよい。
【0099】
また、ネットワークを介して制御装置15に接続される他のコンピュータ又はサーバ等の記憶装置に各種プログラムを記憶させておき、制御装置15の要求に応じて各種プログラムがダウンロードされ、制御装置15にインストールされるようにしてもよい。
【0100】
なお、制御装置15に接続される他のコンピュータ又はサーバ装置等の記憶装置、又はストレージ24に各種プログラムの全てを記憶させておく必要はなく、各種プログラムの一部を記憶させておいてもよい。
【0101】
各種処理を実行するハードウェア資源としては、次に示す各種のプロセッサを用いることができる。プロセッサとしては、例えば、ソフトウェア、すなわち、プログラムを実行することで、各種処理を実行するハードウェア資源として機能する汎用的なプロセッサであるCPUが挙げられる。また、プロセッサとしては、例えば、FPGA、PLD、又はASICなどの特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路が挙げられる。何れのプロセッサにもメモリが内蔵又は接続されており、何れのプロセッサもメモリを使用することで各種処理を実行する。
【0102】
各種処理を実行するハードウェア資源は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種または異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせ、又はCPUとFPGAとの組み合わせ)で構成されてもよい。また、各種処理を実行するハードウェア資源は1つのプロセッサであってもよい。
【0103】
1つのプロセッサで構成する例としては、第1に、1つ以上のCPUとソフトウェアの組み合わせで1つのプロセッサを構成し、このプロセッサが、各種処理を実行するハードウェア資源として機能する形態がある。第2に、SoCなどに代表されるように、各種処理を実行する複数のハードウェア資源を含むシステム全体の機能を1つのICチップで実現するプロセッサを使用する形態がある。このように、各種処理は、ハードウェア資源として、上記各種のプロセッサの1つ以上を用いて実現される。
【0104】
更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路を用いることができる。また、上記の各種処理はあくまでも一例である。従って、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。
【0105】
以上に示した記載内容及び図示内容は、本開示の技術に係る部分についての詳細な説明であり、本開示の技術の一例に過ぎない。例えば、上記の構成、機能、作用、及び効果に関する説明は、本開示の技術に係る部分の構成、機能、作用、及び効果の一例に関する説明である。よって、本開示の技術の主旨を逸脱しない範囲内において、以上に示した記載内容及び図示内容に対して、不要な部分を削除したり、新たな要素を追加したり、置き換えたりしてもよいことは言うまでもない。また、錯綜を回避し、本開示の技術に係る部分の理解を容易にするために、以上に示した記載内容及び図示内容では、本開示の技術の実施を可能にする上で特に説明を要しない技術常識等に関する説明は省略されている。
【0106】
本明細書において、「A及び/又はB」は、「A及びBのうちの少なくとも1つ」と同義である。つまり、「A及び/又はB」は、Aだけであってもよいし、Bだけであってもよいし、A及びBの組み合わせであってもよい、という意味である。また、本明細書において、3つ以上の事柄を「及び/又は」で結び付けて表現する場合も、「A及び/又はB」と同様の考え方が適用される。
【0107】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【0108】
上記実施形態に関し、さらに以下の付記を開示する。
【0109】
<付記1>
プロセッサを備え、
上記プロセッサは、
ロボットハンドによる把持の対象となる第1対象物体に対する搬送動作の間に上記ロボットハンドが通過する複数の経由点において上記ロボットハンドに設けられた撮像装置により得られた画像であって、三次元計測の対象となる第2対象物体を示す像を含む画像を取得し、
取得した上記画像に基づいて上記第2対象物体の三次元形状を推定する
情報処理装置。
<付記2>
上記第2対象物体の三次元形状は、上記複数の経由点の各々において得られた複数の画像に対して上記第2対象物体を示す像が抽出された結果に対して、視体積交差法を用いることで推定される
付記1に記載の情報処理装置。
<付記3>
上記搬送動作は、複数の上記第1対象物体毎に行われ、
上記複数の経由点は、直前の搬送動作における上記第2対象物体の三次元形状の計測結果に基づいて設定される
付記1又は付記2に記載の情報処理装置。
<付記4>
上記搬送動作は、上記ロボットハンドが第1対象物体を把持するために移動する第1動作と、上記ロボットハンドにより把持された上記第1対象物体が別の場所へ搬送される第2動作とを含み、
上記第2動作における上記経由点は、上記第1動作の間における上記第2対象物体の三次元形状の計測結果に基づいて設定される
付記1から付記3の内の何れか一つに記載の情報処理装置。
<付記5>
上記経由点は、上記計測結果から求められる上記三次元計測の候補点と、上記ロボットハンドの移動可能点とに基づいて設定される
付記3又は付記4に記載の情報処理装置。
<付記6>
上記候補点は、上記三次元形状に対応した複数の点から成る点群であって各点が三次元空間座標を示す上記点群に対する主成分分析を行うことにより得られる第3主成分に沿った軸と上記撮像装置の光軸とが一致する位置に設定される
付記5に記載の情報処理装置。
<付記7>
上記候補点は、上記第3主成分に沿った方向において、上記撮像装置の撮影範囲に含まれる上記点群における点の数が予め設定された範囲となる位置に設定される
付記6に記載の情報処理装置。
<付記8>
上記移動可能点は、上記三次元計測における上記第2対象物体の重心を原点とする球面座標系を用いて設定される
付記5に記載の情報処理装置。
<付記9>
上記経由点は、上記球面座標系により示される格子点であり、上記候補点と上記ロボットハンドの上記移動可能点とに最も近い点である
付記8に記載の情報処理装置。
【符号の説明】
【0110】
10 ロボットアームシステム
12 ロボットアーム
14 アーム本体
14A リンク部分
14B 関節
15 制御装置
16 ロボットハンド
16A,16B 指
16C 基端部
18 カメラ
20 コンピュータ
22 プロセッサ
22A 動作制御部
22B 取得部
22C 画像処理部
22D 三次元計測部
22E 候補点算出部
22F 経由点決定部
24 ストレージ
24A 動作制御プログラム
24B 経由点算出プログラム
24C 物体検出用学習済みモデル
28 通信I/F
30 受付装置
32 表示装置
34 バス
36,36A,36B 動作信号
38 撮像画像群
40,40A,40B 撮像画像
42 画像領域
44 抽出領域情報
46 撮像位置情報
48 物体形状情報
50 候補点情報
52 点群情報
54 移動可能点情報
56 経由点情報
I 候補点
A1,A2 台
B,B1,B2 物体
C 土台
D1,D2,D3,D4 経由点
E1,E2 撮像位置
F1,F2 空間
G 三次元形状
H 点群
I 候補点
J 重心
K1,K2,K3 経由点
L 軸