(57)【要約】【課題】入力形状情報から取得されるモデルパターンの生成過程で行われた修正を学習することにより、別の入力形状情報に対して適切なモデルパターンを自動で生成できる画像処理システムを提供すること。【解決手段】画像処理システム１は、入力画像（入力形状情報）５から生成されたモデルパターン５０を取得するモデルパターン取得部３１と、モデルパターン取得部３１によって取得されたモデルパターン５０を修正する操作盤（モデルパターン修正部）３５と、操作盤３５によって修正されたモデルパターン５０の修正情報と入力画像５を関連付けた学習データの集まりを用いた教師あり学習により、入力画像５からモデルパターン５０を生成するためのモデルパターン生成情報を生成する機械学習器４０と、を備え、新たに入力された入力画像５とモデルパターン生成情報を用いて学習結果が反映されたモデルパターンを生成可能である。【選択図】図１０
2018195107.tif 000002
【特許請求の範囲】
【請求項１】
対象物の像の特徴を表すモデルパターンに基づいて入力形状情報から前記対象物の像を検出する画像処理システムであって、
前記入力形状情報から生成された前記モデルパターンを取得するモデルパターン取得部と、
前記モデルパターン取得部によって取得された前記モデルパターンを修正するモデルパターン修正部と、
前記モデルパターン修正部によって修正された前記モデルパターンの修正情報と前記入力形状情報を関連付けた学習データの集まりを用いた教師あり学習により、前記入力形状情報から前記モデルパターンを生成するための生成情報を生成する機械学習器と、
を備え、
入力された入力形状情報と前記生成情報を用いて学習結果が反映されたモデルパターンを生成可能な画像処理システム。
【請求項２】
前記入力形状情報は、視覚センサにより撮像された画像情報である請求項１に記載の画像処理システム。
【請求項３】
前記入力形状情報は、ＣＡＤデータである請求項１に記載の画像処理システム。
【請求項４】
前記入力形状情報は、３次元点群データである請求項１に記載の画像処理システム。
【請求項５】
前記修正情報は、前記モデルパターンを構成する要素に設定された重みの情報であり、
前記生成情報は、前記要素に重み情報を設定するための情報であり、
前記入力形状情報から生成された前記要素の重みが前記生成情報に基づいて設定される請求項１から４の何れかに記載の画像処理システム。
【請求項６】
前記修正情報は、前記入力形状情報中の前記モデルパターンとする領域として指定された情報であり、
前記生成情報は、前記入力形状情報中の前記モデルパターンとする領域を指定するための情報であり、
前記入力形状情報から前記モデルパターンの領域が前記生成情報に基づいて指定される請求項１から４の何れかに記載の画像処理システム。
【請求項７】
前記修正情報は、前記モデルパターンを構成する要素の位置、姿勢、明るさ等の物理量であり、
前記生成情報は前記要素の物理量を設定するための情報であり、
前記入力形状情報から取得された前記要素の物理量が前記生成情報に基づいて設定される請求項１から４の何れかに記載の画像処理システム。
【請求項８】
前記修正情報は、前記モデルパターンそのものを示す情報であり、
前記生成情報は、前記入力形状情報から前記モデルパターンを生成するための情報であり、
前記入力形状情報から前記生成情報に基づいて前記モデルパターンが生成される請求項１から４の何れかに記載の画像処理システム。
【請求項９】
前記機械学習器は前記入力形状情報を取得する複数の入力形状情報取得部から前記学習データの集まりを取得して教師あり学習を行う請求項１から８の何れかに記載の画像処理システム。
【請求項１０】
前記入力形状情報取得部は画像処理を行う画像処理装置であり、
各画像処理装置は、前記機械学習器の教師あり学習によって得られた学習結果を利用可能な請求項９に記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物の像の特徴を表すモデルパターンに基づいて入力形状情報から対象物の像を検出する画像処理システムに関する。
【背景技術】
【０００２】
従来、撮像装置等により取得した入力形状情報（入力画像）から対象物の像を検出する技術において、対象物の像をモデル化したモデルパターンやテンプレート等の基準情報と入力形状情報のマッチングを行って合致度が所定のレベルを越えたときに対象物が検出されたと判断する技術が知られている。この種の技術に関するものとして特許文献１〜３がある。
【０００３】
特許文献１には、入力画像におけるマスク領域以外の領域を背景画像として学習することで、前景画像と背景画像を分離する画像処理技術について記載されている。特許文献２には、ユーザが生成したテンプレートモデルと入力画像から抽出した特徴量のマッチングを行い、テンプレートモデルを構成する代表点の位置を修正する技術について記載されている。特許文献３には、画像中の対象物体を検出するために、入力画像と学習用画像に施す画像処理のパラメータで最適なものを探索し、そのパラメータに基づき学習用画像と入力画像に画像処理を施す技術について記載されている。
【０００４】
非特許文献１には、モデルパターンを構成する特徴点として入力画像からエッジ点を抽出する法について記載されている。エッジ点は画像中での輝度変化が大きな点である。一般に対象物の輪郭線の像は輝度勾配が大きくなるので、エッジ点を特徴量として使うことで対象物の輪郭線形状のマッチングを行う。例えば、検出すべき対象物を含む画像から抽出したエッジ点群をモデルパターンとして記憶しておき、撮像装置によって取得された入力画像から抽出されたエッジ点群とモデルパターンのエッジ点群の合致度に基づいて対象物を検出する。この類の手法として一般化ハフ変換等が知られている。また、エッジ点以外にもモデルパターンを構成する要素を抽出する方法を開示するものとして非特許文献２がある。非特許文献２では入力画像からＳＩＦＴ特徴点を抽出する方法について記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２０９９６６号公報
【特許文献２】特開２０００−２１５３１９号公報
【特許文献３】特開２０１４−１３７７５６号公報
【非特許文献】
【０００６】
【非特許文献１】「コンピュータビジョン」（David A. Forsyth (著), Jean Ponce (著), 大北 剛 (翻訳) 共立出版）２００７．１
【非特許文献２】"Object Recognition from Local Scale-Invariant Features", David G. Lowe, Proc. of the International Conference on Computer Vision, Corfu (Sept. 1999)
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、入力画像から生成されたモデルパターンが対象物の特徴を適切に表していない場合がある。例えば、入力画像には、輪郭線等のように検出に適したエッジ点以外にも輪郭線以外の濃淡変化等のように検出に適さないエッジ点が含まれることも多い。そのため、入力画像からモデルパターンを生成するときに検出すべきでない部分も同時に検出されてしまうことがある。鋳物の部品を検出する場合では、鋳肌は輪郭線の個体差がある上、鋳肌面のテクスチャもエッジ点として抽出されることが多く、機械加工した部分の輪郭線を検出する方がマッチング精度の観点から好ましい。
【０００８】
このような検出に適さない要素はユーザの操作により、モデルパターンから除外できる。例えば、入力画像から生成したモデルパターンにおいて、特定の箇所にマスクをして該マスクの範囲内の要素はモデルパターンの要素として含まれないようにすることもできる。また、モデルパターンを構成する要素は、削除するだけでなく新たに追加することもできるし、既存の要素の位置を変更することもできる。しかし、ユーザが手作業でモデルパターンを修正する作業は煩雑であり、マッチングに使用できる良いモデルパターンに修正するためには知識が必要となる。入力画像から最適なモデルパターンが学習により自動的に生成されることが望ましい。
【０００９】
この点、特許文献１の技術では人物の位置をユーザが指定することで前景画像と背景画像の分離を学習しているものの、モデルパターンを生成する方法を学習しているわけではない。また、特許文献２の方法では、モデルパターンを構成する特徴点の位置は自動的に修正されるが、修正された位置が正しいのか否かを判断した要素が含まれない。特許文献３における学習は対象物を検出するための辞書を作成する作業であり、上述のようなモデルパターンを構成する要素が適切でなかったときに行われる修正が反映されない。このように、従来技術は、マッチングに使用されるモデルパターンの生成の過程で行われた修正を反映させることができず、モデルパターンを生成する方法を学習するものではなかった。
【００１０】
本発明は、入力形状情報から取得されるモデルパターンの生成過程で行われた修正を学習することにより、別の入力形状情報に対して適切なモデルパターンを自動で生成できる画像処理システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
（１）本発明は、対象物（例えば、後述の対象物２）の像の特徴を表すモデルパターン（例えば、後述のモデルパターン５０）に基づいて入力形状情報（例えば、後述の入力画像５、ＣＡＤデータ、三次元点群データ）から前記対象物の像を検出する画像処理システム（例えば、後述の画像処理システム１，２０１，３０１）であって、前記入力形状情報から生成された前記モデルパターンを取得するモデルパターン取得部（例えば、後述のモデルパターン取得部３１）と、前記モデルパターン取得部によって取得された前記モデルパターンを修正するモデルパターン修正部（例えば、後述の操作盤３５）と、前記モデルパターン修正部によって修正された前記モデルパターンの修正情報と前記入力形状情報を関連付けた学習データの集まりを用いた教師あり学習により、前記入力形状情報から前記モデルパターンを生成するための生成情報を生成する機械学習器（例えば、後述の機械学習器４０）と、を備え、入力された入力形状情報と前記生成情報を用いて学習結果が反映されたモデルパターンを生成可能な画像処理システムに関する。
【００１２】
（２）（１）に記載の画像処理システムにおいて、前記入力形状情報は、視覚センサ（例えば、後述の視覚センサ１１）により撮像された画像情報であってもよい。
【００１３】
（３）（１）に記載の画像処理システムにおいて、前記入力形状情報は、ＣＡＤデータであってもよい。
【００１４】
（４）（１）に記載の画像処理システムにおいて、前記入力形状情報は、３次元点群データであってもよい。
【００１５】
（５）（１）から（４）の何れかに記載の画像処理システムにおいて、前記修正情報は、前記モデルパターンを構成する要素に設定された重みの情報であり、前記生成情報は、前記要素に重み情報を設定するための情報であり、前記入力形状情報から生成された前記要素の重みが前記生成情報に基づいて設定されてもよい。
【００１６】
（６）（１）から（４）の何れかに記載の画像処理システムにおいて、前記修正情報は、前記入力形状情報中の前記モデルパターンとする領域として指定された情報であり、前記生成情報は、前記入力画像中の前記モデルパターンとする領域を指定するための情報であり、前記入力形状情報から前記モデルパターンの領域が前記生成情報に基づいて指定されてもよい。
【００１７】
（７）（１）から（４）の何れかに記載の画像処理システムにおいて、前記修正情報は、前記モデルパターンを構成する要素の位置、姿勢、明るさ等の物理量であり、前記生成情報は前記要素の物理量を設定するための情報であり、前記入力形状情報から取得された前記要素の物理量が前記生成情報に基づいて設定されてもよい。
【００１８】
（８）（１）から（４）の何れかに記載の画像処理システムにおいて、前記修正情報は、前記モデルパターンそのものを示す情報であり、前記生成情報は、前記入力形状情報から前記モデルパターンを生成するための情報であり、前記入力形状情報から前記生成情報に基づいて前記モデルパターンが生成されてもよい。
【００１９】
（９）（１）から（８）の何れかに記載の画像処理システムにおいて、前記機械学習器は前記入力形状情報を取得する複数の入力形状情報取得部（例えば、後述の視覚センサ１１、画像処理装置１０）から前記学習データの集まりを取得して教師あり学習を行ってもよい。
【００２０】
（１０）（９）に記載の画像処理システムにおいて、前記入力形状情報取得部は画像処理を行う画像処理装置（例えば、後述の画像処理装置１０）であり、各画像処理装置は、前記機械学習器の教師あり学習によって得られた学習結果を利用可能であってもよい。
【発明の効果】
【００２１】
本発明の画像処理システムによれば、入力形状情報から取得されるモデルパターンの生成過程で行われた修正を学習することにより、別の入力形状情報に対して適切なモデルパターンを自動で生成できる。
【図面の簡単な説明】
【００２２】
【図１】本実施形態の画像処理システムが適用される視覚センサの位置が固定される装置の例を示す模式図である。
【図２】本実施形態の画像処理システムが適用される視覚センサの位置が移動する装置の例を示す模式図である。
【図３】本実施形態の画像処理システムの機能ブロック図である。
【図４】モデルパターンを作成する手順を示すフローチャートである。
【図５】画像にモデルパターン指定領域を指定した様子を示す図である。
【図６】複数の特徴点から構成されるモデルパターンを示す図である。
【図７】モデルパターンの修正処理における不要な特徴点を削除する様子を示す図である。
【図８】モデルパターンの修正処理における特徴点を追加する様子を示す図である。
【図９】モデルパターンの修正処理における特徴点の位置、姿勢及び明るさ等の物理量を修正する様子を示す図である。
【図１０】モデルパターンの学習の手順を示すフローチャートである。
【図１１】全体画像にマスクをかけて不要な特徴点を削除する様子を示す図である。
【図１２】本発明の一実施形態に係る複数の視覚センサが接続される画像処理システムの例を模式的に示す図である。
【図１３】本発明の一実施形態に係る複数の画像処理装置が接続される画像処理システムの例を模式的に示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の好ましい実施形態について、図面を参照しながら説明する。本発明の一実施形態に係る画像処理システム１は、対象物２の像の特徴を表すモデルパターン５０に基づいて入力画像５から前記対象物の像を検出するためのシステムである。まず、本実施形態の画像処理システム１が適用される装置について２つの例を説明する。
【００２４】
図１は、本実施形態の画像処理システム１が適用される視覚センサ１１の位置が固定される装置６の例を示す模式図である。図１に示すように、対象物２は作業台４に設置されている。視覚センサ１１は、対象物２を撮像するためのカメラである。視覚センサ１１は、支持手段（図示省略）により対象物２を撮像できる位置に固定される。視覚センサ１１が取得した画像情報は画像処理装置１０に送信される。画像処理装置１０は、視覚センサ１１から受信した入力画像５（図５参照）に基づいて後述する画像処理により対象物２の像を検出する。
【００２５】
図１では、視覚センサ１１の位置が固定される例を説明した。次に、視覚センサ１１の位置が移動する場合について図２を参照して説明する。図２は、本実施形態の画像処理システム１が適用される視覚センサ１１の位置が移動する装置７の例を示す模式図である。なお、図１を参照して説明した装置６の構成と共通又は同様の構成については同じ符号を付してその説明を省略する場合がある。
【００２６】
図２には、先端にロボットハンド２１が装着されるアーム型のロボット２０が示される。この例の視覚センサ１１はロボット２０の手先となるロボットハンド２１に固定される。ロボットハンド２１は、ロボット２０や自身の機構により移動する可動部である。従って、視覚センサ１１の位置も移動することになる。画像処理を行う画像処理装置１０は、ロボット２０の動き等を制御するロボット制御装置２５と通信可能に構成されており、画像処理装置１０とロボット２０の間で相互に情報のやり取りが行えるようになっている。画像処理装置１０は、ロボット２０及びロボットハンド２１の移動や状態を考慮しながら視覚センサ１１からの入力画像５（図５参照）に基づいて後述する画像処理により対象物２の像の検出を行う。
【００２７】
以上説明したように、本実施形態の画像処理システム１は、視覚センサ１１の位置が固定型の装置６及び視覚センサ１１の位置が可動型の装置７の何れにも適用できる。次に、画像処理システム１による画像処理について説明する。図３は、本実施形態の画像処理システム１の機能ブロック図である。
【００２８】
図３に示すように、本実施形態の画像処理システム１は、画像処理を行うコンピュータである画像処理装置１０と、入力画像５を取得する視覚センサ１１と、操作者が入力画像５から生成したモデルパターン５０の修正等を行う操作盤（操作部）３５と、入力画像５やモデルパターン５０等の画像情報を表示する表示装置（出力部）３６と、を備える。
【００２９】
画像処理装置１０は、ＣＰＵや所定のソフトウェアを記憶する記憶媒体等を備えるコンピュータにより実現される。本実施形態の画像処理装置１０は、モデルパターン取得部３１と、状態観測部３２と、記憶部３３と、機械学習器４０と、を含んで構成される。
【００３０】
モデルパターン取得部３１は、視覚センサ１１が取得した入力画像５から生成されたモデルパターン５０及びモデルパターン５０の修正に関する修正情報を取得する。状態観測部３２は、入力データとして入力画像５を取得する。本実施形態の修正情報は、操作者によって修正されたときの操作者生成情報が修正情報として取得される。
【００３１】
記憶部３３は、画像処理装置１０に関する各種の情報を記憶される。本実施形態の記憶部３３は、モデルパターン５０及び修正情報に入力画像５を関連付けた組情報を学習データとして複数記憶する。以下、記憶部３３に記憶される学習データの集まりを学習データセットと称して説明する。
【００３２】
機械学習器４０は、記憶部３３に記憶された学習データセットに基づいて入力画像５からモデルパターン５０を適切に生成するための生成情報を出力するように機械学習を行って学習モデルを取得する。取り出される出力が推定の対象となる生成情報に一致するように機械学習器４０に入力と出力との関係を学習させておくことにより、入力画像５に応じて生成情報を推定することができる。本実施形態では、多層ニューラルネットワークを含むニューラルネットワークにより構築された学習モデルに従って機械学習が行われる。入力層，出力層，そして中間層を含むニューラルネットワークにより構築された学習モデルは適宜の方式を用いることができる。例えば、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ Ｎｅｕｒａｌ Ｎｅｔｗｏｒｋ）を適用することもできる。
【００３３】
本実施形態では、対象物２、視覚センサ１１及び画像処理装置１０を環境とし、操作者が操作盤３５を使用してモデルパターン５０を修正したときの修正情報と入力画像５のペア（組）を正解データ（教師データ）とする。修正情報は、修正後のモデルパターン５０や、モデルパターン５０を生成するときに指定されるモデルパターン指定領域６０や、モデルパターン５０を構成する要素（後述する特徴点）の物理量の修正量や重み等である。機械学習器４０は、学習データの集合を用いて機械学習を行うことにより、入力画像（入力データ）から目標のデータ（生成情報）を写像する関数を取得する。
【００３４】
次に、モデルパターン５０の作成例について説明する。図４は、モデルパターン５０を作成する手順を示すフローチャートである。図５は、画像にモデルパターン指定領域６０を指定した様子を示す図である。図６は、複数の特徴点Ｐ_ｉから構成されるモデルパターン５０を示す図である。
【００３５】
図５に示すように、モデルパターン５０として教示したい対象物２を視覚センサ１１の視野内に配置して当該対象物２の画像を撮像し、対象物２が含まれる入力画像５を取得する（ステップＳ１０１）。このとき、視覚センサ１１と対象物２の位置関係は、実際の使用時に対象物２を検出するときの位置関係と同じ位置関係になるように行うことが好ましい。
【００３６】
撮像した画像において、対象物２が映った領域をモデルパターン５０の領域として指定する（ステップＳ１０２）。以下、このステップＳ１０２で指定した領域をモデルパターン指定領域６０と称する。本実施形態のモデルパターン指定領域６０は、対象物２を囲むように矩形や円形で指定される。後述するように、このモデルパターン指定領域６０を修正情報（操作者生成情報）として記憶し、機械学習に用いることもできる。
【００３７】
次に、特徴点の抽出を行う（ステップＳ１０３）。特徴点は、モデルパターン５０を構成するものである。モデルパターン指定領域６０から複数の特徴点Ｐ_ｉ（ｉ＝１〜ＮＰ）が抽出される。特徴点Ｐ_ｉの抽出方法としては、種々の方法を用いることができる。本実施形態では、画像中で輝度勾配が大きな点であり、対象物の輪郭形状を取得するために使用できるエッジ点を特徴点Ｐ_ｉとして用いる。
【００３８】
エッジ点の物理量は、そのエッジ点の位置、輝度勾配方向、輝度勾配の大きさ等がある。エッジ点の輝度勾配の方向を特徴点の姿勢と定義すると、位置とあわせて特徴点の位置姿勢を定義することができる。特徴点の物理量としてエッジ点の物理量、即ちエッジ点の位置、姿勢（輝度勾配の方向）、輝度勾配の大きさを記憶する。
【００３９】
モデルパターン座標系５１を定義し、モデルパターン座標系５１及び原点Ｏに基づいて特徴点Ｐ_ｉの姿勢ベクトルｖ_Ｐｉや位置ベクトルｔ_Ｐｉ等で表現する。モデルパターン座標系５１に設定される原点Ｏは、例えば、モデルパターン５０を構成する全ての特徴点Ｐ_ｉの重心が原点Ｏとして定義される。なお、原点Ｏの定義方法は、特徴点Ｐ_ｉから任意の１点を選択する等、適宜の方法を採用できる。また、モデルパターン座標系５１を用いる方法も一例であり、他の方法を利用して特徴点Ｐ_ｉの位置や姿勢を表すこともできる。また、モデルパターン座標系５１の軸方向（姿勢）は、例えば、モデルパターン５０を構成する特徴点Ｐ_ｉから任意の２点を選択して、その一方から他方に向かう方向がＸ軸方向となるように定義し、当該Ｘ軸方向に直交する方向をＹ軸方向と定義してもよい。また、モデルパターン５０の作成を行った画像において画像座標系とモデルパターン座標系５１が平行になるように定義することもできる。このように、モデルパターン座標系５１及び原点Ｏの設定は、事情に応じて適宜変更できる。なお、特徴点としてエッジ点を抽出する方法自体は、非特許文献１にも記載される公知な技術であり、その他の詳細な説明については省略する。
【００４０】
次に、抽出された特徴点Ｐ_ｉの物理量に基づいてモデルパターン５０の生成を行う（ステップＳ１０４）。抽出された特徴点Ｐ_ｉの物理量が、モデルパターン５０を構成する特徴点Ｐ_ｉとして記憶部３３に記憶される。本実施形態では、モデルパターン指定領域６０内にモデルパターン座標系５１を定義し、特徴点Ｐ_ｉの位置や姿勢を、画像座標系７０（図５参照）で表現された値から、モデルパターン座標系５１（図６参照）で表現された値で記憶される。
【００４１】
モデルパターン５０を修正する必要がある場合、モデルパターンの修正を行う（ステップＳ１０５）。このステップＳ１０５におけるモデルパターン５０の修正は、操作者によって行われる。このステップＳ１０５で操作された情報が、修正情報として記憶部３３に記憶される。なお、修正を行わなかった場合も、修正が行われなかった情報を修正情報として記憶することも可能である。
【００４２】
次に、ステップＳ１０５において記憶される修正情報の例について説明する。まず、不要な特徴点Ｐ_ｉを削除する例について説明する。以下の説明において不要な特徴点Ｐ_ｉを不要な特徴点Ｄとして説明する。
【００４３】
図７は、モデルパターン５０の修正処理における不要な特徴点Ｄをマスク５５した様子を示す図である。図７に示すように、モデルパターン５０の生成過程において、不要な特徴点Ｄが抽出される場合がある。操作者は、表示装置３６の操作画面上で不要な特徴点Ｄを含むようにマスク５５を掛けるように操作盤３５を操作する。そして、マスク５５を掛けた領域内の特徴点Ｄ（特徴点Ｐ_ｉ）を削除する。特徴点Ｄが削除された複数の特徴点Ｐ_ｉからなるモデルパターン５０が修正後のモデルパターン５０として記憶部３３に記憶される。この方法では、マスク５５を掛けた領域を０、マスク５５を掛けない領域を１とするマスク画像を修正情報（教師データ）として記憶することができる。また、不要な特徴点Ｄを削除した後のモデルパターン５０自体を修正情報（教師データ）として記憶してもよい。
【００４４】
次に、モデルパターン５０を構成する複数の特徴点Ｐ_ｉの重みを変更した情報を修正情報として機械学習に用いる例について説明する。特徴点Ｐ_ｉの重みを示す重み情報は、モデルパターン５０の特徴点Ｐ_ｉと入力画像５の特徴点のマッチングするときの一致度の計算に使用することができる情報である。例えば、図７において特徴点Ｄの重みを０にすれば、その特徴点Ｄは削除したものと見なすことができ、モデルパターン５０を構成する特徴点Ｐ_ｉから不要な特徴点Ｄを削除することは、重みの付与と捉えることができる。デフォルトではモデルパターン５０の特徴点Ｐ_ｉの重みを１とし、操作者が重みを変更する箇所をマスク５５で指定する等して重みを変更ができる。この方法では、重みに比例する整数値を各画素値とする重み画像、又は重み付与後のモデルパターン５０を修正情報として記憶することができる。
【００４５】
次に、モデルパターン５０に必要な特徴点Ｐ_ｉを追加する例について説明する。以下の説明において追加する特徴点Ｐ_ｉを追加する特徴点Ａとして説明する。図８は、モデルパターン５０の修正処理における特徴点Ａを追加する様子を示す図である。図８に示すように、抽出されるべき特徴点Ｐ_ｉが抽出されない場合があり、特徴点Ａを追加したい場合がある。
【００４６】
操作者は、操作画面上で特徴点Ｐ_ｉを追加したい箇所に線分５６を配置する（図８の一点鎖線参照）。この線分５６上に適当な間隔で特徴点Ａを配置する。そして、特徴点Ａが追加されたモデルパターン５０が記憶部３３に記憶される。この方法では、追加した線分５６、追加した特徴点Ａ及び特徴点Ａが追加されたモデルパターン５０等を修正情報として記憶することができる。
【００４７】
次に、モデルパターン５０の特徴点Ｐ_ｉの位置、姿勢及び明るさ等の物理量を修正する例について説明する。図９は、モデルパターン５０の修正処理における特徴点Ｐ_ｉの位置、姿勢及び明るさ等の物理量を修正する様子を示す図である。以下の説明において修正後の特徴点Ｐ_ｉを修正後の特徴点Ｃとして説明する。また、図９では、修正対象の特徴点Ｐ_ｉが破線で示される。
【００４８】
図９に示すように、特徴点Ｐ_ｉの位置、姿勢、明るさを修正したい場合がある。操作者は、操作画面上で特徴点Ｐ_ｉの位置を修正する。そして、修正対象の特徴点Ｐ_ｉが修正後の特徴点Ｃに置き換えられたモデルパターン５０を新たなモデルパターン５０として記憶部３３に記憶する。この場合には、修正後の特徴点Ｃ、位置修正が反映された後のモデルパターン５０等を修正情報として記憶すればよい。
【００４９】
以上、記憶部３３に学習データとして記憶される修正情報の例について説明した。次に、本実施形態の画像処理装置１０による機械学習の処理について説明する。図１０は、モデルパターン５０の学習の手順を示すフローチャートである。
【００５０】
入力画像５を取得する（ステップＳ２０１）。ここで取得される入力画像５は、モデルパターン指定領域６０内の部分的な画像であってもよい。取得された入力画像５は記憶部３３に記憶される。
【００５１】
モデルパターン５０を教示し、必要に応じてモデルパターン５０の修正を行う（ステップ２０２）。ステップＳ２０１とステップＳ２０２の処理により、入力データである入力画像５と、正解データである修正情報と、のペア（組）を１つ取得でき、これらの情報が記憶される。学習データのペアをＮ個取得するためにステップＳ２０１とステップＳ２０２の処理をＮ回繰り返す。ステップＳ２０１，ステップＳ２０２の処理がＮ回実行されることで、複数（Ｎ個）の学習データが取得される。これらのＮ個の学習データの集まりが学習データセットとなる。
【００５２】
Ｎ個の学習データの集まりである学習データセットを用いて学習を行う（ステップＳ２０３）。モデルパターン５０を生成するために、入力画像５を取得する（ステップＳ２０４）。機械学習器４０に新たな入力画像を入力し、モデルパターン生成情報を生成する（Ｓ２０５）。入力画像５とモデルパターン生成情報から学習結果が反映されたモデルパターン５０が生成される（Ｓ２０６）。
【００５３】
次に、ステップＳ２０３の処理の一例として操作者によるマスク５５を用いた修正処理を修正情報として学習する場合について説明する。学習処理は以下の手順で行われる。
（１）取得されたＮ個の学習データセットから学習データを１つ取り出す。
（２）次に、学習データの入力画像５から、修正情報の中のモデルパターン指定領域６０に含まれる画像を切り抜く。
（３）学習モデルに入力画像５の各画素値を入力し、マスク５５の画像の生成を行う。
（４）修正情報（学習データ）のマスク画像と生成されたマスク５５の画像の誤差を計算する。
（５）学習モデルで誤差逆伝播法により誤差を逆伝搬して学習モデルのパラメータを更新する。
（１）〜（５）の処理では、入力画像を入力データとし、編集したマスク５５の画像をラベルとした教師データを用いて機械学習器４０による機械学習が行われることになる。
【００５４】
次に、マスク５５を用いた修正処理を学習した学習モデルを用いたモデルパターン５０の生成について説明する。この処理はステップＳ２０４、Ｓ２０５の処理に該当し、以下の手順で行われる。
（１）操作者が入力画像５上で、モデルパターン指定領域６０を指定する。
（２）モデルパターン指定領域６０から部分画像を切り抜く。
（３）部分画像から通常の処理でモデルパターン５０を生成する。
（４）学習モデルに部分画像（入力画像）を入力し、部分画像に適したマスク５５の画像（生成情報）を得る。
（５）生成したモデルパターン５０にマスク画像を適用し、マスク５５がかかっている範囲の特徴点Ｄが削除される。
（１）〜（５）の処理を経ることにより、学習した機械学習器４０に入力画像５を入れると、学習結果が反映されたマスク５５の画像が自動で出力されることになり、マスク５５の範囲の不要な特徴点Ｄが自動的に削除される。これによって最終的に学習結果が反映されたモデルパターン５０が生成されることになる。
【００５５】
図１１は、全体画像にマスク５５をかけて不要な特徴点Ｄ’を削除する様子を示す図である。図１１に示すように、部分画像を切り抜く処理を省略し、入力画像５の全体を使用することも可能である。この方法では、モデルパターン指定領域６０以外にマスク５５が掛かるように入力画像５全体に処理をすればよい。この場合の処理は以下の手順で行われる。
（１）学習モデルに入力画像５を入力し、マスク画像を得る。
（２）入力画像５から通常の処理でモデルパターン５０を生成する。
（３）生成したモデルパターン５０にマスク５５の画像を適用し、マスク５５がかかっている特徴点Ｄ’が削除される。
（１）〜（３）の処理を経ることによっても、自動的に不要な特徴点Ｄ’が削除されることになり、最終的に学習結果が反映されたモデルパターン５０が生成されることになる。
【００５６】
上記実施形態によれば、以下のような効果を奏する。
画像処理システム１は、入力画像５から生成されたモデルパターン５０を取得するモデルパターン取得部３１と、モデルパターン取得部３１によって取得されたモデルパターン５０を修正する操作盤（モデルパターン修正部）３５と、操作盤３５によって修正されたモデルパターン５０の修正情報と入力画像５を関連付けた学習データの集まりを用いた教師あり学習により、入力画像５からモデルパターン５０を生成するためのモデルパターン生成情報を生成する機械学習器４０と、を備え、新たに入力された入力画像５とモデルパターン生成情報を用いて学習結果が反映されたモデルパターンを生成可能である。これにより、様々な入力画像５に対して適切なモデルパターン５０を取得するために操作者が行った作業工程が学習され、未知の画像であってもユーザによる操作なしで学習結果が反映された適切なモデルパターン５０を取得することができる。
【００５７】
また、本実施形態では、入力画像５は視覚センサ１１により撮像された画像情報である。これにより、視覚センサ１１によって撮像された実際の入力画像を利用することで、より実作業に応じた学習モデルを取得することができる。
【００５８】
また、本実施形態では、修正情報は、モデルパターン５０を構成する特徴点（要素）Ｐ_ｉに設定された重みの情報であり、モデルパターン生成情報は、モデルパターン５０を構成する特徴点Ｐ_ｉに重み情報を設定するための情報とすることができる。この場合、入力画像５から生成されたモデルパターン５０を構成する特徴点Ｐ_ｉの重みが生成情報に基づいて設定される。これにより、複数の特徴点Ｐ_ｉのうち、どの特徴点Ｐ_ｉが重要か、または不要かが学習され、学習に使用していない別の画像を用いた場合でも、操作者による操作なしで不要な特徴点Ｄが削除されたモデルパターン５０を取得することができる。
【００５９】
また、本実施形態では、修正情報は、入力画像５中のモデルパターン５０とする領域として指定された情報であり、モデルパターン生成情報は、入力画像５中のモデルパターン５０とする領域を指定するための情報とすることができる。この場合、入力画像５からモデルパターンの領域がモデルパターン生成情報に基づいて指定される。これにより、入力画像５のうち、モデルパターン５０を抽出するための範囲をどの程度の大きさに設定すべきかが学習され、操作者による操作なしでモデルパターン５０を抽出するためのモデルパターン指定領域６０が自動で指定されるようになり、適切な範囲で特徴点Ｐ_ｉが抽出されるようになって適切なモデルパターン５０の生成が可能となる。
【００６０】
また、本実施形態では、修正情報は、モデルパターン５０を構成する特徴点Ｐ_ｉの位置、姿勢、明るさ等の物理量であり、モデルパターン生成情報はモデルパターン５０を構成する特徴点Ｐ_ｉの物理量を設定するための情報とすることができる。この場合、入力画像５から取得されたモデルパターン５０を構成する特徴点Ｐ_ｉの物理量がモデルパターン生成情報に基づいて設定される。これにより、特徴点Ｐ_ｉの位置、姿勢、明るさ等の物理量の操作者による修正が学習される。また、特徴点Ａを追加するために編集した図形が教師データとして機械学習される場合、新たに入力画像５が機械学習器４０に入力されると必要な部分に特徴点Ａの追加が反映された適切な図形のモデルパターン５０が出力されることになる。
【００６１】
また、本実施形態では、修正情報は、モデルパターン５０そのものを示す情報であり、モデルパターン生成情報は、入力画像５からモデルパターン５０を生成するための情報（例えば、関数やアルゴリズム）とすることができる。この場合、入力画像５からモデルパターン生成情報に基づいて最終的なモデルパターン５０が生成される。これにより、入力画像５を入力とし操作者により最終的に生成されたモデルパターン５０を教師データとして機械学習器４０が学習を行うことにより、操作者による操作なしで機械学習器４０に入力画像５を入力することにより、適切なモデルパターン５０を自動で生成できる。
【００６２】
上記実施形態では、モデルパターン５０を構成する特徴点としてエッジ点を用いた例を説明したが、この構成に限定されない。次に、モデルパターン５０を生成する方法として、上記実施形態と異なる方法を用いた場合について説明する。
【００６３】
まず、エッジ点以外の方法で特徴点を抽出する方法について説明する。特徴点は、エッジ点以外にも種々の方法で検出することができる。例えば、ＳＩＦＴ（Scale-Invariant Feature Transform）のような特徴点を使用してもよい。なお、画像からＳＩＦＴ特徴点を抽出する方法自体は、非特許文献２に記載される公知の技術であり、その詳細な説明を省略する。
【００６４】
また、画像に写った対象物２の輪郭線に合うように線分、矩形、円等の幾何図形を配置することでモデルパターン５０を作成してもよい。この場合、輪郭線を構成する幾何図形上に適当な間隔で特徴点を設けることで、モデルパターン５０を作成すればよい。また、モデルパターンは各画素から構成される画像を用いることもできる。
【００６５】
上記実施形態では、視覚センサ（カメラ）１１によって検出された画像を入力画像５としたが、その他の手段で取得した画像であってもよい。例えば、入力画像５にＣＡＤデータを用いることもできる。２次元ＣＡＤデータの場合、上述の幾何図形を使った方法と同じ方法でモデルパターンを作成することができる。また、３次元ＣＡＤデータの場合、ＣＡＤデータで表現された対象物２の形状を画像上に投影し、投影された像から特徴点を抽出すればよい。
【００６６】
ＣＡＤデータを用いたモデルパターン５０の作成は以下のように行われる。
（１）視覚センサ（カメラ）１１で撮像した画像（撮像面）上に原点Ｏを置くローカル座標系を定義する。
（２）予め、視覚センサ（カメラ）１１をキャリブレーションしておくことで、ローカル座標系で表現された３次元点を撮像した画像上の２次元点に変換することができる。
（３）ローカル座標系にＣＡＤデータとして表現された対象物２を仮想的に配置する。配置されたＣＡＤデータはローカル座標系で表現される。視覚センサ（カメラ）１１と対象物２の相対関係は、実際に対象物の検出を行うときの相対関係と略同じになるように設定する。
（４）輪郭線から所定の間隔で輪郭線上の３次元点群を取得する。必要があれば、ＣＡＤデータの中からモデルパターンとして使う輪郭線を指定する。
（５）３次元点群を視覚センサ（カメラ）１１で撮像した画像上に投影し、画像座標系上の２次元点群を求める。ＣＡＤデータ上で明暗の向きを指定すれば、輝度勾配の方向も付加することができる。ここで、明暗の向きとは、輪郭線を境界とする二つの領域のどちらが明るいかを示すものである。
（６）求められた画像座標系上の２次元点群をモデル座標系で表現するように変換し、特徴点として記憶部３３に記憶する。
以上説明したように、入力画像５は、ＣＡＤデータに基づいて生成された画像情報であってもよい。このように、入力画像５には種々の方式を利用することができる。例えば、距離画像や３次元点群データを入力画像５として用いることもできる。
【００６７】
また、上記実施形態では、単独の視覚センサ１１が接続される画像処理装置１０によって構成される画像処理システム１を例に説明したが、この構成に限定されるわけではない。次に、上記実施形態とは異なる構成の画像処理システムについて説明する。なお、以下の例において、上記実施形態と同様の構成については同じ符号を付してその詳細な説明を省略する。
【００６８】
図１２は、本発明の一実施形態に係る複数の視覚センサ１１が接続される画像処理システム２０１の例を模式的に示す図である。図１２には、入力画像取得部としてＮ個の視覚センサ１１がネットワークバス１１０を介してセルコントローラ１００に接続されている。セルコントローラ１００は、上述の画像処理装置１０と同様の機能を有し、Ｎ個の視覚センサ１１のそれぞれから取得される入力画像５を取得する。図１２では、図示を省略しているが、ネットワークバス１１０には１又は複数の操作部が接続されており、この操作部を介してモデルパターン５０の修正が可能になっている。操作部での操作により生成された修正情報は対応する入力画像５との組にされ、学習データとしてセルコントローラ１００に記憶される。
【００６９】
このように、図１２に示す画像処理システム２０１では、機械学習器４０はセルコントローラ１００に記憶された学習データの集まりを取得して教師あり学習が行われることになる。この例では、学習処理を逐次オンラインで処理していくこともできる。
【００７０】
図１３は、本発明の一実施形態に係る複数の画像処理装置１０が接続される画像処理システム３０１の例を模式的に示す図である。図１３には、入力画像取得部としてｍ個の画像処理装置１０がネットワークバス１１０を介してセルコントローラ１００に接続されている。画像処理装置１０のそれぞれには視覚センサ１１が１又は複数接続されている。画像処理システム３０１全体としては合計ｎ個の視覚センサ１１を備えている。
【００７１】
このように、図１３に示す例では、画像処理装置１０のそれぞれで取得された修正情報が入力画像５とともにセルコントローラ１００に自動又は手動で送信される。セルコントローラ１００は複数の画像処理装置１０から送られてきた学習データの集まりを学習データセットとして記憶し、機械学習を行って学習モデルを構築する。学習モデルは、各画像処理装置１０で利用可能となる。
【００７２】
図１３に示す画像処理システム３０１は、入力画像取得部としての複数の画像処理装置１０を備え、各画像処理装置１０は、機械学習器４０の教師あり学習によって得られた学習結果を相互に利用できる。この例においても、学習処理を逐次オンラインで処理することができる。
【００７３】
以上、本発明の好ましい実施形態について説明したが、本発明は、上述の実施形態に制限されるものではなく、適宜変更が可能である。
【００７４】
例えば、モデルパターン５０の修正に対して行った操作者の操作そのものを修正情報として記録してもよい。この場合、モデルパターン５０を編集するための操作の系列が教師データとして機械学習器４０が学習することになり、学習した機械学習器４０に入力画像５が入力されると、モデルパターン５０を編集する操作の系列が出力されることになる。
【００７５】
上記実施形態では、特徴点の集合によって構成されるモデルパターンを例として説明したが、入力画像から切り抜いた部分画像をモデルパターンとしてもよいし、線分などの図形を組み合わせたものをモデルパターンとしてもよい。種々の方法で入力形状情報から生成されるものであればよく、モデルパターンの生成方法は適宜の方法を採用することができる。
【００７６】
上記実施形態では、モデルパターン修正部として操作盤３５による操作者の修正を例として説明したが、この構成に限定されない。マッチングの結果、自動で行われる修正処理を修正情報として機械学習することも可能である。この場合、修正処理を行うソフトウェアやデバイスがモデルパターン修正部となる。
【００７７】
上記実施形態では、入力形状情報として入力画像５を用いる例を主に説明したが、入力形状情報は、ＣＡＤデータや３次元点群データであってもよい。即ち、必ずしも画像そのものである必要はなく、形状を示す情報であれば画像を介さない場合であっても本発明を適用することができる。
【００７８】
上記実施形態では、説明の便宜上、画像処理システム１，２０１，３０１と画像処理装置１０を区別して説明したが、システムや装置の名称にとらわれるものではなく、単独の画像処理装置であっても本発明の要件を備えれば画像処理システムに該当する。
【符号の説明】
【００７９】
１，２０１，３０１  画像処理システム
５  入力画像（入力形状情報）
１０  画像処理装置（入力画像取得部）
１１  視覚センサ（入力画像取得部）
３１  モデルパターン取得部
３５  操作盤（モデルパターン修正部）
４０  機械学習器
５０  モデルパターン
【図１】
2018195107.tif 000003
【図２】
2018195107.tif 000004
【図３】
2018195107.tif 000005
【図４】
2018195107.tif 000006
【図５】
2018195107.tif 000007
【図６】
2018195107.tif 000008
【図７】
2018195107.tif 000009
【図８】
2018195107.tif 000010
【図９】
2018195107.tif 000011
【図１０】
2018195107.tif 000012
【図１１】
2018195107.tif 000013
【図１２】
2018195107.tif 000014
【図１３】
2018195107.tif 000015