(57)【要約】      （修正有）【課題】視差により対象物の見え方が大きく異なる場合や、対象物に隠れが生じている場合でも、より精度よく三次元位置を計測可能とする情報処理装置を提供する。【解決手段】２つ以上の異なる視点から撮像された複数の画像を入力する入力手段（Ｓ１０４０）と、複数の画像それぞれから検出モデルを用いて対象物の候補位置を検出する検出手段（Ｓ１０５０）と、複数の画像それぞれから検出された対象物の候補位置に基づいて対象物の位置を決定する第１の決定手段（Ｓ１０６０）と、対象物の位置と撮像装置の校正情報とに基づいて対象物の三次元位置を決定する第２の決定手段（Ｓ１０７０）と、を有する。【選択図】図６
2019105588.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上の異なる視点から撮像された複数の画像を入力する入力手段と、
前記複数の画像それぞれから検出モデルを用いて対象物の候補位置を検出する検出手段と、
前記複数の画像それぞれから検出された対象物の候補位置に基づいて前記対象物の位置を決定する第１の決定手段と、
前記対象物の位置と撮像装置の校正情報とに基づいて前記対象物の三次元位置を決定する第２の決定手段と、
を有する情報処理装置。
【請求項２】
前記第１の決定手段は、前記複数の画像それぞれから検出された対象物の候補位置と前記校正情報に関する幾何拘束とに基づいて前記対象物の位置を決定する請求項１記載の情報処理装置。
【請求項３】
前記検出手段は、前記複数の画像それぞれから検出モデルを用いて前記対象物の候補領域を検出し、
前記第１の決定手段は、前記複数の画像それぞれから検出された対象物の候補領域に基づいて前記対象物の位置を決定する請求項１又は２記載の情報処理装置。
【請求項４】
前記検出手段は、更に、前記複数の画像それぞれから前記対象物の候補領域の形状を検出し、
前記第１の決定手段は、更に、前記候補領域の形状と前記対象物の形状とに基づいて前記対象物の位置を決定する請求項３記載の情報処理装置。
【請求項５】
前記検出手段は、更に、前記複数の画像それぞれから検出モデルを用いて対象物の候補位置の尤度を出力し、
前記第１の決定手段は、前記複数の画像それぞれから出力された対象物の候補位置の尤度に基づいて前記対象物の位置を決定する請求項１乃至４何れか１項記載の情報処理装置。
【請求項６】
前記検出手段により第１の画像より検出された対象物の候補位置と前記校正情報に関する幾何拘束とに基づいて前記第１の画像とは異なる第２の画像の前記対象物の検出範囲を設定する設定手段を更に有する請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記第１の画像は、第１の撮像装置で撮像された画像であり、
前記第２の画像は、前記第１の撮像装置とは異なる第２の撮像装置で撮像された画像である請求項６記載の情報処理装置。
【請求項８】
前記入力手段により入力された前記複数の画像それぞれから複数の異なるサイズの検出用画像を生成する画像生成手段を更に有し、
前記検出手段は、前記画像生成手段により生成された前記複数の異なるサイズの検出用画像から検出モデルを用いて対象物の候補位置を検出する請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
前記第１の決定手段は、前記複数の異なるサイズの検出用画像を用いた検出ごとに前記対象物の位置を決定する請求項８記載の情報処理装置。
【請求項１０】
２つ以上の異なる視点から撮像された複数の画像を入力する入力手段と、
前記複数の画像それぞれから検出モデルを用いて対象物の候補位置を検出する検出手段と、
前記複数の画像それぞれから検出された対象物の候補位置に基づいて前記対象物の位置を決定する第１の決定手段と、
前記対象物の位置と撮像装置の校正情報とに基づいて前記対象物の三次元位置を決定する第２の決定手段と、
を有するシステム。
【請求項１１】
学習用画像に対して前記対象物の位置の真値を付与する付与手段と、
前記学習用画像と前記真値とに基づいて前記検出モデルを生成する生成手段と、
を更に有する請求項１０記載のシステム。
【請求項１２】
前記三次元位置、前記対象物の位置、前記対象物の候補位置のうち少なくとも何れか１つを示す確認画像を表示する表示手段を更に有する請求項１０又は１１記載のシステム。
【請求項１３】
前記検出モデルは、深層学習のモデルである請求項１０乃至１２何れか１項記載のシステム。
【請求項１４】
前記入力手段により入力される画像を撮像する複数の撮像装置を更に有する請求項１０乃至１３何れか１項記載のシステム。
【請求項１５】
前記三次元位置に基づきロボットアームを制御する制御手段を更に有する請求項１０乃至１４何れか１項記載のシステム。
【請求項１６】
前記ロボットアームを更に有する請求項１５記載のシステム。
【請求項１７】
前記対象物を操作するエンドエフェクタを更に有する請求項１０乃至１６何れか１項記載のシステム。
【請求項１８】
情報処理装置が実行する情報処理方法であって、
２つ以上の異なる視点から撮像された複数の画像を入力する入力工程と、
前記複数の画像それぞれから検出モデルを用いて対象物の候補位置を検出する検出工程と、
前記複数の画像それぞれから検出された対象物の候補位置に基づいて前記対象物の位置を決定する第１の決定工程と、
前記対象物の位置と撮像装置の校正情報とに基づいて前記対象物の三次元位置を決定する第２の決定工程と、
を含む情報処理方法。
【請求項１９】
コンピュータを、請求項１乃至９何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
複数台のカメラで観測した画像間で対応を探索し、三角測量の原理によって距離を推定する距離計測技術が、自動車の自動運転、ロボットビジョン等、周囲の環境を計測し、認識、判断するといった場面で利用されている。
特許文献１では、注目画素の周囲の矩形の輝度が類似している領域を探索することで画像間の対応を探索している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６０７１４２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方法では、対象物が光を反射する特性を持っている等、視差により見え方が大きく異なるような場合や、障害物により片方又は両方の画像中で対象物に部分的な隠れが生じている場合には対応点探索を精度よく行うことが難しい。したがって、精度よく三次元位置を計測できない。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、２つ以上の異なる視点から撮像された複数の画像を入力する入力手段と、前記複数の画像それぞれから検出モデルを用いて対象物の候補位置を検出する検出手段と、前記複数の画像それぞれから検出された対象物の候補位置に基づいて前記対象物の位置を決定する第１の決定手段と、前記対象物の位置と撮像装置の校正情報とに基づいて前記対象物の三次元位置を決定する第２の決定手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、視差により対象物の見え方が大きく異なる場合や、対象物に隠れが生じている場合でも、より精度よく三次元位置を計測できる。
【図面の簡単な説明】
【０００７】
【図１】ロボットシステムのシステム構成の一例を示す図である。
【図２】情報処理装置のハードウェア構成の一例を示す図である。
【図３】ロボットシステムを構成する各装置のモジュール構成の一例を示す図である。
【図４】検出モデルの生成に係る情報処理の一例を示すフローチャートである。
【図５】入力画像、真値、検出結果の例を示す図である。
【図６】情報処理装置等の情報処理の一例を示すフローチャートである。
【図７】学習用画像及び学習用真値の例を示す図である。
【図８】入力画像に対する対象位置の尤度の求め方の一例を示す図である。
【図９】情報処理装置のモジュール構成の一例を示す図である。
【図１０】情報処理装置の情報処理の一例を示すフローチャートである。
【図１１】情報処理装置のモジュール構成の一例を示す図である。
【図１２】縮小率付近のスケールにあった画像の例を示す図である。
【図１３】粗密な探索の情報処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
実施形態１では、ステレオカメラで撮像された画像に対して、深層学習を実現するＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｏｗｏｒｋ）のＡｕｔｏ  Ｅｎｃｏｄｅｒの仕組みを利用するＣＮＮの検出モデルを用いてステレオカメラで撮像した左右の画像から対象物の候補位置及び候補領域の検出を行う。そして校正情報に基づく幾何拘束を用いて検出結果を検証し、形状の整合性を検証することで検出位置を決定し、対象物の三次元位置を算出する。校正情報とは焦点距離や主点といったカメラの内部パラメータとステレオカメラ間の相対位置姿勢といった外部パラメータとを示す。また、検出モデルとは、深層学習で学習した対象物を検出するためのモデルである。また、幾何拘束とは、エピポーラ拘束のことであり、画像間の対応する点はエピポーラ線上に存在するという拘束のことである。
本実施形態における対象物はネジであり、算出したネジの三次元位置に基づいてロボットアームを制御することで、自動でネジを外すロボットシステムについて説明する。
【００１０】
図１は、ロボットシステム１０００のシステム構成の一例を示す図である。
ロボットシステム１０００は、撮像装置１、ロボットアーム２、エンドエフェクタ３、制御装置４、画像表示装置５、検出モデル学習装置６、情報処理装置１００、を備える。
撮像装置１は、エンドエフェクタ３に取り付けられ、対象物を含むシーンを複数視点から撮像する装置である。例えば、撮像装置１は２台のグレースケールカメラから構成され、制御装置４からの撮像トリガーにより撮像を行い、画像入力部１０１に画像信号を送る。
ロボットアーム２は、制御対象を移動させる装置である。例えばロボットアーム２は、６軸ロボットから構成され、制御装置４により制御値を入力されて動作する。
エンドエフェクタ３は、ロボットアーム２の先端に取り付けられた、対象物を操作する装置である。例えば、エンドエフェクタ３は、ドライバー及び近接センサから構成され、制御装置４にドライバーと対象物との接触状態を入力する。また、エンドエフェクタ３は、制御装置４により制御値を入力されて動作する。
制御装置４は、撮像装置１、ロボットアーム２、エンドエフェクタ３を情報処理装置１００の処理に基づいて制御する装置である。
画像表示装置５は、確認画像生成部５１及び確認画像表示部５２を備える情報処理装置１００の処理結果を表示する装置である。確認画像生成部５１は、候補位置検出部１０３及び位置決定部１０５の処理結果を受け取り、確認用の画像を生成し、確認画像表示部５２へ供給する。確認画像表示部５２は、確認用の画像を画像表示装置５の表示部等に表示する。
検出モデル学習装置６は、検出モデル保持部１０２が保持する検出のためのモデルを学習する装置であり、学習用画像入力部６１、学習用真値付与部６２、検出モデル生成部６３を備える。本実施形態では対象物の位置と形状とを出力する検出モデルを生成する。検出モデルとして例えば深層学習を実現するＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）が利用される。
【００１１】
図２は、情報処理装置１００のハードウェア構成の一例を示す図である。ＣＰＵ１１を含む制御部１０は、情報処理装置１００全体の動作を制御する。ＣＰＵ１１は、ＲＯＭ１２又はＨＤＤ１４に記憶されたプログラムを読み出して処理を実行することによって情報処理装置１００の機能を実現させる。ＲＡＭ１３は、ＣＰＵ１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１４は、各種のプログラムやデータを記憶する。表示部Ｉ／Ｆ１５は、表示部１８と制御部１０とを接続する。入力Ｉ／Ｆ１６は、入力部１９と制御部１０とを接続する。ＣＰＵ１１は、入力部１９を介したユーザからの指示を認識し、認識した指示に応じて表示部１８に表示する画面を遷移させる。ネットワークＩ／Ｆ１７は、制御部１０（情報処理装置１００）をネットワークに接続する。ネットワークＩ／Ｆ１７は、ネットワーク上の他の装置との間で各種情報を送受信する。なお、表示部１８、入力部１９等は情報処理装置１００の必須の構成要素ではない。
ＣＰＵ１１がＲＯＭ１２又はＨＤＤ１４に記憶されたプログラムに基づいて処理を実行することによって後述する図３の情報処理装置１００、図９、図１１のモジュール構成及び後述するフローチャートの情報処理装置１００に係る処理が実現される。
画像表示装置５及び検出モデル学習装置６も情報処理装置１００と同様のハードウェア構成を有し、各装置のＣＰＵが各装置のＲＯＭ又はＨＤＤに記憶されたプログラムに基づいて処理を実行することにより後述する図３の各装置のモジュール構成が実現される。また、画像表示装置５及び検出モデル学習装置６の各装置のＣＰＵが各装置のＲＯＭ又はＨＤＤに記憶されたプログラムに基づいて処理を実行することにより後述するフローチャートの各装置に係る処理が実現される。
【００１２】
図３は、ロボットシステム１０００を構成する各装置のモジュール構成の一例を示す図である。
情報処理装置１００は、モジュール構成として、画像入力部１０１、検出モデル保持部１０２、候補位置検出部１０３、校正情報保持部１０４、位置決定部１０５、三次元位置算出部１０６を備える。
画像入力部１０１は、外部の撮像装置１が撮像する画像を取得し、候補位置検出部１０３に供給する。
検出モデル保持部１０２は、検出モデル学習装置６で生成された検出モデルを保持し、候補位置検出部１０３に供給する。
候補位置検出部１０３は、画像入力部１０１から入力された画像それぞれに対して、検出モデル保持部１０２が保持する検出モデルを用いて対象物の候補領域を検出し、検出した候補領域から対象物の二次元位置を算出する。候補位置検出部１０３は、算出した１つ又は複数の候補位置及び候補領域を位置決定部１０５へ供給する。
校正情報保持部１０４は、撮像装置１の内部及び外部パラメータを保持し、位置決定部１０５及び三次元位置算出部１０６に供給する。内部パラメータはカメラの主点、焦点距離、歪みパラメータのことである。外部パラメータはカメラの相対位置姿勢を示すパラメータである。
位置決定部１０５は、候補位置検出部１０３がそれぞれの画像で検出した対象物の二次元位置の候補の中から、校正情報保持部１０４がもつ校正情報の幾何制約に適合するか検証し、適合する候補を組として選択する。更に、位置決定部１０５は、候補位置検出部１０３で検出した対象物の候補領域の形状が対象物の形状と整合しているか検証し、整合していたら候補位置を組として選択し、三次元位置算出部１０６に供給する。
三次元位置算出部１０６は、位置決定部１０５から供給された対象物の二次元位置の組と、校正情報保持部１０４のもつ校正情報と、を用いて、対象物の三次元位置を三角測量により算出する。
【００１３】
図４は、検出モデルの生成に係る情報処理の一例を示すフローチャートである。図４に示す検出モデルの生成は、図６に示す情報処理の事前準備として行われる。
Ｓ１０００では、検出モデル学習装置６は、検出モデル生成部６３に検出モデルのネットワークを設定する等、パラメータの初期化処理を行う。本実施形態では、例えばＤｅｎｏｉｓｉｎｇ  Ａｕｔｏ  Ｅｎｃｏｄｅｒ（非特許文献１）の仕組みを利用して、対象物が写ったグレースケール画像から対象物の領域画像を生成するネットワークを用いる。
（非特許文献１）Ｙ．  Ｂｅｎｇｉｏ，  Ｌ．  Ｙａｏ，  Ｇ．  Ａｌａｉｎ，  ａｎｄ  Ｐ．  Ｖｉｎｃｅｎｔ，  "Ｇｅｎｅｒａｌｉｚｅｄ  Ｄｅｎｏｉｓｉｎｇ  Ａｕｔｏ−Ｅｎｃｏｄｅｒｓ  ａｓ  Ｇｅｎｅｒａｔｉｖｅ  Ｍｏｄｅｌｓ，"  ＮＩＰＳ，  ２０１３．
Ｓ１００１では、学習用画像入力部６１は、学習用に対象物が１つ以上写った画像を複数枚、入力する。ここでの対象物としてはロボットタスクの対象であるネジである。
Ｓ１００２では、学習用真値付与部６２は、入力された画像に対して画像上のユーザによる指定に基づいて真値を与える。真値とは、学習における正解データであり、本実施形態では、深層学習の一種であるＣＮＮに入力する画像において、対象物の領域として学習される領域である。真値の与え方は、例えば、マウス等の指示手段により対象物の画像を表示する画面上で領域を指定して与える。領域の指定は対象物そのものを画面上で塗りつぶすように行ってもよいし、対象物のうち特にロボットによるタスクの対象となる領域（ねじの十字）を塗りつぶしてもよい。又は、対象物を矩形形状や円形状で囲むように指定してもよい。
Ｓ１００３では、検出モデル生成部６３は、学習用画像入力部６１に入力された画像とＳ１００２で付与した真値とを用いて、ＣＮＮによって学習することで、検出モデルを生成する。図５は、入力画像、真値及びそれらを用いて学習した検出モデルを利用して入力画像から検出した対象物領域（検出結果）の例を示す図である。また、検出モデル学習装置６は、学習時にデータ拡張を行うことで少ない学習用画像でも頑健な検出ができる検出モデルを生成できる。データ拡張として、例えば、入力画像に対して、ガウシアンノイズの付与、ガンマ補正、ブラー付与、オクルージョンの再現等の画像処理適用がある。また、入力画像と真値とのセットでスケール変化、回転、反転等がある。
検出モデル生成部６３が生成する検出モデルはステレオ画像両方について共通でもよいし、それぞれに別々でもよい。
【００１４】
図６は、生成された検出モデルを用いた情報処理装置１００等の情報処理の一例を示すフローチャートである。
Ｓ１０１０では、情報処理装置１００は、各種パラメータ及び検出モデルの設定といった初期化処理を行う。初期化処理では、検出モデル保持部１０２は、保持する検出モデルを候補位置検出部１０３に設定する。また、校正情報保持部１０４は、保持する撮像装置１の校正情報を位置決定部１０５と三次元位置算出部１０６とに設定する。更に、校正情報保持部１０４は、位置決定部１０５に検証用パラメータを設定する。
撮像装置１の校正情報のうち内部パラメータは、例えばＺｈａｎｇの方法（非特許文献２）により事前に校正しておく。外部パラメータは、例えば三次元形状が既知のパターンを左右のカメラで撮像し、パターンを基準とした各カメラの位置及び姿勢を求め、夫々の位置及び姿勢をステレオカメラの左側カメラを基準とした位置及び姿勢に変換して求められる。これらの事前に校正した校正情報は校正情報保持部１０４に保持される。校正情報保持部１０４は、これらのカメラパラメータからカメラ間の基本行列を計算したものを位置決定部１０５に設定する。
（非特許文献２）Ｚ．  Ｚｈａｎｇ，"Ａ  ｆｌｅｘｉｂｌｅ  ｎｅｗ  ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  ｃａｍｅｒａ  ｃａｌｉｂｒａｔｉｏｎ，"  ＩＥＥＥ  Ｔｒａｎｓ．  ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，  ｖｏｌ．  ２２，  ｎｏ．  １１，  ｐｐ．  １３３０−１３３４，  ２０００．
【００１５】
Ｓ１０２０では、制御装置４は、ロボットアーム２を撮像位置姿勢に移動するように制御する。本実施形態では、制御装置４は、ティーチングペンダントによる教示作業により設定した対象物を撮像することができる位置姿勢を撮像位置姿勢として取得する。
Ｓ１０３０では、撮像装置１は、制御装置４から撮像トリガーを受け取り、撮像を行い、撮像した画像信号を画像入力部１０１に供給する。
Ｓ１０４０では、画像入力部１０１は、撮像装置１から画像信号を受け取り、候補位置検出部１０３に供給する。
Ｓ１０５０では、候補位置検出部１０３は、Ｓ１０４０において供給された画像からＳ１０１０で設定された検出モデルを用いて対象物の候補位置を検出する。候補位置検出部１０３は、検出を、ステレオカメラで撮像された画像それぞれに対して独立して行う。
本実施形態では、Ｓ１０１０で述べたように検出モデルでは入力画像から対象物の領域が抽出される。候補位置検出部１０３は、抽出した候補領域に対してラベリング処理を施し、それぞれの重み付き重心を計算することで対象物の候補位置として算出する。ここで画像中に存在する対象は１つであっても、複数あってもよい。
【００１６】
Ｓ１０６０では、位置決定部１０５は、まずＳ１０５０において検出された各画像上での候補位置を校正情報保持部１０４が持つ撮像装置の校正情報から算出される幾何拘束とＳ１０５０で検出した候補領域の形状とに基づいて検証する。但し、位置決定部１０５は、幾何拘束による検証及び候補領域の形状による検証の何れか一方による検証だけを行うようにしてもよい。位置決定部１０５は、条件を満たしている候補位置の組を選択し、条件を満たしていない場合には候補位置から削除する。
位置決定部１０５は、幾何拘束に基づく候補位置の検証を、検出した候補位置がエピポーラ拘束を満たしているかどうかで、次の手順で判定する。まず、位置決定部１０５は、ステレオ画像のうち片方の画像上で検出した候補位置を１つ選択し、Ｓ１０１０で設定した基礎行列を用いてエピポーラ線を計算する。次に、位置決定部１０５は、もう片方の画像上で検出した候補位置それぞれについてエピポーラ線からの距離を計算し、Ｓ１０１０において予め定めておいた閾値以下であればエピポーラ拘束を満たすと判定する。また、位置決定部１０５は、更にＳ１０２０で設定された撮像位置における撮像装置と対象物のおおまかな距離とに基づいて、視差が予め設定された閾値以下であるものに限定してもよい。対応が複数存在する場合には、位置決定部１０５は、最もエピポーラ線に近いものを選択してもよい。位置決定部１０５は、これを左画像上で検出した候補位置全てに対して行う。ここでは、位置決定部１０５は、左画像を基準にしたが、右画像を基準としてもよい。
位置決定部１０５は、検出した候補領域の形状に基づく検証を、Ｓ１０５０で検出された対象物の候補領域の形状が、対象物の形状と整合しているかで検証する。位置決定部１０５は、形状の整合を、検出した候補領域のモーメント（面積等）を計算し、Ｓ１０１０で設定された範囲にあれば整合、範囲外であれば不整合と判定する。
位置決定部１０５は、幾何拘束による検証と形状による検証とをどちらを先に行ってもよい。位置決定部１０５は、更に姿勢を検証してもよい。
【００１７】
Ｓ１０７０では、三次元位置算出部１０６は、位置決定部１０５から受け取った各画像における二次元の検出位置の組と、校正情報保持部１０４の持つ撮像装置の校正情報と、に基づいて三角測量により三次元位置を算出する。
Ｓ１０８０では、画像表示装置５の確認画像生成部５１は、Ｓ１０５０で検出された候補位置、候補領域、Ｓ１０６０で決定された位置を画像上に重畳したり、数値を表示したりして可視化する。そして確認画像表示部５２は、可視化されたものを表示する。また、確認画像生成部５１は、Ｓ１０７０で算出された三次元位置を同様に可視化する。そして、確認画像表示部５２は、可視化されたものを画像表示装置５の表示部に表示してもよい。
確認画像は、例えば、グレーの入力画像上に検出された候補領域を赤で描画され、決定された位置を緑の点として描画される。確認画像の描画方法は、検出された候補位置と決定された位置とがわかればよく、この限りではない。
また、ユーザが確認画像を確認してから次の動作にいくようにしてもよいし、異常時には停止できるようにしてもよい。
Ｓ１０９０では、制御装置４は、三次元位置算出部１０６から目標となる三次元位置を取得し、エンドエフェクタ３がその位置に移動するようにロボットアーム２を制御する。校正の誤差等の影響で移動にずれが生じる場合には、制御装置４は、ロボットアーム２の制御と目標位置の算出とを随時行うビジュアルサーボの手法を用いてもよい。
Ｓ１１００では、制御装置４は、タスク動作を実行する。タスク動作とは、ロボットアーム２及びエンドエフェクタ３を、事前に設定された動きで制御することである。本実施形態では、制御装置４は、エンドエフェクタ３であるドライバーにより対象物であるネジを外すネジ外し動作を行う。例えば、制御装置４は、エンドエフェクタ３であるドライバーを前進させて、近接センサによりエンドエフェクタ３であるドライバーとネジとの接触を検知した後、ドライバーを回転させながらタスク動作を実行する前の位置姿勢に戻す。
Ｓ１１１０では、制御装置４は、システム終了の判定をする。次の目標となるネジがある場合、制御装置４は、Ｓ１０２０に戻る。全ての目標に対してタスク実行が完了した場合には、制御装置４は、図６のフローチャートの処理を終了する。
【００１８】
以上に述べたように、実施形態１では、ステレオ画像それぞれに対して深層学習で学習した検出モデルを用いて対象物の候補位置と候補領域とを検出し、撮像装置間の幾何拘束と検出領域の形状とに基づいて検証することで検出位置を決定して三次元位置を算出した。これにより、対象物の見え方が異なる場合や対処物に隠れが発生している場合にも対象物の三次元位置を高精度に算出できる。
【００１９】
（実施形態１の変形例１）
実施形態１では、Ｓ１０６０の検出形状による検証において、位置決定部１０５は、検出された候補領域の形状を面積等によって検証した。しかし、検出形状による検証はこれに限定されるものではない。位置決定部１０５は、候補領域に対してテンプレートマッチングを行って類似度、又は相違度を計算し、閾値によって整合を判定しもよいし、モデルフィッティングを行い、その残差によって判定してもよい。その際、位置決定部１０５は、候補位置検出部１０３が出力した候補領域を二値化してから用いてもよい。また、位置決定部１０５は、周囲長、楕円指標、円形度、二点間最大距離等の特徴の差によって検証してもよい。
【００２０】
（実施形態１の変形例２）
実施形態１では、候補位置検出部１０３は、Ｄｅｎｏｉｓｉｎｇ  Ａｕｔｏ  Ｅｎｃｏｄｅｒの仕組みを利用して、対象物が写ったグレー画像から対象物の候補領域を検出し、候補領域をラベリングしてそれぞれ領域の重み付き重心を計算することで対象物の位置とした。
しかし、候補領域から対象物の位置を特定する方法はこれに限るものではなく、対象物の領域から検出したい位置が特定できればいかなる方法でもよい。例えば、候補位置検出部１０３は、モデルフィッティングによって算出してもよいし、単純な重心を取得してもよいし、外接矩形の中心をとってもよい。
また、候補位置検出部１０３が候補領域を検出する検出モデルも、Ａｕｔｏ  Ｅｎｃｏｄｅｒの仕組みを利用したものに限らず、対象物が写った画像から対象物の候補領域を取得できるものであればいかなる方法でもよい。例えば、候補位置検出部１０３は、ＣＮＮをベースとしたＳｅｍａｎｔｉｃ  Ｉｍａｇｅ  Ｓｅｇｍｅｎｔａｔｉｏｎの方法である、ＦＣＮ（非特許文献３）やＤｅｃｏｎｖｏｌｕｔｉｏｎ  Ｎｅｔｗｏｒｋ（非特許文献４）を用いて対象物の領域を抽出してもよい。
（非特許文献３）Ｊ．  Ｌｏｎｇ，  Ｅ．  Ｓｈｅｌｈａｍｅｒ，  Ｔ．  Ｄａｒｒｅｌｌ，  "Ｆｕｌｌｙ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｔｗｏｒｋｓ  ｆｏｒ  ｓｅｍａｎｔｉｃ  ｓｅｇｍｅｎｔａｔｉｏｎ，"  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ，  ｐｐ．３４３１−３４４０，  ２０１５．
（非特許文献４）Ｈ．  Ｎｏｈ，  Ｓ．  Ｈｏｎｇ，  Ｂ．  Ｈａｎ，  "Ｌｅａｒｎｉｎｇ  ｄｅｃｏｎｖｏｌｕｔｉｏｎ  ｎｅｔｗｏｒｋ  ｆｏｒ  ｓｅｍａｎｔｉｃ  ｓｅｇｍｅｎｔａｔｉｏｎ，"  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  ｐｐ．１５２０−１５２８，  ２０１５．
【００２１】
（実施形態１の変形例３）
実施形態１では、対象物をネジとしたが、これに限るものではなく、部品、金属物等、検出モデルを用いて検出できればいかなるものでもよい。
また、実施形態１のＳ１１００のタスク実行において行うタスクは、ネジ外しに限定するものではなく、Ｓ１０７０で算出された対象物の三次元位置に基づいてロボットが行うものであれば、把持動作でも組み付け動作でもいかなるものでもよい。エンドエフェクタ３も、ドライバーに限定するものではなく、実行するタスクに適したものであれば、ハンド、吸着パッド等の把持手段等、いかなるものでもよい。
【００２２】
（実施形態１の効果）
実施形態１によれば、深層学習で学習した検出モデルを用いて対象物の候補位置を検出し、幾何拘束等に基づいて検証して三次元位置を算出することで、対象物の見え方が異なる場合や隠れが発生している場合にも対象物の三次元位置を高精度に算出できる。
【００２３】
＜実施形態２＞
実施形態２において説明する情報処理装置及びロボットシステムは、実施形態１と同様に、ロボットに取り付けられた複数視点の撮像装置で撮像された画像から対象物を検出し、三次元位置を算出し、対象物をロボットで操作する。実施形態１では、情報処理装置１００は、対象物の位置を検出するために対象物の候補領域を検出した。しかし、本実施形態では、情報処理装置１００は、候補位置である尤度を出力する検出モデルを用いて対象物を検出し、三次元位置を算出する。
本実施形態におけるロボットシステム１０００のモジュール構成は実施形態１（図３）と同一である。実施形態１と異なる点は、候補位置検出部１０３が、対象物の候補領域を検出するのではなく対象物の候補位置の尤度（対象物がある確率）を出力する点である。また、実施形態１と異なる点は、位置決定部１０５が、候補領域の形状に基づく候補位置の選択ではなく検出時の尤度に基づく候補位置の選択が行われる点、検出モデル学習装置６で生成する検出モデルが変わる点である。本実施形態における検出モデルは、入力された画像上で対象物の位置である尤度を出力する検出モデルである。例えば、ＣＮＮの一例であるＡｌｅｘＮｅｔ（非特許文献５）等のクラス分類を行うネットワークが用いられる。候補位置検出部１０３は、検出位置と検出位置近傍と背景との３クラスに分類する検出モデルを用いて検出位置クラスのである尤度を算出し、ピーク値をとる位置を検出位置とする。
（非特許文献５）ＩｍａｇｅＮｅｔ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ｗｉｔｈ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ，  Ｋｒｉｚｈｅｖｓｋｙ，  Ａ．，  Ｓｕｔｓｋｅｖｅｒ，  Ｉ．  ａｎｄ  Ｈｉｎｔｏｎ，  Ｇ．  Ｅ．  Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ  （ＮＩＰＳ），  ２０１２．
【００２４】
本実施形態における検出モデル学習装置６のフローチャートの処理及び情報処理装置１００等のフローチャートの処理も実施形態１（図４及び図６）と同一である。異なるのは、Ｓ１００２及びＳ１００３の検出モデルの生成と、Ｓ１０５０における候補位置の検出処理と、Ｓ１０６０における位置決定処理と、の処理内容である。
Ｓ１００２において付与される学習用真値は、図７に示されるように、対象位置（Ｒ１１，Ｒ１２）、対象位置近傍（Ｒ２１，Ｒ２２）、背景（Ｒ３）の３クラスの分類とする。Ｓ１００３では、検出モデル生成部６３は、実施形態１と同様にＣＮＮによって学習することで、検出モデルを生成する。
Ｓ１０５０では、候補位置検出部１０３は、対象位置の尤度を出力する検出モデルを用いて対象物の候補位置の尤度マップ（その位置が対象物の候補位置である確率を示す二次元マップ）を生成し、候補位置を検出する。候補位置検出部１０３は、検出モデルを用いて入力画像に対する対象位置クラスとなる尤度として、図８に示すように入力画像に対する対象位置の尤度を算出する。図８（ａ）は入力画像の例を示し、図８（ｂ）はそれに対する候補位置を検出した尤度マップの例、図８（ｃ）は図８（ｂ）におけるＡ−Ａ'の断面尤度を示した図である。候補位置検出部１０３は、尤度が予め設定した閾値以上となる領域ごとのピーク値Ｐ１及びＰ２をとる位置を対象物の候補位置として検出する。
Ｓ１０６０では、位置決定部１０５は、まず実施形態１と同様に幾何拘束に基づく候補位置の検証を行い、エピポーラ拘束を満たさない候補位置を削除する。次に、位置決定部１０５は、検出した尤度に基づいて候補位置を検証し、条件を満たさない候補位置を削除する。位置決定部１０５は、尤度に基づく検証として、エピポーラ拘束を満たす左右画像で対応する候補位置の尤度の平均値が予め設定した閾値以上であることである場合には条件を満たすと判定する。
尤度に基づいた検証はこの限りではなく、位置決定部１０５は、左右画像で対応する候補位置の尤度の合計値で判定しても、差が閾値以下であるかどうかで判定してもよい。
【００２５】
以上に述べたように、実施形態２では、候補位置の尤度を検出する検出モデルを用いて検出した結果を幾何拘束と検出の尤度とに基づいて検証することで検出位置を決定して三次元位置を算出した。これにより、対象物が非剛体で形状が変わるものや様々な種類がある等、見え方が変わるため形状では検証できない対象物に対しても高精度に三次元位置を算出できる。
【００２６】
（実施形態２の変形例）
実施形態２では、候補位置検出部１０３は、クラス分類のネットワークを用いて候補位置クラスとなる尤度を算出し、尤度が閾値以上のなる領域ごとにピークをとる位置を候補位置として検出した。しかし、候補位置の決定方法はピーク位置に限らず、検出位置の尤度マップから検出位置を決定できれば、尤度が閾値以上になる領域の重心や重み付き重心をとってもよい。
また、検出位置の尤度を出力する検出モデルも、ＡｌｅｘＮｅｔに限るものではなく、候補位置の尤度が算出できればいかなるものでもよい。
【００２７】
（実施形態２の効果）
実施形態２によれば、対象物が非剛体で形状が変わるものや、様々な種類がある等見え方が変わるような対象物においても高精度に三次元位置を算出できる。
【００２８】
＜実施形態３＞
実施形態１及び実施形態２では、候補位置検出部１０３は、複数の視点で撮像された画像それぞれに対して画像全体から対象物の候補位置を算出した。実施形態３では、候補位置検出部１０３は、１つの画像で検出した候補位置に対して他の画像上で幾何拘束を満たす領域のみに限定して検出を行う。本実施形態によれば、画像全体から候補位置検出を行う処理のコストが大きい場合には、処理する領域を限定することで処理コストを削減できる。
【００２９】
図９は、実施形態３における情報処理装置１００のモジュール構成の一例を示す図である。情報処理装置１００以外のロボットシステム１０００の構成は実施形態１（図３）と同一であるため省略した。情報処理装置１００のモジュール構成のうち、実施形態１と異なる部分は、検出範囲設定部３０７が加わり、候補位置検出部１０３及び校正情報保持部１０４と情報のやり取りができる点である。
候補位置検出部１０３は、画像入力部１０１から入力された複数の画像のうち１枚の画像（例えば、ステレオカメラのうち片方のカメラで撮像された画像）に対しては、実施形態１と同様に画像全体から検出モデル保持部１０２が保持する検出モデルを用いて対象物の候補位置を検出し、位置決定部１０５及び検出範囲設定部３０７へ供給する。候補位置検出部１０３は、他の画像（例えば、もう片方のカメラで撮像された画像）に対しては、検出範囲設定部３０７によって設定された範囲に限定して対象物の二次元位置の候補を１つ又は複数出力し、位置決定部１０５に供給する。
校正情報保持部１０４は、撮像装置１の内部及び外部パラメータを保持し、検出範囲設定部３０７及び三次元位置算出部１０６に供給する。
検出範囲設定部３０７は、候補位置検出部１０３で１つの画像から検出した対象物の候補位置と校正情報保持部１０４の持つ校正情報とに基づいて、他の画像での検出範囲を幾何拘束により設定し、候補位置検出部１０３に供給する。
【００３０】
図１０は、実施形態３の情報処理装置１００の情報処理の一例を示すフローチャートである。実施形態１におけるＳ１０３０以前及び、Ｓ１０８０以降は、情報処理装置１００の外部のロボットシステム１０００における処理であるため省略する。また、Ｓ１０４０からＳ１０７０までの処理において図６と同様の処理には同一のステップ番号を付して記載してある。
Ｓ３０４１では、候補位置検出部１０３は、Ｓ１０４０で入力された画像のうち１枚を選択する。
Ｓ３０４２では、候補位置検出部１０３は、選択した画像が１枚目か否かを判定し、１枚目であればＳ３０４３を飛ばしてＳ３０５０へ、１枚目でなければＳ３０４３へ移行する。
Ｓ３０４３では、検出範囲設定部３０７は、それまでに候補位置を検出した結果と校正情報保持部１０４が保持する校正情報とに基づいて、選択画像における検出範囲を設定する。検出範囲設定部３０７は、検出範囲を、検出した候補位置に対応するステレオカメラに基づくエピポーラ線上とその近傍の範囲として決定する。ここでいう近傍の範囲は、ユーザが入力部１９等を介して設定した許容誤差とする。
【００３１】
Ｓ３０５０では、候補位置検出部１０３は、選択画像から対象物の候補位置を検出する。その際、候補位置検出部１０３は、Ｓ３０４３において検出範囲が限定されている場合には、その範囲内のみに検出処理を施し、検出範囲が限定されていない場合には、実施形態１と同様に画像全体から候補位置を検出する。検出範囲が限定さている場合の検出処理としては、例えば、Ｓ３０４３で設定した検出範囲に対応する部分だけを画像から切り出して検出を行うことで実現される。
Ｓ３０５５では、候補位置検出部１０３は、候補位置検出処理が行われていない画像がないか、即ちステレオ画像のうち処理が行われていない画像がないかを判定する。候補位置検出部１０３は、ステレオ画像のうち処理が行われていない画像がある場合、Ｓ３０４１に戻り、処理が行われていない画像のうち１枚を選択し、ステレオ画像のうち処理が行われていない画像がない場合、Ｓ３０６０へ移行する。
Ｓ３０６０では、実施形態１におけるＳ１０６０の一部である、検出形状に基づく位置決定処理と同様の処理が行われる。
Ｓ１０７０は実施形態１と同様の処理である。
【００３２】
以上に述べたように、実施形態３では、複数の入力画像のうちの１つの画像で既に処理を終えた候補位置検出の結果と、校正情報と、に基づいて、他に処理する画像の検出対象範囲を限定して候補位置を検出する。これにより、検出処理を行う画像領域を限定できるため、処理コストを削減できる。
【００３３】
（実施形態３の変形例）
実施形態３では、実施形態１の構成を用いて説明したが、実施形態２の構成で行ってもよい。
【００３４】
（実施形態３の効果）
実施形態３によれば、処理コストを削減しつつも対象物の三次元位置を高精度に算出できる。
【００３５】
＜実施形態４＞
実施形態１から実施形態３まででは、候補位置検出部１０３は、入力された画像の元のサイズのまま候補位置の検出を行った。実施形態４では検出用画像生成部４０８が入力画像を切り出し及び縮小した検出用画像を生成する。そして、候補位置検出部１０３が生成された検出用画像を用いて粗密に候補位置を検出することで処理コストを削減する。
【００３６】
図１１は、実施形態４の情報処理装置１００のモジュール構成の一例を示す図である。情報処理装置１００のモジュール構成のうち、実施形態１と異なる部分は、検出用画像生成部４０８が加わり、画像入力部１０１及び候補位置検出部１０３と情報のやり取りができる点である。
本実施形態では、画像入力部１０１は、取得した画像を検出用画像生成部４０８に供給する。
検出用画像生成部４０８は、画像入力部１０１から供給された画像の切り出し及び縮小を行い、候補位置を検出するための画像（検出用画像）を生成する。検出用画像生成部４０８は、切り出し位置を、予め決められた位置又は候補位置検出部１０３で検出された結果に基づいて決定する。縮小を行うのは検出用画像のサイズが検出モデル保持部１０２で保持する検出モデルへの入力に適合するサイズとするためである。検出用画像生成部４０８は、検出モデルへの入力に適合させるため、縮小ではなく拡大する必要があれば拡大し、検出用画像を生成する。
情報処理装置１００は、広範囲から粗く検出するには縮小率を高くして広域の特徴に基づいて検出し、狭い範囲から密に検出するには縮小率を低くして局所的な特徴に基づいて検出する。
候補位置検出部１０３は、検出用画像生成部４０８が生成した検出用画像から、検出モデル保持部１０２が保持する検出モデルを用いて対象物の候補位置を検出する。候補位置検出部１０３は、最初は入力画像そのままを検出用画像として広範囲から検出し、徐々に縮小率を低くして狭い範囲に絞って検出していく。検出用画像生成部４０８で切り出す位置は粗い検出を行った結果、見つかった対象物が中心になるようにする。検出用画像の縮小率が高い、疎な検出用である場合には、候補位置検出部１０３は、検出した結果を検出用画像生成部４０８に供給し、より密な検出用の画像の生成を依頼する。精度が十分な縮小率での検出が完了した場合には、候補位置検出部１０３は、そのときの候補位置を位置決定部１０５に供給する。
検出モデル保持部１０２の保持する検出モデルを学習する際には、検出用画像生成部４０８は、図１２に示すように使用する縮小率付近のスケールにあった画像をデータ拡張により生成し、学習する。検出用画像生成部４０８は、縮小率ごとの検出モデルを学習し保持していてもよいし、縮小率に依らない共通の検出モデルを学習し保持してもよい。
【００３７】
本実施形態における情報処理装置１００の情報処理は実施形態１とほぼ同じである。実施形態１と異なる部分は、Ｓ１０５０の候補位置を検出する処理が、粗密な検出に代わることである。また、Ｓ１０１０の初期化処理で検出用画像生成部４０８と候補位置検出部１０３とにおいて縮小率を変更するための多段階の検出サイズを設定することである。
Ｓ１０５０における粗密な探索は図１３に示すような手順で行われる。
Ｓ４０５１では、検出用画像生成部４０８は、Ｓ１０４０で入力された画像から検出用画像を生成する際の切り出し位置とサイズとを決定する。検出用画像生成部４０８は、初回の位置及びサイズとして、Ｓ１０１０で設定済みの値（例えば、入力画像の原点、又は入力画像サイズ）を用いる。また、検出用画像生成部４０８は、二度目以降ではサイズをＳ１０１０で設定した次の段階（一回り小さいサイズ）のサイズとし、切り出し位置を前回検出した候補位置が中心になる位置とする。
Ｓ４０５２では、検出用画像生成部４０８は、Ｓ４０５１で設定した切り出し位置とサイズとで画像を切り出し、検出モデルに入力する画像サイズに合わせて縮小し、検出用画像を生成する。
Ｓ４０５３では、候補位置検出部１０３は、Ｓ４０５２で生成された検出用画像から対象物の候補位置を検出する。候補位置検出部１０３は、検出した位置を、Ｓ４０５２における切り出し及び縮小処理を行う前の元の画像における位置に変換する。
Ｓ４０５４では、検出用画像生成部４０８は、密な検出が完了したか否かをＳ４０５２における画像の縮小率に基づいて判定する。検出用画像生成部４０８は、縮小率が予め設定した閾値以上であれば十分に高精度な検出が完了したと判定し、Ｓ１０６０に移行し、そうでない場合はＳ４０５１に戻る。
【００３８】
以上に述べたように、実施形態４では、入力画像を切り出し及び縮小して粗密に検出することで処理コストを削減できる。
【００３９】
（実施形態４の変形例１）
実施形態４では、情報処理装置１００は、Ｓ１０５０の候補位置を検出する処理をサイズの異なる多段階の処理とし、検出処理が完了した後にＳ１０６０で幾何拘束・検出形状に基づく位置決定を行った。しかし、情報処理装置１００は、多段階の候補位置検出処理ごとに幾何拘束及び検出形状の何れか又は双方に基づく位置決定を行ってもよい。この場合、早い段階で候補を絞り込めるためより低いコストで処理ができる。
（実施形態４の変形例２）
実施形態４では、実施形態１の構成を用いて説明したが、実施形態２やその変形例及び実施形態３で示した構成及び処理で行ってもよい。
【００４０】
（実施形態４の効果）
実施形態４によれば、処理コストを削減しつつも対象物の三次元位置を高精度に算出できる。
【００４１】
＜その他の実施形態＞
（変形例１）
上述した実施形態では、撮像装置１としてグレースケール画像を撮像するステレオカメラを用いた。しかし、複数視点から対象物の画像を撮像する撮像装置であれば何でもよい。例えば、２台以上のグレースケール画像を撮像するカメラを用いてもよいし、ＲＧＢ画像を撮像するカラーカメラを用いてもよいし、Ｄｅｐｔｈカメラでもよい。
（変形例２）
上述した位置決定部１０５の機能を三次元位置算出部１０６に含めてもよいし、候補位置検出部１０３、位置決定部１０５の機能を三次元位置算出部１０６に含めてもよい。また、候補位置検出部１０３の機能を位置決定部１０５に含めてもよい。
（変形例３）
上述した実施形態において、検出モデルは深層学習で学習した、画像を入力として対象物の画像上の位置を出力するもの、又は、位置を算出するのに十分な情報、例えば対象物の領域や外接矩形等を出力するものであればいかなるものでもよい。
【００４２】
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４３】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、上述した情報処理装置１００、検出モデル学習装置６、画像表示装置５の各モジュール構成の一部、又は全てはハードウェア構成として各装置に実装してもよい。
また、情報処理装置１００のハードウェア構成として、ＣＰＵは複数存在してもよく、複数のＣＰＵがＲＯＭ又はＨＤＤ等に記憶されているプログラムに基づき処理を実行するようにしてもよい。また、情報処理装置１００のハードウェア構成として、ＣＰＵの替わりに、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いてもよい。
【００４４】
以上、上述した各実施形態によれば、視差により対象物の見え方が大きく異なる場合や、対象物に隠れが生じている場合でもより精度よく三次元位置を計測できる。
【符号の説明】
【００４５】
１００    情報処理装置
１０００  ロボットシステム
【図１】
2019105588.tif 000003
【図２】
2019105588.tif 000004
【図３】
2019105588.tif 000005
【図４】
2019105588.tif 000006
【図５】
2019105588.tif 000007
【図６】
2019105588.tif 000008
【図７】
2019105588.tif 000009
【図８】
2019105588.tif 000010
【図９】
2019105588.tif 000011
【図１０】
2019105588.tif 000012
【図１１】
2019105588.tif 000013
【図１２】
2019105588.tif 000014
【図１３】
2019105588.tif 000015