IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

2024-64250システム、ランドマーク、コンピュータプログラム、および、データ処理装置。
<>
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図1
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図2
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図3
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図4
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図5
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図6
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図7
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図8
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図9
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図10
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図11
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図12
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図13
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図14
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図15
  • -システム、ランドマーク、コンピュータプログラム、および、データ処理装置。 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024064250
(43)【公開日】2024-05-14
(54)【発明の名称】システム、ランドマーク、コンピュータプログラム、および、データ処理装置。
(51)【国際特許分類】
   G01B 21/00 20060101AFI20240507BHJP
   G01B 11/00 20060101ALI20240507BHJP
【FI】
G01B21/00 E
G01B11/00 Z
【審査請求】未請求
【請求項の数】17
【出願形態】OL
(21)【出願番号】P 2022172697
(22)【出願日】2022-10-27
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110001058
【氏名又は名称】鳳国際弁理士法人
(72)【発明者】
【氏名】平林 裕貴
(72)【発明者】
【氏名】ウー カージャ
【テーマコード(参考)】
2F065
2F069
【Fターム(参考)】
2F065AA04
2F065BB05
2F065BB28
2F065FF05
2F065FF09
2F065FF11
2F065HH04
2F065HH06
2F065HH07
2F065JJ03
2F065JJ05
2F065JJ26
2F065PP25
2F065QQ28
2F065QQ31
2F069AA04
2F069FF07
2F069GG04
2F069GG07
2F069HH09
2F069JJ01
(57)【要約】
【課題】ランドマークを用いて点群を示す三次元データを処理するための技術を開示する。
【解決手段】
ランドマークの表面は、三次元センサにて測定される際に測定対象とされる特定面を含む。処理装置は、特定面を示す複数の点を用いて算出されるランドマークの特徴量を取得し、特定面を含む物体の表面を示す点群を示す点群データであって三次元センサによって物体の表面を測定することによって生成される点群データを取得し、点群を用いて物体の特徴量を算出し、物体の特徴量とランドマークの特徴量とを用いて、点群の座標系におけるランドマークの位置を特定する。特徴量は、対象物の表面上の注目点に対して設定される複数の参照領域であって第1領域と第2領域とを含む複数の参照領域のそれぞれについて算出される領域特徴量を含む。特定面は、第1領域に対応する第1部分と第2領域に対応する第2部分とを含む。第1部分の形状と第2部分の形状とは異なる。
【選択図】 図4
【特許請求の範囲】
【請求項1】
ランドマークとデータ処理装置とを備えるシステムであって、
前記ランドマークの表面は、三次元センサによって測定される際に測定対象とされるべき特定面を含み、
前記データ処理装置は、
前記ランドマークの前記特定面を示す複数個の点を用いて算出される前記ランドマークの三次元特徴量を取得する特徴量取得部と、
前記三次元センサによって1以上の物体の表面を測定することによって生成される点群データを取得する点群取得部であって、前記1以上の物体の表面は前記ランドマークの前記特定面を含み、前記点群データは、前記1以上の物体の表面を示す複数個の点を含む点群を示す、前記点群取得部と、
前記点群を用いて前記1以上の物体の前記三次元特徴量を算出する特徴量算出部と、
前記1以上の物体の前記三次元特徴量と、前記ランドマークの前記三次元特徴量と、を用いて、前記点群の座標系における前記ランドマークの位置を特定する特定部と、
特定される前記ランドマークの位置を用いて、前記点群の座標系に関する特定処理を実行する特定処理部と、
を備え、
前記三次元特徴量は、対象物の表面上の注目点に対して設定される複数個の参照領域であって第1領域と第2領域とを含む前記複数個の参照領域のそれぞれについて算出される領域特徴量を含み、
前記領域特徴量は、前記参照領域内に位置する複数個の点を用いて算出される量であり、
前記ランドマークの前記特定面は、前記第1領域に対応する第1部分と、前記第2領域に対応する第2部分と、を含み、
前記第1部分の形状と、前記第2部分の形状とは、異なる、システム。
【請求項2】
請求項1に記載のシステムであって、
前記特定面上の任意の位置における最大法線角度は、90度以下であり、
一の位置の前記最大法線角度は、前記特定面のうち前記一の位置から1mm以内の局所領域に位置する任意の2点の法線がなす角度の最大値である、システム。
【請求項3】
請求項1に記載のシステムであって、
前記特定面は、頂点を含む錐面と、前記錐面とは異なる形状を有する他面と、を含み、
前記第1部分は、錐面の少なくとも一部であり、
前記第2部分は、前記他面の少なくとも一部である、システム。
【請求項4】
請求項3に記載のシステムであって、
前記第1領域は、前記注目点を含む内側領域に配置される1以上の内側参照領域を含み、
前記第2領域は、前記内側領域の外側に位置する外側領域に配置される1以上の外側参照領域と、を含み、
前記錐面は、前記錐面の頂点を前記注目点とする場合に前記内側領域に対応し、
前記他面は、前記錐面の頂点を前記注目点とする場合に前記外側領域に対応し、前記錐面の軸線を中心軸とする円筒座標系における径方向の外側に位置する外側面である、システム。
【請求項5】
請求項4に記載のシステムであって、
前記1以上の外側参照領域は、第1外側参照領域と第2外側参照領域とを含む複数個の前記外側参照領域を含み、
複数個の前記外側参照領域は、前記注目点を通る特定の直線を中心軸とする円筒座標系における周方向の位置が互いに異なり、
前記外側面は、前記第1外側参照領域に対応する第1外側面と、前記第2外側参照領域に対応する第2外側面と、を含み、
前記第1外側面と前記第2外側面とでは、形状と表面積との少なくとも一方が互いに異なる、システム。
【請求項6】
請求項5に記載のシステムであって、
前記第1外側面の前記円筒座標系における径方向の長さは、前記第2外側面の前記円筒座標系における径方向の長さとは、異なる、システム。
【請求項7】
請求項4に記載のシステムであって、
前記1以上の外側参照領域は、第1外側参照領域と第2外側参照領域とを含む複数個の前記外側参照領域を含み、
複数個の前記外側参照領域は、前記注目点を通る特定の直線を中心軸とする円筒座標系における周方向の位置が互いに異なり、
前記外側面は、前記第1外側参照領域に対応する面を含み、前記第2外側参照領域に対応する面を含まない、システム。
【請求項8】
請求項6または7に記載のシステムであって、
前記第1外側参照領域の周方向の位置と、前記第2外側参照領域の周方向の位置とは、90度異なる、システム。
【請求項9】
請求項6または7に記載のシステムであって、
前記第1外側参照領域の周方向の位置と、前記第2外側参照領域の周方向の位置とは、180度異なる、システム。
【請求項10】
請求項1に記載のシステムであって、
前記複数個の参照領域は、さらに、第3領域を含み、
前記特定面は、さらに、前記第3領域に対応する第3部分を含み、
前記第3部分の形状は、記第1部分の形状とは異なり、かつ、前記第2部分の形状とは異なる、システム。
【請求項11】
請求項10に記載のシステムであって、
前記第1部分は、錐面の少なくとも一部であり、前記第2部分は、球面の一部であり、前記第3部分は、平面である、システム。
【請求項12】
請求項4に記載のシステムであって、
前記ランドマークの前記外側面を有する部材は、板状の部材である、システム。
【請求項13】
請求項1に記載のシステムであって、
前記三次元特徴量は、SHOT(Signature of Histograms of OrienTations)特徴量である、システム。
【請求項14】
請求項1に記載のシステムであって、
前記特定処理は、特定される前記点群の座標系における前記ランドマークの位置と、他の座標系における前記ランドマークの位置と、を用いて、前記点群の座標系と、他の座標系と、の対応関係を特定する処理を含む、システム。
【請求項15】
ランドマークであって、
三次元センサによって測定される際に測定対象とされるべき特定面を備え、
前記三次元センサによる測定によって生成される前記特定面上の複数個の点を示す点群データは、前記ランドマークの三次元特徴量を算出するために用いられ、
前記三次元特徴量は、注目点に対して設定される複数個の参照領域であって第1領域と第2領域とを含む前記複数個の参照領域のそれぞれについて算出される領域特徴量を含み、
前記領域特徴量は、前記参照領域内に位置する複数個の点を用いて算出される量であり、
前記特定面は、前記第1領域に対応する第1部分と、前記第2領域に対応する第2部分と、を含み、
前記第1部分の形状と、前記第2部分の形状とは、異なる、ランドマーク。
【請求項16】
コンピュータプログラムであって、
ランドマークの特定面を示す複数個の点を用いて算出される前記ランドマークの三次元特徴量を取得する特徴量取得機能であって、前記特定面は、前記ランドマークの表面のうち、三次元センサによって測定される際に測定対象とされるべき面である、前記特徴量取得機能と、
前記三次元センサによって1以上の物体の表面を測定することによって生成される点群データを取得する点群取得機能であって、前記1以上の物体の表面は前記ランドマークの前記特定面を含み、前記点群データは、前記1以上の物体の表面を示す複数個の点を含む点群を示す、前記点群取得機能と、
前記点群を用いて前記1以上の物体の前記三次元特徴量を算出する特徴量算出機能と、
前記1以上の物体の前記三次元特徴量と、前記ランドマークの前記三次元特徴量と、を用いて、前記点群の座標系における前記ランドマークの位置を特定する特定機能と、
特定される前記ランドマークの位置を用いて、前記点群の座標系に関する特定処理を実行する特定処理機能と、
をコンピュータに実現させ、
前記三次元特徴量は、対象物の表面上の注目点に対して設定される複数個の参照領域であって第1領域と第2領域とを含む前記複数個の参照領域のそれぞれについて算出される領域特徴量を含み、
前記領域特徴量は、前記参照領域内に位置する複数個の点を用いて算出される量であり、
前記ランドマークの前記特定面は、前記第1領域に対応する第1部分と、前記第2領域に対応する第2部分と、を含み、
前記第1部分の形状と、前記第2部分の形状とは、異なる、コンピュータプログラム。
【請求項17】
データ処理装置であって、
ランドマークの特定面を示す複数個の点を用いて算出される前記ランドマークの三次元特徴量を取得する特徴量取得部であって、前記特定面は、前記ランドマークの表面のうち、三次元センサによって測定される際に測定対象とされるべき面である、前記特徴量取得部と、
前記三次元センサによって1以上の物体の表面を測定することによって生成される点群データを取得する点群取得部であって、前記1以上の物体の表面は前記ランドマークの前記特定面を含み、前記点群データは、前記1以上の物体の表面を示す複数個の点を含む点群を示す、前記点群取得部と、
前記点群を用いて前記1以上の物体の前記三次元特徴量を算出する特徴量算出部と、
前記1以上の物体の前記三次元特徴量と、前記ランドマークの前記三次元特徴量と、を用いて、前記点群の座標系における前記ランドマークの位置を特定する特定部と、
特定される前記ランドマークの位置を用いて、前記点群の座標系に関する特定処理を実行する特定処理部と、
を備え、
前記三次元特徴量は、対象物の表面上の注目点に対して設定される複数個の参照領域であって第1領域と第2領域とを含む前記複数個の参照領域のそれぞれについて算出される領域特徴量を含み、
前記領域特徴量は、前記参照領域内に位置する複数個の点を用いて算出される量であり、
前記ランドマークの前記特定面は、前記第1領域に対応する第1部分と、前記第2領域に対応する第2部分と、を含み、
前記第1部分の形状と、前記第2部分の形状とは、異なる、データ処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、ランドマークを用いるシステム、ランドマーク、コンピュータプログラム、および、データ処理装置に関する。
【背景技術】
【0002】
実空間に配置されるランドマーク上の点を示す三次元データを使用して、複数個の座標系の関係を特定する技術が知られている。例えば、特許文献1に開示されるシステムでは、制御用PCは、表面に複数個のランドマークポイントを有する市松模様が付されたキャリブレーションボードを三次元測量器にて計測することによって、複数個のランドマークポイントの三次元座標系における座標を取得する。制御用PCは、キャリブレーションボードを複数個のビデオカメラにて撮影することによって得られる複数個のビデオ画像データを用いて、複数個のランドマークポイントのビデオ画像の2次元座標系における座標を取得する。制御用PCは、取得された三次元座標系における座標と、2次元座標系の座標と、に基づいて、実世界の三次元座標系と、ビデオ画像の2次元座標系と、の位置関係を示す射影変換行列を導出する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002-22444号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このように、ランドマークを用いて、点群を示す三次元データは、位置と姿勢の決定など、種々の処理に使用され得る。
【0005】
本明細書は、ランドマークを用いて、点群を示す三次元データを処理するための新たな技術を開示する。
【課題を解決するための手段】
【0006】
本明細書に開示された技術は、以下の適用例として実現することが可能である。
【0007】
[適用例1]ランドマークとデータ処理装置とを備えるシステムであって、前記ランドマークの表面は、三次元センサによって測定される際に測定対象とされるべき特定面を含み、前記データ処理装置は、前記ランドマークの前記特定面を示す複数個の点を用いて算出される前記ランドマークの三次元特徴量を取得する特徴量取得部と、前記三次元センサによって1以上の物体の表面を測定することによって生成される点群データを取得する点群取得部であって、前記1以上の物体の表面は前記ランドマークの前記特定面を含み、前記点群データは、前記1以上の物体の表面を示す複数個の点を含む点群を示す、前記点群取得部と、前記点群を用いて前記1以上の物体の前記三次元特徴量を算出する特徴量算出部と、前記1以上の物体の前記三次元特徴量と、前記ランドマークの前記三次元特徴量と、を用いて、前記点群の座標系における前記ランドマークの位置を特定する特定部と、特定される前記ランドマークの位置を用いて、前記点群の座標系に関する特定処理を実行する特定処理部と、を備え、前記三次元特徴量は、対象物の表面上の注目点に対して設定される複数個の参照領域であって第1領域と第2領域とを含む前記複数個の参照領域のそれぞれについて算出される領域特徴量を含み、前記領域特徴量は、前記参照領域内に位置する複数個の点を用いて算出される量であり、前記ランドマークの前記特定面は、前記第1領域に対応する第1部分と、前記第2領域に対応する第2部分と、を含み、前記第1部分の形状と、前記第2部分の形状とは、異なる、システム。
【0008】
上記構成によれば、ランドマークの特定面の第1部分の形状と第2部分の形状とは、互いに異なっている。このために、ランドマークの三次元特徴量は、第1領域の領域特徴量と第2領域の領域特徴量とが互いに異なる特徴量になる。この結果、ランドマークを含む1以上の物体の三次元特徴量と、ランドマークの三次元特徴量と、を用いて、点群の座標系におけるランドマークの位置を特定する際に、例えば、他の物体をランドマークであると認識する誤認識を抑制して、ランドマークの位置を精度良く推定できる。したがって、推定されるランドマークの位置を用いて、点群の座標系に関する特定処理を適切に実行できる。
【0009】
なお、本明細書に開示された技術は、種々の形態で実現可能であり、例えば、データ処理装置、ランドマーク、データ処理装置やランドマークを用いる方法、または、データ処理装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体(例えば、一時的ではない記録媒体)、等の形態で実現することができる。
【図面の簡単な説明】
【0010】
図1】一実施例としてのデータ処理装置を示す概略図。
図2】局所的特徴量の第1の説明図。
図3】局所的特徴量の第2の説明図。
図4】第1実施例のランドマーク300の説明図。
図5】ランドマーク特徴量の説明図。
図6】第1実施例のデータ処理装置200の処理のフローチャート。
図7】シーン点群データPDsによって示されるシーン点群PCsの例を示す斜視図。
図8】変換行列Mslの例を示す図。
図9】第2実施例の装置構成の説明図。
図10】第2実施例のデータ処理装置200の処理のフローチャート。
図11】第2実施例のデータ処理装置200の処理の説明図。
図12】第3実施例の説明図。
図13】第3実施例のデータ処理装置200の処理のフローチャート。
図14】第4実施例のランドマーク300Bの説明図。
図15】第5実施例のランドマーク300Cの説明図。
図16】第6実施例のランドマーク300Dの説明図。
【発明を実施するための形態】
【0011】
A.実施例
A1.装置構成
図1は、一実施例としてのデータ処理装置を示す概略図である。データ処理装置200は、例えば、パーソナルコンピュータである。データ処理装置200には、三次元センサ110と、ロボットアーム120とが、接続されている。ロボットアーム120の前には、トレイ130が配置されている。トレイ130上には、処理対象の複数の対象物体OBと、ランドマーク300と、が配置されている。後述するように、データ処理装置200は、三次元センサ110からの情報を使用してロボットアーム120を制御し、ロボットアーム120に対象物体OBを把持させる。図示を省略するが、データ処理装置200は、ロボットアーム120に、対象物体OBをトレイ130から別の場所(例えば、製造ラインのベルトコンベア)に移動させる。
【0012】
三次元センサ110は、物体の表面上の複数の点のそれぞれの三次元座標を測定するセンサである。三次元センサ110の種類は、種々の種類であってよく、例えば、立体視、構造化光パターン、飛行時間のいずれかであってよい。立体視は、パッシブステレオ方式とも呼ばれ、複数のカメラによる撮影画像を使用して物体の表面上の三次元座標を測定する方式である。構造化光パターンは、アクティブステレオ方式とも呼ばれ、物体に投影された光のパターンを使用して物体の表面上の三次元座標を測定する方式である。飛行時間は、レーザや赤外線などの光が送信されてから、物体からの反射光が戻るまでの時間を使用して物体の表面上の三次元座標を測定する方式である。三次元センサは、三次元センサから物体の表面までの距離(深度とも呼ばれる)を測定する深度センサとも呼ばれる。本実施例では、三次元センサ110の測定方向110xは、トレイ130の方向を向いている(測定方向110xは、測定可能な方向を示している)。三次元センサ110は、トレイ130上のランドマーク300を含む物体群(例えば、トレイ130とランドマーク300と複数の対象物体OB)を測定する。
【0013】
ロボットアーム120の構成は、物体を移動させることが可能な種々の構成であってよい。本実施例では、ロボットアーム120は、オープンチェーン構造を有するリンク機構125を形成する複数のリンク121-124と、物体を挟み持つことが可能な複数の指126と、を有している。複数の指126は、リンク機構125の先端に取り付けられている。リンク機構125と複数の指126とは、図示しない複数の電気モータによって駆動される。データ処理装置200は、複数の電気モータを制御することによって、ロボットアーム120を動かすことができる。
【0014】
データ処理装置200は、プロセッサ210と、記憶装置215と、表示部240と、操作部250と、通信インタフェース270と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置215は、揮発性記憶装置220と、不揮発性記憶装置230と、を含んでいる。
【0015】
プロセッサ210は、データ処理を行うように構成された装置であり、例えば、CPUである。揮発性記憶装置220は、例えば、DRAMであり、不揮発性記憶装置230は、例えば、フラッシュメモリである。不揮発性記憶装置230は、コンピュータプログラムPGと、ランドマーク特徴量データLMDと、シーン点群データPDsと、を格納している。コンピュータプログラムPGは、後述する図2図6の処理をプロセッサ210に実現させる。コンピュータプログラムPGは、例えば、ロボットアーム120の製造業者や、ロボットアーム120の制御プログラムの製造事業者によって提供される。ランドマーク特徴量データLMDとシーン点群データPDsとについては後述する。
【0016】
表示部240は、液晶ディスプレイ、有機ELディスプレイなどの、画像を表示するように構成された装置である。操作部250は、ボタン、レバー、表示部240上に重ねて配置されたタッチパネルなどの、ユーザによる操作を受け取るように構成された装置である。ユーザは、操作部250を操作することによって、種々の指示をデータ処理装置200に入力可能である。通信インタフェース270は、他の装置と通信するためのインタフェースである(例えば、USBインタフェース、有線LANインタフェース、IEEE802.11の無線インタフェース)。通信インタフェース270には、三次元センサ110とロボットアーム120とが接続される。
【0017】
A2.局所的特徴量
本実施例では、ランドマークの局所的特徴量と、三次元センサ110を用いて測定される複数の物体の表面を示す点群に基づく局所的特徴量と、をマッチングすることで、複数の物体に含まれるランドマークの位置や姿勢を特定する。先ず、本実施例にて用いられる局所的特徴量について説明する。
【0018】
図2図3は、局所的特徴量の説明図である。局所的特徴量は、物体の表面上の1つの注目点(例えば、後述するランドマーク300の頂点TP、あるいは、後述するシーン対象点)の特徴を示す三次元特徴量である。局所的特徴量は、物体の表面を示す点群のうちの注目点の近傍の複数個の点に基づいて算出される量である。本実施例では、局所的特徴量として、SHOT(Signature of Histograms of OrienTations)特徴量が採用される。
【0019】
図2(A)は、局所的特徴量の算出のフローチャートである。S1では、複数個の点PTから成る点群から、局所的特徴量を算出すべき1つの注目点PTiが決定される。図2(B)には、複数の点PTと、これらの点PTから決定される注目点PTiと、が図示されている。複数の点PTは、物体の表面上に分散して配置され、該物体の表面を示す点群である。
【0020】
S2では、注目点PTiにおける局所座標系を決定する。図2(B)、(C)には、注目点PTiを中心とする半径R1を有するサポート球SPが示されている。サポート球SP内の領域は、注目点PTiからの距離がゼロ以上半径R1以下の領域(以下、サポート領域SRとも呼ぶ)である。
【0021】
図2(C)に示すように、注目点PTiに対して決定される局所座標系は、注目点PTiを原点とし、互いに直交する単位ベクトルによって定義される3個の座標軸Xl、Yl、Zlによって定められる座標系である。
【0022】
3個の座標軸Xl、Yl、Zlの決定方法、すなわち、注目点PTiにおける局所座標系の決定方法は、種々の方法であってよい。本実施例では、サポート領域SR(図2(C))内の複数の点PTに対していわゆる主成分分析を行うことによって、分散共分散行列の3個の固有ベクトル、すなわち、第1固有ベクトルvi、第2固有ベクトルvii、第3固有ベクトルviiiが算出される。3個の固有ベクトルvi、vii、viiiが座標軸Xl、Yl、Zlに決定されることで、局所座標系が決定される。この方法によって、座標軸Xlは、サポート領域SR内の複数個の点PTの分布のバラツキ(分散)が最大となる方向に決定される。座標軸Ylは、座標軸Xlと直交する方向のうち、上記分布のバラツキが最大となる方向に決定される。座標軸Zlは、座標軸Xlと座標軸Ylとに直交する方向に決定される。座標軸Xlおよび座標軸Ylとの両方に平行な平面PL(図2(C))は、サポート領域SRに含まれる複数の点PTを近似する近似平面であると言うことができるので、座標軸Zlを示す第3固有ベクトルviiiは、注目点PTiにおける法線ベクトルvn(平面PLに垂直なベクトル)でもある。
【0023】
S3では、注目点PTiに対して、K個の参照領域が設定される。本実施例では、参照領域の個数Kは、32である。
【0024】
具体的には、図3(A)に示すように、注目点PTiのサポート球SPの内側に、サポート球SPよりも小さな内球SPiが設定される。内球SPiは、注目点PTiを中心とし、サポート球SPの半径の半分の半径R2を有する球である。さらに、注目点PTiを通り、座標軸Zlと垂直な平面Fzが設定される。内球SPiと平面Fzとによって、サポート球SP内のサポート領域SRは、4個の領域、すなわち、注目点PTiを含む上内側領域Siu、下内側領域Sibと、その外側に位置する上外側領域Sou、下外側領域Sobに分割される。上内側領域Siuは、内球SPi内の領域のうち、平面Fzよりも上側(座標軸Zlの正方向側)の半球の領域である。上外側領域Souは、サポート球SP内の領域のうち、平面Fzよりも上側の半球の領域から上内側領域Siuを除いた領域である。下内側領域Sibは、内球SPi内の領域のうち、平面Fzよりも下側(座標軸Zlの負方向側)の半球の領域である。下外側領域Sobは、サポート球SP内の領域のうち、平面Fzよりも下側の半球の領域から下内側領域Sibを除いた領域である。
【0025】
さらに、座標軸Zlを含む4個の平面Fa~Fdが設定される。図3(B)には、下外側領域Sobと下内側領域Sibとを座標軸Zlの正方向側(+Zl側)から、負方向側(-Zl側)に向かって見た図が示されている。平面Faは、座標軸Zlと座標軸Xlとを含む平面である。平面Fcは、座標軸Zlと座標軸Ylとを含む平面である。平面Fbと平面Fdとは、互いに直交し、かつ、平面Fa、Fcとの間の角度が45度である平面である。図3(B)に示すように、平面Fa~Fdにより、下外側領域Sobは、8個の外側参照領域Sob1~Sob8に分割される。図3(B)に示すように、平面Fa~Fdにより、下内側領域Sibは、8個の内側参照領域Sib1~Sib8に分割される。図示は省略するが、上外側領域Souと上内側領域Siuも、同様に、平面Fa~Fdにより、それぞれ、8個の参照領域に分割される。これによって、合計で32個の参照領域が注目点PTiに対して設定される。
【0026】
以上の説明から解るように、32個の参照領域は、下内側領域Sibに配置される内側参照領域Sib1~Sib8と、その外側に位置する下外側領域Sobに配置される外側参照領域Sob1~Sob8と、を含む。8個の外側参照領域Sob1~Sob8は、互いに周方向の位置が異なっており、8個の内側参照領域Sib1~Sib8は、互いに周方向の位置が異なっている。
【0027】
S4では、各参照領域の領域特徴量が算出される。すなわち、図3(C)に示すように、32個の参照領域のそれぞれの領域特徴量HG1~HG32が算出される。1つの領域特徴量は、対応する参照領域内に含まれる複数個の点PTを、各点PTの法線ベクトルと注目点PTiの法線ベクトルvn(座標軸Zl)との角度θに応じて、L個のビンに分類して得られるヒストグラムデータである。本実施例では、1つの領域特徴量のビン数Lは、11である。各点PTの法線ベクトルは、上述した注目点PTiの法線ベクトルvn(座標軸Zl)を決定する処理と同様の主成分分析を、各点PTについて実行することによって決定される。角度θは、各点PTの法線ベクトルと、注目点PTiの法線ベクトルvnと、の内積を算出することによって求められる。角度θは、0~180度の値を取る。1つの領域特徴量は、11個の各ビンに分類された点数を示す11次元のベクトルで表される。このために、32個の参照領域と一対一で対応する32個の領域特徴量の全体は、(32×11)次元、すなわち、352次元のベクトルである。この352次元のベクトルを正規化したベクトルFVが1つの注目点PTiの局所的特徴量である。
【0028】
A3.ランドマーク
図4は、第1実施例のランドマーク300の説明図である。図4(A)には、ランドマーク300を+Zm方向側から-Zm方向に向かって見た図が示されている。図4(C)、(D)には、ランドマーク300の斜視図が示されている。
【0029】
ランドマーク300は、三次元センサ110を用いて測定される。そして、該測定によって得られる点群を用いて、点群の座標系(後述するシーン座標系)におけるランドマーク300の位置および姿勢が特定される。このために、ランドマーク300の形状は、点群の座標系におけるランドマーク300の位置および姿勢が精度良く、確実に特定されるように設計されている。ランドマーク300の表面は、図4にてハッチングで示す特定面FFを含む。特定面FFは、三次元センサ110によって測定される際に測定対象とされるべき面である。ランドマーク300の表面は、特定面FFとは異なる面として、側面SFと裏面BFとを含んでいる。
【0030】
ランドマーク300の特定面FFは、全体として凸状の形状を有している。凸状の面は、凹状の面と比較して、三次元センサ110を用いて測定される際に、三次元センサ110から見て死角になる部分が生じにくい。
【0031】
ランドマーク300の特定面FFは、鋭角を為す部分を含んでいない。例えば、円錐状の内側部310を、代表点TPを通り、座標軸Zmを含む平面で切断した断面において円錐面が為す角度θm(図4(C))は、鈍角である。また、特定面FFの他の部分も、局所的に鋭角を為す部分を含んでいない。ここで、鋭角を為す部分を含まないことは、本明細書では、特定面FF上の任意の位置における最大法線角度が90度以下であることである、と定義する。例えば、特定面FF上の一の位置、例えば、図4(C)の位置Pxにおける最大法線角度は、特定面FFのうち一の位置Pxから所定距離rx内の局所領域CAに位置する任意の2点の法線がなす角度の最大値である。所定距離rxは、例えば、1mmである。変形例では、所定距離rxは、ランドマーク300の最大幅の所定の割合(例えば、0.5%~数%)の長さであっても良い。最大幅は、ランドマーク300のあらゆる方向の長さのうち、最長の長さである。仮に特定面FFが鋭角を為す部分を含む場合には、三次元センサ110を用いて測定される際に、三次元センサ110から見て死角になる部分が生じやすい。
【0032】
図4(A)、図4(C)、図4(D)には、互いに直交する3個の座標軸Xm、Ym、Zmが示されている。該座標軸Xm、Ym、Zmを有し、かつ、ランドマーク300の代表点TPを原点とする座標系をランドマーク座標系と呼ぶ。
【0033】
ランドマーク300は、ランドマーク座標系を局所座標系として、代表点TPの局所的特徴量が算出されることが想定されている。換言すれば、ランドマーク300の局所的特徴量は、代表点TPを注目点PTiとして、図2図3を参照して上述したように算出される。ランドマーク300の代表点TPの局所的特徴量をランドマーク特徴量とも呼ぶ。図4(A)には、ランドマーク特徴量を算出する際に設定される32個の参照領域のうち、代表点TPよりも-Zm側に設定される16個の参照領域Sib1~Sib8、Sob1~Sob8が破線で示される。ランドマーク300は、全体が16個の参照領域Sib1~Sib8、Sob1~Sob8のいずれかに含まれるサイズに設計されている。例えば、本実施例では、サポート球SPの直径(2×R1)は、3~5cmに設定されるので、ランドマーク300の最大幅は、3~5cmである。
【0034】
ランドマーク300は、内側部310と、外側部320と、を備えている。内側部310は、内側の8個の参照領域Sib1~Sib8に対応する部分である。ここで、特定の参照領域に対応する部分は、ランドマーク特徴量の算出時に設定される特定の参照領域に含まれることが想定されている部分を意味する。内側部310は、円錐形状を有している。内側部310の円錐形状の頂点は、代表点TPである。
【0035】
外側部320は、8個の外側参照領域Sob1~Sob8の少なくとも一部に対応する部分である。本実施例のランドマーク300の外側部320は、8個の外側参照領域Sob1~Sob8のうちの6個の参照領域Sob1、Sob4~Sob8に対応する部分を含み、2個の参照領域Sob2、Sob3に対応する部分を含まない。外側部320は、板状の部分である。外側部320は、表面が球面になるように湾曲している。
【0036】
ランドマーク300の特定面FFは、内側部310の表面と、外側部320の表面とを含む。特定面FFは、8個の内側参照領域Sib1~Sib8に対応する内側面Fi1~Fi8と、6個の外側参照領域Sob1、Sob4~Sob8に対応する外側面Fo1、Fo4~Fo8と、を含む。内側面Fi1~Fi8は、それぞれ、円錐面の一部分であり、外側面Fo1、Fo4~Fo8は、それぞれ、球面の一部分である。
【0037】
外側部320のうち、外側参照領域Sob6、Sob7に対応する部分の径方向の長さは、外側参照領域Sob1、Sob4、Sob5、Sob8に対応する部分の径方向の長さよりも短い。このために、特定面FFのうち、外側面Fo6、Fo7の径方向の長さは、外側面Fo1、Fo4、Fo5、Fo8の径方向の長さよりも短い。本実施例では、外側面Fo6、Fo7の径方向の長さは、外側面Fo1、Fo4、Fo5、Fo8の径方向の長さの半分である。ここで、径方向とは、代表点TPを通り、座標軸Zmと平行な直線AX(図4(C))を軸線とする円筒座標系における径方向を意味する。また、周方向と言うとき、該直線AXを軸線とする円筒座標系における周方向を意味するものとする。
【0038】
図4(B)には、上述した特定面FFの形状を16個の参照領域Sib1~Sib8に対応する部分ごとに文言で記述したコンセプト図が示されている。図4(B)のコンセプト図には、特定面FFのうち、内側面Fi1~Fi8は、それぞれ、円錐面の一部分であることが「円錐」という文言で記述されている。また、外側面Fo1、Fo4、Fo5、Fo8は、それぞれ、球面の一部分であることが「球面」という文言で記述されている。また、外側面Fo6、Fo7は球面であり、その径方向の長さは、外側面Fo1、Fo4、Fo5、Fo8の径方向の長さの半分であることが「球面(半)」という文言で記述されている。さらには、特定面FFは、外側参照領域Sob2、Sob3に対応する部分を含まないことが「無」という文言で記述されている。
【0039】
図5は、ランドマーク特徴量の説明図である。図5(A)には、ランドマーク特徴量のうち、内側の8個の参照領域Sib1~Sib2のそれぞれにおいて算出される領域特徴量HGaが示されている。すなわち、領域特徴量HGaは、円錐面の一部である内側面Fi1~Fi8の特徴を示す。円錐面上の複数個の点PTの法線のそれぞれと座標軸Zmとがなす角度は、全ての点PTにおいて等しい。このために、領域特徴量HGaは、1つのビンに全ての点PTが分類されたヒストグラムとなっている。
【0040】
図5(B)には、ランドマーク特徴量のうち、4個の外側参照領域Sob1、Sob4、Sob5、Sob8のそれぞれにおいて算出される領域特徴量HGbが示されている。すなわち、領域特徴量HGbは、球面の一部である外側面Fo1、Fo4、Fo5、Fo8の特徴を示す。球面上の複数個の点PTの法線のそれぞれと座標軸Zmとがなす角度は、点PTのZm方向の位置に応じて異なる。このために、領域特徴量HGbは、法線が取り得る角度の範囲に対応する複数個のビンに概ね均等に点PTが分類されたヒストグラムとなっている。
【0041】
図5(C)には、ランドマーク特徴量のうち、2個の外側参照領域Sob6、Sob7のそれぞれにおいて算出される領域特徴量HGcが示されている。すなわち、領域特徴量HGcは、球面の一部である外側面Fo6、Fo7の特徴を示す。球面上の複数個の点PTの法線のそれぞれと座標軸Zmとがなす角度は、点PTのZm方向の位置に応じて異なる。このために、領域特徴量HGcは、法線が取り得る角度の範囲に対応する複数個のビンに概ね均等に点PTが分類されたヒストグラムとなっている。さらに、外側面Fo6、Fo7の径方向の長さは、外側面Fo1、Fo4、Fo5、Fo8の径方向の長さよりも短いので、法線が取り得る角度の範囲が狭い。このために、領域特徴量HGcにて点PTが分類されるビンの個数は、領域特徴量HGbにて点PTが分類されるビンの個数よりも少なくなっている。
【0042】
このようなランドマーク特徴量は、例えば、ランドマーク300を示すCADデータを使用して、予め生成される(CADは、computer-aided designの略)。例えば、図4(D)に示すように、CADデータによって示されるランドマーク300の特定面FF上に複数の点PTが配置される。そして、各点PTの座標が、CADデータに従って、算出される。そして、上述したランドマーク座標系を局所座標系とし、ランドマーク300の代表点TPを注目点として、図2の処理が実行されて、ランドマーク特徴量が算出される。算出されたランドマーク特徴量を示すランドマーク特徴量データLMDは、不揮発性記憶装置230に格納される(図1)。
【0043】
特定面FFのうち、内側面Fi1~Fi8の形状を円錐面としている理由は、円錐面の頂点を代表点TPとするためである。円錐面の頂点は、周囲の環境が、他の部位とは異なる特異点である。このために、円錐面の頂点を代表点TPとしてランドマーク特徴量を算出することで、ランドマーク特徴量を、ランドマーク300の他の部位の局所的特徴量や他の物体の局所的特徴量と大きく異なるユニークな量とすることができる。これによって、後述するシーン点群PCsにおいて、ランドマーク300の位置をピンポイントで精度良く特定することができる。
【0044】
外側面Fo1、Fo4~Fo8の役割について説明する。外側面Fo1、Fo4~Fo8は、内側面Fi1~Fi8の形状(円錐面)とは異なる形状(球面)とされている。これによって、ランドマーク特徴量のユニークさを向上させることができる。これによって、ランドマーク300の周囲に対象物体OBなどの様々な物体が存在する状態であっても、これらの物体群を示すシーン点群PCsにおいて、ランドマーク300の位置を特定できる可能性を高めることができる。
【0045】
さらに、外側面Fo1、Fo4~Fo8は、シーン点群PCsにおいて特定面FF上に配置される複数個の点PTの分布を制御している。シーン点群PCsを用いて、ランドマーク300の代表点TPの局所的特徴量が算出される際には、代表点TPの局所座標系(図2(B))が、想定するランドマーク座標系(図4(A)等)と一致するように決定される必要がある。
【0046】
すなわち、局所座標系が決定される際には、上述のように、主成分解析によって、第1固有ベクトルviがランドマーク座標系の座標軸Xmの方向(Xm方向とも呼ぶ)に決定され、かつ、第2固有ベクトルviiがランドマーク座標系の座標軸Ymの正方向(Ym方向とも呼ぶ)に決定され、かつ、第3固有ベクトルviiiがランドマーク座標系の座標軸Zmの方向(Zm方向とも呼ぶ)に決定される必要がある。
【0047】
第1固有ベクトルviは、複数個の点PTの分布のバラツキが最大となる方向に決定される。複数個の点PTの分布範囲は、特定面FFが位置する範囲である。このために、特定面FFが位置するXm方向の範囲が、特定面FFが位置するYm方向の範囲よりも広くなることが好ましい。このために、本実施例では、ランドマーク300において、特定面FFが位置するXm方向の範囲を広げるために、代表点TPから見て+Xm方向に、外側面Fo1、Fo8が配置されている。そして、代表点TPから見て-Xm方向に、外側面Fo4、Fo5が配置されている。そして、ランドマーク300において、特定面FFが位置するYm方向の範囲を狭くするために、代表点TPから見て+Ym方向には、外側面Fo1、Fo8、Fo4、Fo5よりも径方向の長さが短い外側面Fo6、Fo7が配置されている。そして、代表点TPから見て-Ym方向には、外側面は配置されていない。これによって、特定面FFが位置するXm方向の範囲が、特定面FFが位置するYm方向の範囲よりも十分に広くなっている。
【0048】
換言すれば、特定面FFにおいて、径方向の長さが長い外側面Fo1、Fo8、Fo4、Fo5の周方向の位置と、径方向の長さが短い外側面Fo6、Fo7の周方向の位置とは、90度異なる。参照領域の観点から見れば、径方向の長さが長い外側面に対応する外側参照領域Sob1、Sob8、Sob4、Sob5の周方向の位置と、径方向の長さが短い外側面に対応する外側参照領域Sob6、Sob7の周方向の位置とは、90度異なる。そして、特定面FFにおいて、外側面Fo1、Fo8、Fo4、Fo5の周方向の位置と、外側面が配置されない周方向の位置とは、90度異なる。参照領域の観点から見れば、径方向の長さが長い外側面に対応する外側参照領域Sob1、Sob8、Sob4、Sob5の周方向の位置と、対応する外側面が配置されない外側参照領域Sob2、Sob3の周方向の位置とは、90度異なる。
【0049】
さらに、第2固有ベクトルviiは、第1固有ベクトルviと直交する方向のうち、複数個の点PTの分布のバラツキが最大となる方向に決定される。このために、特定面FFが位置するYm方向の範囲が、特定面FFが位置するZm方向の範囲よりも広くなることが好ましい。このために、本実施例では、特定面FFのYm方向の長さが、特定面FFのZm方向の長さより十分に長くされている。
【0050】
さらに、代表点TPの局所座標系(図2(B))が、想定するランドマーク座標系(図4(A)等)と一致するように決定されるためには、固有ベクトルvi、vii、viiiの正方向が、それぞれ、ランドマーク座標系の座標軸Xm、Ym、Zmの正方向と一致するように決定される必要がある。このためには、特定面FFの形状は、Xm方向とYm方向とZm方向とのうちの2方向について非対称である必要がある。ここで、特定方向について非対称であるとは、特定方向と垂直な対称面が存在しないことを意味する。2方向について非対称であれば良い理由は、3個の固有ベクトルvi、vii、viiのうちの2個の固有ベクトルの正負の方向が決まれば、残りの1つの固有ベクトルの正負の方向は、自動的に決まるからである。さらに言えば、特定面FFの形状は、Xm方向とYm方向とZm方向とのうちの2方向については、十分に対称性が低い必要がある。例えば、特定面FFの形状が、2方向について非対称であったとしても、該2方向のうちの少なくとも一方向についてほぼ対称に近い形状であると、固有ベクトルvi、vii、viiiの正方向が安定して同じ方向に決定されない場合があるためである。
【0051】
本実施例では、頂点TPから見て+Ym方向に、外側面Fo6、Fo7が配置され、頂点TPから見て-Ym方向に、外側面が配置されていない。これによって、特定面FFの形状のYm方向の対称性が十分に低くされている。特定面FFの形状は、Zm方向については、十分に対称性が低い形状である。このように、特定面FFの形状は、Ym方向とZm方向との2方向について、十分に対称性が低い形状になっている。
【0052】
以上の説明から解るように、特定面FFの外側面Fo1、Fo4~Fo8は、代表点TPの局所座標系(図2(B))が、想定するランドマーク座標系(図4(A)等)と一致するように決定されるように、特定面FFが位置する範囲や対称性を調整する役割を担う。
【0053】
A4.データ処理装置200の動作
図6は、第1実施例のデータ処理装置200の処理のフローチャートである。この処理は、ランドマーク300を利用して、トレイ130の座標系(トレイ座標系とも呼ぶ)と、三次元センサ110の座標系(シーン座標系とも呼ぶ)との対応関係を取得する処理である。例えば、ロボットアーム120は、トレイ座標系の座標に基づいて、トレイ130内の対象物体OBを操作できるように設定されている。このために、トレイ座標系とシーン座標系との対応関係が解れば、三次元センサ110を用いて特定される対象物体OBの位置や姿勢(シーン座標系における位置や姿勢)を、トレイ座標系における位置や姿勢に変換できるので、ロボットアーム120は、対象物体OBの把持等を行うことができる。図6の処理は、例えば、ランドマーク300は、トレイ座標系とランドマーク座標系とが一致するように、トレイ130に配置された状態で行われる。ランドマーク300は、特定面FFが三次元センサ110によって測定されるように、特定面FFを三次元センサ110に向けて配置される。
【0054】
S10では、データ処理装置200のプロセッサ210は、ランドマーク特徴量を取得する。すなわち、プロセッサ210は、不揮発性記憶装置230からランドマーク特徴量データLMDを取得する。
【0055】
S20では、プロセッサ210は、シーン点群データPDsを取得する。本実施例では、プロセッサ210は、三次元センサ110(図1)に、ランドマーク300を含む物体群を測定させることによって、三次元センサ110からシーン点群データPDsを取得する。図7は、シーン点群データPDsによって示されるシーン点群PCsの例を示す斜視図である。シーン点群PCsは、三次元センサ110の測定範囲内の物体の表面のうち、三次元センサ110から視認可能な表面上の複数の点PTである。シーン点群データPDsは、これらの複数の点PTのそれぞれの3次元座標(xs、ys、zs)を示す座標データである。図7は、シーン点群PCsの一部を示している。図中には、トレイ130の一部と、トレイ130上の2個の対象物体OBと、トレイ130上のランドマーク300と、が示されている。図中では、個々の点PTは、ランドマーク300近傍の拡大図にのみ示され、全体図では、複数の点PTによって表される表面がハッチングで示されている。
【0056】
S30では、プロセッサ210は、シーン点群データPDsに対して、前処理を実行する。前処理では、後述するマッチング処理(S60)にて利用しやすいように、シーン点群PCsを適宜に間引く処理である。
【0057】
S40では、プロセッサ210は、シーン点群PCsの中から、複数個のシーン対象点を選択する。シーン対象点は、シーン点群PCsの複数個の点PTのうち、局所的特徴量の算出対象とされる点である。例えば、シーン点群PCsの複数個の点PTのうち、10~50%程度の点がシーン対象点として選択される。シーン点群PCsの複数個の点PTのうちの一部だけを局所的特徴量の算出対象とすることで、計算時間を短縮することができる。複数個のシーン対象点は、例えば、測定される物体群の表面の全体に分散するように、一部分に過度に偏らないように選択される。
【0058】
S50では、プロセッサ210は、複数個のシーン対象点の局所的特徴量をそれぞれ算出する。局所的特徴量(本実施例ではSHOT特徴量)は、各シーン対象点を注目点PTiとして、図2、3にて説明した算出方法に従って算出される。
【0059】
S60では、プロセッサ210は、局所的特徴量を用いたマッチング処理を実行して、シーン座標系におけるランドマーク300の位置と姿勢を特定する。具体的には、プロセッサ210は、複数個のシーン対象点のそれぞれの評価値EVを算出する。評価値EVは、シーン対象点の局所的特徴量とランドマーク特徴量との差異を評価する値である。評価値EVには、例えば、シーン対象点の局所的特徴量と、ランドマーク特徴量と、の間のユークリッド距離が用いられる。シーン対象点の局所的特徴量とランドマーク特徴量とは、いずれも同次元のベクトル(例えば、352次元のベクトル)であるので、ユークリッド距離を算出できる。プロセッサ210は、複数個のシーン対象点のうち、最良の評価値EVを有する点、本実施例では、最小の評価値EV(ユークリッド距離)を有する点を、ランドマーク対応点LPとして特定する。ランドマーク対応点LPは、シーン点群PCsによって示される物体群に含まれるランドマーク300の代表点TPに最も近いシーン対象点である。図7に示すように、ランドマーク300の内側部310の長点に位置するシーン対象点が、ランドマーク対応点LPとして特定される。ランドマーク対応点LPが特定されると、プロセッサ210は、ランドマーク対応点LPの局所的特徴量を算出する際にシーン座標系において定義されたランドマーク対応点LPの局所座標系を取得する。ランドマーク対応点LPの局所座標系(原点LPと3つの軸線)は、シーン座標系においてランドマーク300の位置と姿勢とを示すランドマーク座標系と言うことができる。
【0060】
S70では、プロセッサ210は、シーン座標系と、ランドマーク座標系と、の間の対応関係を示す変換行列Mslを算出する。本実施例では、ランドマーク座標系とトレイ座標系とが一致するようにランドマーク300が配置されるので、変換行列Mslは、シーン座標系とトレイ座標系との対応関係を示すとも言うことができる。
【0061】
図8は、変換行列Mslの例を示す図である。この変換行列Mslは、ランドマーク座標系の座標を、シーン座標系の座標に変換する行列である。変換行列Mslは、回転と並進移動を含む座標変換を表現する4行4列の同次変換行列である。図8の変換行列Mslの第1列の4個の成分は、シーン座標系においてランドマーク座標系のX軸方向を定義する単位ベクトルvXの3個の成分(a、b、c)とゼロとで構成される。第2列の4個の成分は、シーン座標系においてランドマーク座標系のY軸方向を定義する単位ベクトルvYの3個の成分(d、e、f)とゼロとで構成される。第3列の4個の成分は、シーン座標系においてランドマーク座標系のZ軸方向を定義する単位ベクトルvXの3個の成分(g、h、i)とゼロとで構成される。第4列の4個の成分は、シーン座標系においてランドマーク座標系の原点POを示す座標(A、B、C)と1とで構成される。
【0062】
以上説明した第1実施例によれば、データ処理装置200(プロセッサ210)は、ランドマーク300の特定面FFを示す複数個の点PTを用いて算出されるランドマーク特徴量を取得する(図6のS10)。データ処理装置200は、ランドマーク300の特定面FFを含む物体群の表面を示す複数個の点PTを含むシーン点群PCsを示すシーン点群データPDsを取得する(図6のS20)。データ処理装置200は、シーン点群PCsを用いて物体群の局所的特徴量を算出する(図6のS50)。データ処理装置200は、物体群の局所的特徴量と、ランドマーク特徴量と、を用いて、シーン座標系におけるランドマーク300の位置と姿勢を示すランドマーク座標系を特定する(図6のS60)。データ処理装置200は、特定されるランドマーク300の位置と姿勢を用いて、すなわち、特定されたランドマーク座標系を用いて、シーン座標系に関する特定処理を実行する(図6のS70)。本実施例の特定処理は、シーン座標系と、ランドマーク座標系(例えば、トレイ座標系と一致)と、の対応関係を示す変換行列Mslを算出する処理である。
【0063】
用いられる局所的特徴量は、注目点PTiに対して設定される32個の参照領域(例えば、参照領域Sob1~Sob8、Sib1~Sib8)のそれぞれについて算出される領域特徴量HG1~HG32(図3(C))を含む。領域特徴量HG1~HG32は、参照領域内に位置する複数個の点PTを用いて算出される量である。ランドマーク300の特定面FFは、内側参照領域Sib1~Sib8に対応する内側面Fi1~Fi8と、外側参照領域Sob1、Sob4~Sob8に対応する外側面Fo1、Fo4~Fo8と、を含む。内側面Fi1~Fi8の形状と、外側面Fo1、Fo4~Fo8の形状と、は異なっている。本実施例では、内側面Fi1~Fi8の形状は、円錐面の一部を構成する形状であり、外側面Fo1、Fo4~Fo8の形状は、球面の一部を構成する形状である。
【0064】
このように、内側面Fi1~Fi8の形状と、外側面Fo1、Fo4~Fo8の形状と、は異なっているので、ランドマーク特徴量は、内側面Fi1~Fi8に対応する内側参照領域の領域特徴量(例えば、図5(A)の領域特徴量HGa)と、外側面Fo1~Fo8に対応する外側参照領域の領域特徴量(例えば、図5(B)、(C)の領域特徴量HGb、HGc)とが互いに異なる特徴量になる。この結果、ランドマーク300を含む物体群の局所的特徴量と、ランドマーク特徴量と、に基づいて、対象点群の座標系におけるランドマークの位置を特定する際に、例えば、他の物体(対象物体OBやトレイ130)をランドマーク300であると認識する誤認識を抑制して、ランドマーク300の位置や姿勢を精度良く特定できる。したがって、特定されるランドマーク300の位置と姿勢を用いて、シーン座標系に関する特定処理を適切に実行できる。
【0065】
例えば、本実施例では、ランドマーク特徴量は、第1参照領域の領域特徴量HGaと第2参照領域の領域特徴量HGbと明らかに異なる特徴量を示す。このために、ランドマーク特徴量が、ランドマーク300の代表点TPとは異なる点、例えば、対象物体OB上の点において算出される局所的特徴量とは明確に異なる可能性が高くなる。このために、上述した誤認識を抑制することができる。
【0066】
さらに、本実施例では、上述のように、特定面FFは鋭角を為す部分を含んでいない。すなわち、特定面FF上の任意の位置における最大法線角度は、90度以下である。仮に、最大法線角度が90度を超える位置を含む部分、すなわち、鋭角を為す部分が存在すると、特定面FFが三次元センサ110によって測定される際に、測定の方向によって特定面FFに死角になる部分が生じやすい。この場合には、特定面FFを示す適切なシーン点群PCsが取得できない可能性がある。本実施例では、このような不具合を抑制することができる。
【0067】
さらに、本実施例では、特定面FFは、頂点TP(代表点TP)を含む錐面(例えば、内側面Fi1~Fi8)と、錐面とは異なる形状を有する他面(例えば、外側面Fo1、Fo4~Fo8)と、を含む。この結果、特定面FFは、特徴的な点である錐面の頂点TPを含むので、データ処理装置200は、頂点TPの局所的特徴量であるランドマーク特徴量に基づいて、シーン点群PCsに存在するランドマーク300の頂点(ランドマーク対応点LP(図7))を特定することで、ランドマークの位置を精度良く特定できる。
【0068】
さらに、本実施例では、錐面は、錐面の頂点TPを注目点PTiとする場合に下内側領域Sibに対応し、他面は、下外側領域Sobに対応し、錐面の軸線AXを中心軸とする円筒座標系における径方向の外側に位置する外側面Fo1、Fo4~Fo8である。この結果、例えば、錐面によって上述のようにランドマークの位置を精度良く特定できる構成としつつ、外側面によってランドマーク300の特定面FFに求められる機能を実現しやすい。例えば、外側面の形状によって、錐面の頂点TPを注目点PTiとする場合に算出される局所的特徴量を、他の物体上の点を注目点PTiとする場合に算出される局所的特徴量と大きく異なるように、構成しやすい。例えば、本実施例では、下外側領域Sobに配置される8個の外側参照領域Sob1~Sob8のうちの一部の参照領域Sob1、Sob4~Sob8にのみ外側面を設け、他の一部の参照領域Sob2、Sob3には外側面を設けない構成とし得る。また、後述する第4、第5実施例のように、8個の外側参照領域Sob1~Sob8のうち、一部の参照領域に配置される外側面と、他の参照領域に配置される外側面と、を互いに異なる形状とすることも容易である。この結果、ランドマーク300の特定面FFの形状を、類似する形状を有する物体が少ないユニークな形状に構成しやすい。さらには、具体的には、さらに後述するように、特定面FFを三次元センサ110によって測定して得られる複数個の点PTの分布の調整や特定面FFの対称性の調整も、外側面の配置や形状を調整することで容易に行うことができる。
【0069】
より具体的には、本実施例の外側面は、外側面Fo1、Fo4、Fo5、Fo8と、外側面Fo1、Fo4、Fo5、Fo8よりも表面積が小さな外側面Fo6、Fo7と、を備えている(図4)。さらに、具体的には、外側面Fo1、Fo4、Fo5、Fo8と、外側面Fo6、Fo7とは、径方向の長さが互いに異なっている(図4)。これによって、複数個の点PTの分布の調整や特定面FFの対称性の調整が実現されている。
【0070】
外側面Fo1、Fo4、Fo5、Fo8の周方向の位置と、外側面Fo6、Fo7の周方向の位置とは、90度異なっている(図4)。参照領域の観点から言えば、外側面Fo1、Fo4、Fo5、Fo8に対応する外側参照領域Sob1、Sob4、Sob5、Sob8の周方向の位置と、外側面Fo6、Fo7に対応する外側参照領域Sob6、Sob7の周方向の位置とは、90度異なっている(図4)。この結果、特定面FFを三次元センサ110によって測定して得られる複数個の点PTが分布する範囲を、例えば、図4のXm方向とYm方向との間で異ならせることができる。これによって、上述したように、複数個の点PTを用いて決定される代表点TPの局所座標系がランドマーク座標系と一致するように決定される確率を高めることができる。
【0071】
さらに、本実施例の外側面は、外側参照領域Sob1、Sob4~Sob8に対応する外側面Fo1、Fo4~Fo8を含み、外側参照領域Sob2、Sob3に対応する外側面を含まない。これによって、特定面FFの形状を、類似する形状を有する物体が少ないユニークな形状に構成すること、および、FFを三次元センサ110によって測定して得られる複数個の点PTの分布の調整や特定面FFの対称性の調整を実現できる。
【0072】
具体的には、外側面Fo1、Fo4、Fo5、Fo8の周方向の位置と、外側面が配置されない領域の周方向の位置とは、90度異なっている(図4)。参照領域の観点から言えば、外側面Fo1、Fo4、Fo5、Fo8に対応する外側参照領域Sob1、Sob4、Sob5、Sob8の周方向の位置と、対応する外側面が無い外側参照領域Sob2、Sob3の周方向の位置とは、90度異なっている(図4)。この結果、特定面FFを三次元センサ110によって測定して得られる複数個の点PTが分布する範囲を、例えば、図4のXm方向とYm方向との間で異ならせることができる。これによって、上述したように、複数個の点PTを用いて決定される代表点TPの局所座標系がランドマーク座標系と一致するように決定される確率を高めることができる。
【0073】
さらに、外側面Fo6、Fo7の周方向の位置と、外側面が配置されない領域の周方向の位置とは、180度異なっている(図4)。参照領域の観点から言えば、外側面Fo6、Fo7に対応する外側参照領域Sob6、Sob7の周方向の位置と、対応する外側面が無い外側参照領域Sob2、Sob3の周方向の位置とは、180度異なっている(図4)。この結果、例えば、図4のYm方向の対称性を低下させることができる。これによって、上述したように、複数個の点PTを用いて決定される代表点TPの局所座標系がランドマーク座標系と一致するように決定される確率を高めることができる。
【0074】
さらに、上記実施例では、ランドマーク300のうち、外側面Fo1、Fo4~Fo8が形成された部材である外側部320は、板状の部材である。この結果、三次元センサ110がランドマーク300を測定する方向によって、取得される点群が異なることを抑制できる。例えば、取得される点群に含まれる複数個の点PTは、特定面FFを示す複数個の点PTのみであることが好ましい。実際には、三次元センサ110による測定方向によって、ランドマーク300の側面SF(図4)の一部が測定され得るので、取得される点群を、特定面FFを示す点のみとすることは困難である場合が多い。本実施例では、外側部320を板状の部材とすることで、側面SFの面積を小さくすることができるので、側面SFの影響を小さくできる。また、板状の部材の一方の特定面FFが三次元センサ110によって測定対象になる場合には、板状の部材の裏側の面は、三次元センサ110によって測定されない。このために、ランドマーク300の特定面FFとは異なる表面が三次元センサ110によって測定対象となることを抑制できる。この結果、ランドマーク300を三次元センサ110によって測定する方向によって、シーン座標系におけるランドマーク300の位置や姿勢の特定精度が低下することを抑制できる。
【0075】
さらに、本実施例では、特定面FFのうち、1つの参照領域に対応する部分は、円錐の一部や球面などのシンプルで単純な形状のみを含む。この結果、ランドマーク特徴量の各領域特徴量HGa~HGb(図5)は、シンプルで、かつ、特徴的なヒストグラムになる。一般的な物体、例えば、対象物体OB上の点の局所的特徴量が算出される際に、設定される1つの内側参照領域には、円錐の一部のみが位置し、かつ、隣接する1つの外側領域には、球面の一部のみが位置することは、極めて稀である。ランドマーク300は、設定される内側参照領域や外側参照領域のサイズ(例えば、サポート球SPの半径R1や内球SPiの半径R2によって定まる)を考慮して、特定面FFの形状や寸法が決定されることで、1つの参照領域に対応する部分は、円錐の一部や球面などのシンプルで単純な形状のみを含むように構成されている。これによって、ランドマーク特徴量を、他の物体上の点において算出され得る局所的特徴量と明確に差別化できる。したがって、他の物体(対象物体OBやトレイ130)をランドマーク300であると認識する誤認識を効果的に抑制できる。
【0076】
さらに、上記実施例では、使用される局所的特徴量は、SHOT(Signature of Histograms of OrienTations)特徴量である(図2図3)。この結果、SHOT特徴量を用いて、ユニークなランドマーク特徴量を生成できるので、誤認識を抑制して、シーン座標系におけるランドマーク300の位置や姿勢を精度良く特定できる。
【0077】
さらに、上記実施例では、特定されたランドマーク300の位置や姿勢を用いて行われる特定処理は、シーン座標系とトレイ座標系との対応関係を示す変換行列Mslを算出する処理である。すなわち、本実施例の特定処理は、シーン座標系におけるランドマークの位置と姿勢と、他の座標系(本実施例では、トレイ座標系)におけるランドマークの位置と姿勢と、を用いて、シーン座標系とトレイ座標系との対応関係を特定する処理である。この結果、例えば、トレイ座標系に基づいて制御されるロボットアーム120を適切に動作させることができる。
【0078】
以上の説明から解るように、本実施例の内側参照領域Sib1~Sib8は、第1領域の例であり、外側参照領域Sob1~Sob8は、第2領域の例である。
【0079】
B.第2実施例
第2実施例では、ランドマーク300が配置される位置と、データ処理装置200が実施する処理と、が第1実施例とは異なる。図9は、第2実施例の装置構成の説明図である。図10は、第2実施例のデータ処理装置200の処理のフローチャートである。
【0080】
第2実施例では、図9に示すように、ランドマーク300は、ロボットアーム120の所定の位置、例えば、ロボットアーム120の指126の近傍の所定の位置に、治具128を介して固定されている。
【0081】
ロボットアーム120の指126の基準位置RPtは、例えば、対象物体OBを把持する際に、指126を操作するための基準として用いられる位置である。ロボットアーム120の指126の基準位置RPt(ツール基準位置RPtとも呼ぶ)と、ランドマーク300の代表点TPと、の位置関係は、ロボットアーム120のリンク機構125を動作させても変動しない。
【0082】
データ処理装置200は、ロボットアーム120の固定された基準位置RPr(ロボット基準位置RPrとも呼ぶ)を原点とするロボット座標系におけるツール基準位置RPtの座標(xT、yT、zT)を認識している。データ処理装置200は、ロボットアーム120のリンク機構125を制御してツール基準位置RPtの座標を移動させた場合でも、リンク機構125の制御量に基づいて常にツール基準位置RPtの座標を認識可能である。
【0083】
ツール基準位置RPtとランドマーク300の代表点TPとの位置関係は、固定されているので、データ処理装置200は、ツール基準位置RPtの座標に基づいて、ロボット座標系におけるランドマーク300の代表点TPの座標(xL、yL、zL)を認識可能である。
【0084】
図10は、第2実施例のデータ処理装置200の処理のフローチャートである。図11は、第2実施例のデータ処理装置200の処理の説明図である。この処理は、ランドマーク300を利用して、ロボット座標系とシーン座標系との対応関係を取得する処理である。S100では、データ処理装置200のプロセッサ210は、図6のS10と同様に、不揮発性記憶装置230からランドマーク特徴量データLMDを取得する。
【0085】
S105では、プロセッサ210は、ロボットアーム120を制御して、ランドマーク300を所定の測定位置に移動させる。所定の測定位置は、図9に示すように、ランドマーク300の特定面FFを三次元センサ110に向けた位置である。
【0086】
S107では、プロセッサ210は、所定の測定位置、すなわち、現時点でのランドマーク300の位置を取得する。すなわち、ロボット座標系におけるランドマーク300の代表点TPの座標が取得される。ロボット座標系における代表点TPの座標は、現在の所定の測定位置にランドマーク300を移動させた後のリンク機構125の位置情報に基づいて、認識可能である。
【0087】
S110では、プロセッサ210は、図6のS20と同様に、三次元センサ110(図1)に、ランドマーク300を含む物体群を測定させることによって、三次元センサ110からシーン点群データPDsを取得する。この場合の物体群は、例えば、ランドマーク300と、ロボットアーム120の一部(例えば、指126やリンク124)を含む。
【0088】
S115では、プロセッサ210は、全ての測定位置にて、三次元センサ110による測定を行って、シーン点群データPDsを取得したか否かを判断する。未測定の測定位置がある場合には(S115:NO)、プロセッサ210は、S105に戻る。全ての測定位置にて測定を行った場合には(S115:YES)、プロセッサ210は、S120に処理を進める。
【0089】
例えば、nカ所(nは、3以上の整数)の異なる測定位置にて、順次に測定が行なわれる。nカ所の測定位置は、例えば、三次元センサ110の測定可能範囲内で、測定方向110xと概ね垂直にランドマーク300を適宜に移動させた位置である。本実施例では、4カ所の測定位置にて、測定が行われる。
【0090】
S120に進んだ時点で、nカ所の測定位置で測定されたn個のシーン点群データPDsが取得されている。S120では、プロセッサ210は、n個のシーン点群データPDsから1つの処理対称のシーン点群データPDsを選択する。
【0091】
S125では、プロセッサ210は、処理対象のシーン点群データPDsを用いて、図6のS30~50の処理を実行する。S126では、図6のS60と同様に、局所的特徴量を用いたマッチング処理を実行する。ただし、本実施例では、ランドマーク300の姿勢を特定する必要がないため、シーン座標系におけるランドマーク300の位置のみを特定し、姿勢の特定は行わない。すなわち、シーン座標系におけるランドマーク300の代表点TPの座標が特定される。
【0092】
S135では、プロセッサ210は、n個のシーン点群データPDsの全てを処理したか否かを判断する。未処理のシーン点群データPDsがある場合には(S135:NO)、プロセッサ210は、S120に戻る。全てのシーン点群データPDsを処理した場合には(S135:YES)、プロセッサ210は、S145に処理を進める。
【0093】
S145の時点で、n個の測定位置のそれぞれについて、シーン座標系におけるランドマーク300の位置(代表点TPの座標)と、ロボット座標系におけるランドマーク300の位置(代表点TPの座標)と、が取得されている。
【0094】
S145では、プロセッサ210は、n個のランドマーク300の位置から3個の注目位置を選択する。n個の位置から3個の注目位置を選択する組み合わせの数は、種類であるが、種類の組み合わせが順次に選択される。
【0095】
S150では、プロセッサ210は、3個の注目位置を用いて測定されたランドマーク300の座標系(以下、測定座標系とも呼ぶ)を定義する。図11(A)には、測定座標系の説明図が示されている。図11(A)には、3個の注目位置P、Q、Rと、3個の注目位置P、Q、Rを用いて定義される三次元座標系の3つの軸XL、YL、ZLを規定する3つの単位ベクトルvXL、vYL、vZLが示されている。例えば、軸XLを規定する単位ベクトルvXLは、ベクトル(vPQ+vPR)を正規化したベクトルに決定される。ベクトル(vPQ+vPR)は、位置Pと位置Qとを結ぶベクトルvPQと、位置Pと位置Rとを結ぶベクトルvPRと、の和である。軸ZLを規定する単位ベクトルvZLは、ベクトルvPQとベクトルvPRとを含む平面と垂直な単位ベクトルに決定される。軸YLを規定する単位ベクトルvYLは、単位ベクトルvXLと単位ベクトルvYLとの外積である。測定座標系の原点OPは、例えば、位置Pに決定される。
【0096】
シーン座標系における3個の注目位置を用いて、シーン座標系における測定座標系が定義され、ロボット座標系における3個の注目位置を用いて、ロボット座標系における測定座標系が定義される。シーン座標系における測定座標系は、原点OPsと、3つの単位ベクトルvXLs、vYLs、vZLsによって定義される。ロボット座標系における測定座標系は、原点OPrと、3つの単位ベクトルvXLr、vYLr、vZLrによって定義される。
【0097】
S155では、定義された測定座標系を介して、ロボット座標系とシーン座標系との対応関係を示す変換行列Mrsを算出する。変換行列Mrsは、ロボット座標系の座標をシーン座標系の座標に変換する同次変換行列である。同次変換行列は、回転と並進移動を含む座標変換を表現する4行4列の行列である。図11(B)に示すように、変換行列Mrsは、ロボット座標系と測定座標系との対応関係を示す第2変換行列Mrpと、シーン座標系と測定座標系との対応関係を示す第1変換行列Mspの逆行列と、の積である。
【0098】
図11(C)に示すように、第1変換行列Mspは、シーン座標系における測定座標系を定義する値を要素とする同次変換行列である。具体的には、第1列の4個の成分は、単位ベクトルvXLsの3個の成分(rs00、rs10、rs20)とゼロとで構成される。第2列の4個の成分は、単位ベクトルvYLsの3個の成分(rs01、rs11、rs21)とゼロとで構成される。第3列の4個の成分は、単位ベクトルvZLsの3個の成分(rs02、rs12、rs22)とゼロとで構成される。第4列の4個の成分は、原点POsの座標(tsx、tsy、tsz)と1とで構成される。
【0099】
図11(D)に示すように、第2変換行列Mrpは、ロボット座標系における測定座標系を定義する値を要素とする同次変換行列である。具体的には、第1列の4個の成分は、単位ベクトルvXLrの3個の成分(rr00、rr10、rr20)とゼロとで構成される。第2列の4個の成分は、単位ベクトルvYLrの3個の成分(rr01、rr11、rr21)とゼロとで構成される。第3列の4個の成分は、単位ベクトルvZLrの3個の成分(rr02、rr12、rr22)とゼロとで構成される。第4列の4個の成分は、原点POrの座標(trx、try、trz)と1とで構成される。
【0100】
S160では、プロセッサ210は、n個のランドマーク300の位置から3個の注目位置を選択する全ての組み合わせを処理したか否かを判断する。未処理の組み合わせがある場合には(S160:NO)、プロセッサ210は、S145に戻る。全ての組み合わせを処理した場合には(S160:YES)、プロセッサ210は、S165に処理を進める。
【0101】
S165では、プロセッサ210は、各組み合わせについて算出された変換行列Mrsを用いて、最終的な1つの変換行列Mrsfを算出する。例えば、変換行列Mrsfは、種類の変換行列Mrsを統計的に処理することで算出される。例えば、プロセッサ210は、種類の変換行列Mrsのうちの並進移動ベクトル(第4列)の平均ベクトルを算出することで、平均処理された並進移動ベクトルを決定する。プロセッサ210は、種類の変換行列Mrsのうちの回転行列を、回転ベクトルやクオータニオンなどの近似的に平均処理可能な表現形式に変換する。プロセッサ210は、平均処理可能な表現形式にて、種類の回転成分の平均値を算出し、該平均値を回転行列に戻すことで、平均処理された回転行列を決定する。プロセッサ210は、平均処理された回転行列と、並進移動ベクトルと、を含む変換行列を、最終的な変換行列Mrsfとして算出する。
【0102】
以上説明した第2実施例によれば、ランドマーク300を用いて、ロボット座標系と、シーン座標系(三次元センサ110の座標系)との間の対応関係を示す変換行列Mrsfを算出できる。このために、例えば、データ処理装置200は、三次元センサ110を用いてシーン座標系において対象物体OBの位置や姿勢を把握すれば、ロボット座標系においても対象物体OBの位置や姿勢を把握できる。したがって、データ処理装置200は、ロボットアーム120を制御して、対象物体OBの把持等を適切に実行できる。
【0103】
また、本実施例では、n個のランドマーク300の位置が必要であるが、姿勢は必要ない。この結果、ランドマーク300の位置が精度良く特定できれば、シーン座標系とロボット座標系との対応関係を精度良く特定できる。
【0104】
C.第3実施例
第3実施例では、三次元センサ110が配置される位置と、データ処理装置200が実施する処理と、が第1実施例とは異なる。図12は、第3実施例の説明図である。図13は、第3実施例のデータ処理装置200の処理のフローチャートである。
【0105】
図12(A)には、第3実施例の装置構成が示されている。第3実施例では、図12(A)に示すように、三次元センサ110は、ロボットアーム120の所定の位置、例えば、ロボットアーム120の指126の近傍の所定の位置に、治具129を介して固定されている。ランドマーク300は、ロボットアーム120に固定された三次元センサ110にて測定可能な範囲内に配置されている。図12(A)の例では、第1実施例と同様に、ランドマーク300は、トレイ130上に配置されている。
【0106】
第2実施例にて説明したように、ロボット座標系とシーン座標系との間の対応関係を示す変換行列Mrsが算出できれば、データ処理装置200は、ロボットアーム120を制御して、対象物体OBの把持等を適切に実行できる。ここで、データ処理装置200は、ロボット基準位置RPrを原点とするロボット座標系と、ツール基準位置RPtを原点とするツール座標系と、の対応関係を認識している。すなわち、ロボット座標系とツール座標系との対応関係を示す変換行列Mrtは、既知である。なお、ロボットアーム120のリンク機構125の動作に応じてロボット座標系に対してツール座標系の位置や姿勢は変動するので、変換行列Mrtは、リンク機構125の動作に応じて変動する。ツール座標系とシーン座標系との対応関係は、ロボットアーム120のリンク機構125を動作させても変動しない。
【0107】
図12(B)に示すように、ロボット座標系とシーン座標系との間の対応関係を示す変換行列Mrsは、ロボット座標系とツール座標系との対応関係を示す変換行列Mrt(既知)と、ツール座標系とシーン座標系との対応関係を示す変換行列Mtsと、の積である。しがって、変換行列Mts(固定値)が算出できれば、ロボット座標系とシーン座標系との間の対応関係を示す変換行列Mrsは、リンク機構125を動作に応じて算出可能である。このために、本実施例のデータ処理装置200の処理は、ツール座標系とシーン座標系との対応関係を示す変換行列Mtsを算出する。
【0108】
図13は、第3実施例のデータ処理装置200の処理のフローチャートである。この処理は、ランドマーク300を利用して、ロボット座標系とシーン座標系との対応関係を取得する処理である。図13では、図10と同一の処理には、図10と同一の符号が付され、図10と異なる処理には、符号の末尾に「B」が付されている。図13の処理を図10と異なる部分を中心に説明する。
【0109】
S110にてランドマーク特徴量データLMDを取得すると、S103Bでは、プロセッサ210は、ロボット座標系におけるランドマーク300の位置、すなわち、ロボット座標系におけるランドマーク300の代表点TPの座標を取得する。ランドマーク300の代表点TPの座標は、例えば、ダイレクトティーチングによって取得される。具体的には、作業者がロボットアーム120を手で動かして、ロボットアーム120のツール基準位置RPt、もしくは、ツール基準位置RPtに対する相対的な位置が認識可能な他の位置(例えば、指126の先端)を、ランドマーク300の代表点TPに接触させる。プロセッサ210は、その状態で、変換行列Mrtに基づいて、ランドマーク300の代表点TPと接触している位置のロボット座標系における座標を算出する。算出された座標がロボット座標系におけるランドマーク300の位置として取得される。
【0110】
S105Bでは、プロセッサ210は、ロボットアーム120を制御して、三次元センサ110を所定の測定位置に移動させる。所定の測定位置は、図12(A)に示すように、ランドマーク300の特定面FFを測定可能な位置である。
【0111】
S107Bでは、プロセッサ210は、所定の測定位置にて、ツール座標系におけるランドマーク300の位置、すなわち、現時点のツール座標系におけるランドマーク300の代表点TPの座標を取得する。ロボット座標系におけるランドマーク300の代表点TPの座標は、S103Bにて取得済みである。また、ロボット座標系とツール座標系との対応関係を示す変換行列Mrtは、既知である。このために、プロセッサ210は、ロボット座標系におけるランドマーク300の代表点TPの座標を、所定の測定位置における変換行列Mrtの逆行列を用いてツール座標系における座標に変換する。これによって、現時点のツール座標系におけるランドマーク300の代表点TPの座標が算出される。
【0112】
S110では、プロセッサ210は、図10のS110と同様に、三次元センサ110(図1)に、ランドマーク300を含む物体群を測定させることによって、三次元センサ110からシーン点群データPDsを取得する。この場合の物体群は、例えば、第1実施例と同様に、ランドマーク300と、トレイ130と、対象物体OBと、を含み得る。
【0113】
S115では、プロセッサ210は、全ての測定位置にて、三次元センサ110による測定を行って、シーン点群データPDsを取得したか否かを判断する。未測定の測定位置がある場合には(S115:NO)、プロセッサ210は、S105に戻る。全ての測定位置にて測定を行った場合には(S115:YES)、プロセッサ210は、S120に処理を進める。
【0114】
例えば、第2実施例と同様に、nカ所(nは、3以上の整数)の測定位置にて、順次に測定が行なわれる。nカ所の測定位置は、例えば、三次元センサ110の測定可能範囲内にランドマーク300が含まれるように、かつ、三次元センサ110の姿勢が変化しないように、三次元センサ110を適宜に移動させた位置である。本実施例では、4カ所の測定位置にて、測定が行われる。
【0115】
S120に進んだ時点で、第2実施例と同様に、nカ所の測定位置で測定されたn個のシーン点群データPDsが取得されている。図13のS120~S135は、図10のS120~S135と同一である。
【0116】
S145Bに進んだ時点で、n個の測定位置のそれぞれについて、シーン座標系におけるランドマーク300の位置(代表点TPの座標)と、ツール座標系におけるランドマーク300の位置と、が取得されている。
【0117】
S145Bでは、プロセッサ210は、n個のランドマーク300の位置から3個の注目位置を選択する。n個の位置から3個の注目位置を選択する組み合わせの数は、種類であるが、種類の組み合わせが順次に選択される。
【0118】
S150Bでは、プロセッサ210は、3個の注目位置を用いて測定座標系を定義する。具体的には、シーン座標系の3個の注目位置を用いて、シーン座標系における測定座標系が定義される。同様に、ツール座標系における3個の注目位置を用いて、ツール座標系における測定座標系が定義される。3個の注目位置から測定座標系を定義する方法は、図11(A)を参照して説明した通りである。
【0119】
シーン座標系における測定座標系は、原点OPsと、3つの単位ベクトルvXLs、vYLs、vZLsによって定義される。ツール座標系における測定座標系は、原点OPtと、3つの単位ベクトルvXLt、vYLt、vZLtによって定義される。
【0120】
S155Bでは、定義された測定座標系を介して、ツール座標系とシーン座標系との対応関係を示す変換行列Mtsを算出する。図12(C)に示すように、変換行列Mtsは、ツール座標系と測定座標系との対応関係を示す変換行列Mtpと、シーン座標系と測定座標系との対応関係を示す変換行列Mspの逆行列と、の積である。変換行列Mspは、シーン座標系における測定座標系を定義する値(原点OPs、単位ベクトルvXLs、vYLs、vZLs)を要素とする同次変換行列であり、上述した図11(C)に示されている。変換行列Mtpは、ツール座標系における測定座標系を定義する値(原点OPt、単位ベクトルvXLt、vYLt、vZLt)を要素とする同次変換行列である(図示省略)。
【0121】
S160では、プロセッサ210は、n個のランドマーク300の位置から3個の注目位置を選択する全ての組み合わせを処理したか否かを判断する。未処理の組み合わせがある場合には(S160:NO)、プロセッサ210は、S145Bに戻る。全ての組み合わせを処理した場合には(S160:YES)、プロセッサ210は、S165Bに処理を進める。
【0122】
S165Bでは、図10のS165と同様に、プロセッサ210は、各組み合わせについて算出された変換行列Mtsを用いて、最終的な1つの変換行列Mtsfを算出する。
【0123】
以上説明した第3実施例によれば、ランドマーク300を用いて、シーン座標系(三次元センサ110の座標系)と、ツール座標系と、の間の対応関係を示す変換行列Mtsfを算出できる。シーン座標系とツール座標系との間の対応関係を示す変換行列Mtsfが既知であれば、上述のように、シーン座標系とロボット座標系との対応関係を示す変換行列Mrsを算出できる。このために、例えば、データ処理装置200は、三次元センサ110を用いてシーン座標系において対象物体OBの位置や姿勢を把握すれば、ロボット座標系においても対象物体OBの位置や姿勢を把握できる。したがって、データ処理装置200は、ロボットアーム120を制御して、対象物体OBの把持等を適切に実行できる。
【0124】
また、本実施例では、第2実施例と同様に、n個のランドマーク300の位置が必要であるが、姿勢は必要ない。この結果、ランドマーク300の位置が精度良く特定できれば、シーン座標系とロボット座標系との対応関係を精度良く特定できる。
【0125】
D.第4実施例
第4実施例では、ランドマークの構成が図4のランドマーク300とは異なる。第4実施例の300Bは、第1~第3実施例のいずれの処理(図6図10図13)においても用いることができる。
【0126】
図14は、第4実施例のランドマーク300Bの説明図である。図14(A)には、ランドマーク300Bを+Zm方向側から-Zm方向に向かって見た図が示されている。図14(B)には、ランドマーク300Bのコンセプト図が示されている。図14(C)には、ランドマーク300Bの斜視図が示されている。
【0127】
ランドマーク300Bは、内側部310Bと、外側部320Bと、を備えている。ランドマーク300Bの特定面FFBは、内側部310Bの+Zm側の表面である内側面Fi1b~Fi8bと、外側部320Bの+Zm側の表面である外側面Fo1b、Fo4b~Fo8bと、を備えている。また、特定面FFBは、図4の特定面FFと同様に、外側参照領域Sob2、Sob3に対応する部分を含まない。内側面Fi1b~Fi8bは、内側参照領域Sib1~Sib8に対応し、外側面Fo1b、Fo4b~Fo8bは、外側参照領域Sob1、Sob4~Sob8に対応している。
【0128】
内側面Fi1b~Fi8bは、全体として錐面を構成しているが、角錐面の一部と円錐面の一部とを含んでいる。具体的には、内側面Fi1b、Fi2b、Fi7b、Fi8bは、それぞれ、円錐面の一部である。内側面Fi3b~Fi6bは、八角錐面の一部である(図14(A)~(C))。
【0129】
外側面Fo1b、Fo4b~Fo8bは、球面の一部と、平面と、を含んでいる。具体的には、外側面Fo1b、Fo7b、Fo8bは、それぞれ、球面の一部である。外側面Fo4b~Fo6bは、平面の一部である。外側面Fo6b、Fo7bの径方向の長さは、外側面Fo1b、Fo4b、Fo5b、Fo8bの径方向の長さよりも短い。例えば、外側面Fo6bの径方向の長さは、外側面Fo4b、Fo5bの径方向の長さの半分である。外側面Fo7bの径方向の長さは、外側面Fo1b、Fo8bの径方向の長さの半分である。
【0130】
外側面Fo4b~Fo6bの法線とZm方向とが為す角度は、角錐面の一部である内側面Fi3b~Fi6bとZm方向とが為す角度と同一である。このために、外側面Fo4bと内側面Fi4bとは、連続した1つの平面を構成している。同様に、外側面Fo5bと内側面Fi5b、外側面Fo6bと内側面Fi6bとは、連続した1つの平面を構成している。変形例では、外側面Fo4b~Fo6bの法線とZm方向とが為す角度は、角錐面の一部である内側面Fi3b~Fi6bとZm方向とが為す角度とは異なっていても良い。
【0131】
図14(B)のコンセプト図には、上述した特定面FFBの構成が文言で記述されている。例えば、内側面Fi1b~Fi8bの形状を示す記述は、円錐面の一部であることを示す「円錐」、あるいは、角錐面の一部であることを示す「角錐」のいずれかである。外側面Fo1b、Fo4b~Fo8bに対応する記述は、球面の一部であることを示す「球面」、あるいは、平面であることを示す「平面」のいずれかである。また、外側面Fo6b、Fo7bの記述には、その径方向の長さが外側面Fo1b、Fo4b、Fo5b、Fo8bの径方向の長さの半分であることを示す「(半)」が付されている。さらには、特定面FFBは、外側参照領域Sob2、Sob3に対応する部分を含まないことが「無」という文言で記述されている。
【0132】
以上説明した第4実施例によれば、内側部310Bの頂点TPbの局所的特徴量をランドマーク特徴量として用いることで、第1~第3実施例と同様に、シーン点群PCsに存在するランドマーク300Bの頂点を特定することで、ランドマーク300Bの位置を精度良く特定できる。
【0133】
さらに、第4実施例によれば、特定面FFBの形状は、3種類の形状、すなわち、錐面(例えば、内側面Fi1b~Fib8)と、球面の一部(例えば、外側面Fo1b、Fo7b、Fo8b)と、平面(例えば、Fo4~Fo6)と、を備えている。この結果、特定面FFBの形状がよりユニークな形状となるので、より誤認識を抑制できる。
【0134】
E.第5実施例
第4実施例のランドマーク300Bのように、特定面が錐面(円錐面および角錐面)と、球面の一部と、平面と、を備える別の例を、第5実施例として説明する。
【0135】
図15は、第5実施例のランドマーク300Cの説明図である。図15(A)には、ランドマーク300Cを+Zm方向側から-Zm方向に向かって見た図が示されている。図15(B)には、ランドマーク300Cのコンセプト図が示されている。図15(C)には、ランドマーク300Cの斜視図が示されている。
【0136】
ランドマーク300Cは、内側部310Cと、外側部320Cと、を備えている。ランドマーク300Cの特定面FFCは、内側部310Cの+Zm側の表面である内側面Fi1c~Fi8cと、外側部320Cの+Zm側の表面である外側面Fo1c、Fobc~Fo8cと、を備えている。また、特定面FFCは、図4の特定面FFと同様に、外側参照領域Sob2、Sob3に対応する部分を含まない。内側面Fi1c~Fi8cは、内側参照領域Sib1~Sib8に対応し、外側面Fo1c、Fo4c~Fo8cは、外側参照領域Sob1、Sob4~Sob8に対応している。
【0137】
内側面Fi1c~Fi8cは、全体として錐面を構成しているが、角錐面の一部と円錐面の一部とを含んでいる。具体的には、円錐面の一部である内側面Fi1c、Fi3c、Fi5c、Fi7cと、八角錐面の一部である内側面Fi2c、Fi4c、Fi6c、Fi8cは、周方向に交互に並んでいる。(図15(A)~(C))。
【0138】
外側面Fo1c、Fo4c~Fo8cは、球面の一部と、平面と、を含んでいる。具体的には、平面の一部である外側面Fo4c、Fo6c、Fo8cと、球面の一部である外側面Fo5c、Fo7c、Fo1cは、周方向に交互に並んでいる。(図15(A)~(C))。外側面Fo6c、Fo7cの径方向の長さは、外側面Fo1c、Fo4c、Fo5c、Fo8cの径方向の長さよりも短い。例えば、外側面Fo6cの径方向の長さは、外側面Fo4c、Fo8cの径方向の長さの半分である。外側面Fo7cの径方向の長さは、外側面Fo1c、Fo5cの径方向の長さの半分である。
【0139】
図15(B)のコンセプト図には、上述した特定面FFCの構成が、図14(B)と同様に、文言で記述されている。
【0140】
以上説明した第5実施例によれば、内側部310Cの頂点TPcの局所的特徴量をランドマーク特徴量として用いることで、第1~第3実施例と同様に、シーン点群PCsに存在するランドマーク300Cの頂点を特定することで、ランドマーク300Cの位置を精度良く特定できる。
【0141】
さらに、第5実施例によれば、第4実施例と同様に、特定面FFCの形状は、3種類の形状、すなわち、錐面(例えば、内側面Fi1c~Fi8c)と、球面の一部(例えば、外側面Fo5c、Fo7c、Fo1c)と、平面(例えば、Fo4c、Fo6c、Fo8c)と、を備えている。この結果、特定面FFCの形状がよりユニークな形状となるので、より誤認識を抑制できる。
【0142】
F.第6実施例
第4、第5実施例のランドマーク300B、300Cのように、特定面が3種類の形状を備える別の例を、第6実施例として説明する。図16は、第6実施例のランドマーク300Dの説明図である。図16(A)には、ランドマーク300Dを+Zm方向側から-Zm方向に向かって見た図が示されている。図16(B)には、ランドマーク300Dのコンセプト図が示されている。図16(C)には、ランドマーク300Cの斜視図が示されている。
【0143】
第6実施例のランドマーク300Dの特定面FFDは、その法線とZm方向とが為す角度が互いに異なる3種類の平面の形状を備える。その法線とZm方向とが為す角度が互いに異なる3種類の平面は、特徴量が互いに異なるので、互いに異なる形状であると言うことができる。
【0144】
ランドマーク300Dは、内側部310Dと、外側部320Dと、を備えている。ランドマーク300Dの特定面FFDは、内側部310Dの+Zm側の表面である内側面Fi1d~Fi8dと、外側部320Dの+Zm側の表面である外側面Fo1d、Fobd~Fo8dと、を備えている。また、特定面FFDは、図4の特定面FFと同様に、外側参照領域Sob2、Sob3に対応する部分を含まない。内側面Fi1d~Fi8dは、内側参照領域Sib1~Sib8に対応し、外側面Fo1d、Fo4d~Fo8dは、外側参照領域Sob1、Sob4~Sob8に対応している。
【0145】
内側面Fi1d~Fi8dは、全体として八角錐面を構成している。すなわち、内側面Fi1d~Fi8dは、それぞれ、八角錐面の一部である平面である(図16(A)~(C))。
【0146】
外側面Fo1c、Fo4c~Fo8cは、その法線とZm方向とが為す角度が互いに異なる3種類の平面を含んでいる。具体的には、外側面Fo6d、Fo7dは、その法線とZm方向とが為す角度が最も大きな平面である。外側面Fo6d、Fo7dは、図16(B)のコンセプト図では、「平面(大)」と記述されている。外側面Fo8d、Fo5dは、その法線とZm方向とが為す角度が、外側面Fo6d、Fo7dよりも小さな平面である。外側面Fo8d、Fo5dは、図16(B)のコンセプト図では、「平面(中)」と記述されている。外側面Fo4d、Fo1dは、その法線とZm方向とが為す角度が、外側面Fo8d、Fo5dよりも小さな平面である。外側面Fo4d、Fo1dは、図16(B)のコンセプト図では、「平面(小)」と記述されている。
【0147】
これらの3種類の外側面は、径方向の長さも互いに異なっている。具体的には、外側面Fo6d、Fo7dの径方向の長さは、外側面Fo8d、Fo5dの径方向の長さよりも短い。外側面Fo8d、Fo5dの径方向の長さは、外側面Fo4d、Fo1dの径方向の長さよりも短い。
【0148】
以上説明した第6実施例によれば、内側部310Dの頂点TPdの局所的特徴量をランドマーク特徴量として用いることで、第1~第3実施例と同様に、シーン点群PCsに存在するランドマーク300Cの頂点を特定することで、ランドマーク300Cの位置を精度良く特定できる。
【0149】
さらに、第6実施例によれば、特定面FFDの形状は、3種類の形状、すなわち、その法線とZm方向とが為す角度が互いに異なる3種類の平面を含んでいる。この結果、特定面FFCの形状がよりユニークな形状となるので、より誤認識を抑制できる。
【0150】
さらに、第6実施例によれば、3種類の外側面の径方向の長さが互いに異なっていることで、他の実施例のランドマーク300、300B、300Cと同様に、特定面FFDが位置する範囲や対称性が調整されている。この結果、頂点TPdの局所座標系が、想定するランドマーク座標系と一致するように決定される。
【0151】
G.変形例
(1)上記第1実施例では、互いに異なる形状として、錐面(円錐面)と球面との組み合わせを例示した。また、第4、第5実施例では、互いに異なる形状として、錐面(角錐面、円錐面)と、球面と、平面との組み合わせを例示した。さらに、第6実施例では、互いに異なる形状として、その法線とZm方向とが為す角度が互いに異なる3種類の平面を例示した。これに限らず、互いに異なる形状としては、他の様々な組み合わせが採用され得る。例えば、互いに異なる形状は、その曲率や中心の位置が互いに異なる球面であっても良い。
【0152】
(2)上記各実施例のランドマーク300において、1つの参照領域に対応する各種の形状を例示したが、1つの参照領域に対応する形状は、様々な形状が採用され得る。例えば、第5、第6実施例において、1つの参照領域に対応する形状として1つの平面(例えば、外側面Fo4c、Fo4d)が採用されている。これに代えて、例えば、外側面Fo4c、Fo4dは、角度が互いに異なる2以上の平面を含んでも良い。また、1つの参照領域に対応する形状は、例えば、球面に代えて、曲率がZm方向の位置に応じて段階的に変化する曲面を含んでも良い。
【0153】
(4)上記各実施例の特定面が位置する範囲や対称性を調整する手法は、一例であり、これに限られない。例えば、第1実施例のランドマーク300では、外側面Fo6、Fo7と周方向の位置が180度異なる位置に、外側面を設けないことで、Ym方向の対称性を低下させている。これに限らず、例えば、外側面Fo6、Fo7と周方向の位置が180度異なる位置に、外側面Fo6、Fo7とは径方向の長さが異なる外側面を配置することで、Ym方向の対称性を低下させても良い。
【0154】
さらには、外側面Fo6、Fo7と周方向の位置が180度異なる位置に、外側面Fo6、Fo7とは径方向の長さが同じ外側面を配置し、該外側面に1または複数の貫通孔を形成することで、Ym方向の対称性を低下させても良い。このように、周方向の位置が180度異なる外側面の形状を互いに異ならせる(例えば、貫通孔の有無)ことで、Ym方向の対称性を低下させても良い。
【0155】
第1実施例のランドマーク300では、外側面Fo5、Fo4、Fo1、Fo8と周方向の位置が90度異なる位置に、外側面を設けないことと、径方向の長さが短い外側面Fo6、Fo7を設けることと、によって、特定面が位置するXm方向やYm方向の範囲を調整している。これに代えて、外側面Fo5、Fo4、Fo1、Fo8と周方向の位置が90度異なる位置に、外側面Fo5、Fo4、Fo1、Fo8と同等のサイズの外側面を設け、該外側面に1または複数の貫通孔を形成しても良い。このように、周方向の位置が90度異なる外側面の形状を互いに異ならせる(例えば、貫通孔の有無)ことで、特定面が位置するXm方向やYm方向の範囲、ひいては、該特定面にて測定される複数個の点PTの分布を調整しても良い。
【0156】
(5)ランドマーク300の全体の形状や、特定面の形状は、適宜に変更されて良い。例えば、ランドマーク300の内側部310は、錐面とは異なる形状であっても良い。内側部310は、例えば、頂点TPのように、周囲とは異なる特異点を有することが好ましい。内側部310は、例えば、細い針状の形状を有する部材(例えば、円筒、角筒)であっても良い。外側部320は、板状の部材に代えて、比較的長い側面SFを有する部材であっても良い。また、ランドマーク300の特定面は、凹状の部分や鋭角の部分を局所的に含んでいても良い。また、ランドマーク300は、他の部材に固定するための治具と一体に形成されてしても良い。
【0157】
また、特定面FFの内側面の形状によって、Ym方向の対称性を十分に低くできる場合には、外側面によってYm方向の対称性を低下させなくても良い。また、内側面の形状によって、特定面にて測定される複数個の点PTのYm方向とXm方向の分布を十分に異ならせることができる場合には、外側面によって特定面にて測定される複数個の点PTのYm方向とXm方向の分布が調整されなくても良い。
【0158】
(6)上記実施例では、局所的特徴量として、SHOT特徴量が採用されているが、これに限られない。局所的特徴量としては、注目点に対して複数個の参照領域が設定され、参照領域ごとに領域特徴量が算出されるタイプの任意の特徴量が採用され得る。例えば、CSHOT(Color SHOT)などの改良されたSHOT特徴量が採用されても良い。また、例えば、参照領域ごとに算出される領域特徴量は、参照領域内の各点の法線と座標軸Zlとの為す角度とは異なる量(例えば、各点における曲率)を用いて算出されても良い。また、上記実施例では、図3にて説明したように32個の参照領域が設定されるが、設定される参照領域の個数、形状、大きさは、適宜に変更され得る。この場合には、ランドマークの形状や大きさは、設定される参照領域の個数、形状、大きさに応じて、設定されることが好ましい。
【0159】
ランドマークの形状は、採用される局所的特徴量において設定される複数個の参照領域に応じて、実施例とは異なる形状になり得る。例えば、複数個の参照領域が、周方向の位置が互いに異なる複数個の参照領域を含むが、内側領域と外側領域とには分かれていない場合には、ランドマークは、内側部と外側部とを備えていなくても良く、周方向の位置が互いに異なる複数個の参照領域に対応する部分を備えていれば良い。
【0160】
(7)さらに、上記第1実施例のデータ処理装置200の処理は、シーン座標系とトレイ座標系との対応関係を特定するための処理であり、第2、第3実施例のデータ処理装置200の処理は、シーン座標系とロボット座標系との対応関係を特定するための処理であるが、これに限られない。例えば、ランドマーク300は対象物体OBの所定の位置に固定され、データ処理装置200の処理は、ランドマーク300の位置や姿勢を特定することで、シーン座標系における対象物体OBの位置や姿勢を特定する処理であっても良い。
【0161】
さらには、データ処理装置200の処理は、ロボットアーム120の制御に関連する処理に限らず、他の様々な処理であって良い。例えば、製品上に取り付けられた部品の位置と姿勢とを特定し、該製品上において部品が正しい位置に正しい姿勢で取り付けられているか否かを検査するために、データ処理装置200の処理は、該製品の座標系とシーン座標系との対応関係を特定する処理であっても良い。
【0162】
(8)上記各実施例のデータ処理装置200の処理も適宜に変更されて良い。例えば、第1実施例では、1個のランドマーク300を三次元センサ110によって測定している。これに代えて、3個のランドマーク300を三次元センサ110によって測定しても良い。この場合には、各ランドマーク300の位置と姿勢の両方を特定する必要はなく、各ランドマークの位置が特定されれば良い。そして、データ処理装置200は、3個のランドマーク300の位置に基づいて、図11(A)に示すように、シーン座標系におけるランドマーク座標系を定義すれば良い。
【0163】
(9)データ処理装置の構成は、図1のデータ処理装置200の構成に代えて、他の種々の構成であってよい。例えば、ネットワークを介して互いに通信可能な複数の装置(例えば、コンピュータ)が、実施例のデータ処理装置200が実行する処理を一部ずつ分担して実行して、全体として、データ処理装置200が実行する処理を実行してもよい。
【0164】
(10)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、局所的特徴量や大局特徴量の算出の機能を、専用のハードウェア回路によって実現してもよい。
【0165】
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD-ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
【0166】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【0167】
110…三次元センサ,120…ロボットアーム,125…リンク機構,126…指,128,129…治具,130…トレイ,200…データ処理装置,210…プロセッサ,215…記憶装置,220…揮発性記憶装置,230…不揮発性記憶装置,240…表示部,250…操作部,270…通信インタフェース,300,300B~300D…ランドマーク,310,310B~310D…内側部,320,320B~320D…外側部,BF…裏面,FF,FFB~FFD…特定面,Fi1~Fi8,Fi1b~Fi8b,Fi1c~Fi8b,Fi1d~Fi8d…内側面,Fo1~Fo8,Fo1b~Fo8b,Fo1c~Fo8c,Fo1d~Fo8d…外側面,HG1~HG32…領域特徴量,LMD…ランドマーク特徴量データ,Mrp,Mrs,Mrsf,Msl,Msp…変換行列,OB…対象物体,OP…原点,OPm…原点,OPs…原点,P…注目位置,PCs…シーン点群,PDs…シーン点群データ,PG…コンピュータプログラム,Sib1~Sib8…内側参照領域,Sob1~Sob8…外側参照領域,TP,TPb~TPd…頂点
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16