(57)【特許請求の範囲】
【請求項１】
被写体の特性である被写体特性を取得する特性取得手段と、
前記特性取得手段で取得された被写体特性に応じて、前記被写体特性に対して予め定められた種類の画像処理を選択する選択手段と、
前記被写体の画像に対して前記選択手段により選択された種類の画像処理をあるパラメータを使用して施し、複製被写体画像を生成する画像処理手段と、
前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書を学習する学習手段と、
前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書のマッチング性能を検定する検定手段と、
を有し、
検定された前記マッチング性能が所定の条件を満たさない場合、前記画像処理手段は、使用するパラメータを変更して新たな複製被写体画像を追加生成し、
前記学習手段は、追加生成された前記複製被写体画像を用いて前記マッチング辞書を追加学習する、画像処理装置。
【請求項２】
前記特性取得手段で取得された被写体特性に、被写体が回転対称と見なせる旨の回転対称性が含まれていた場合、前記画像処理手段は、前記被写体の画像をランダムに回転させる画像処理を施し、被写体が回転対称と見なせない旨の回転対称性が含まれていた場合、前記画像処理手段は、前記被写体の画像を、パラメータとして設定されている回転角度に基づいて回転させる画像処理を施す、請求項１記載の画像処理装置。
【請求項３】
前記特性取得手段で取得された被写体特性に、被写体が鏡像対称と見なせる旨の鏡像対称性が含まれていた場合、前記画像処理手段は、前記被写体の画像を、パラメータとして設定されている反転させるか否かの情報に応じて鏡像反転させる画像処理を施す、請求項１又は２記載の画像処理装置。
【請求項４】
前記特性取得手段で取得された被写体特性に、被写体が単一平面上に存在すると見なせる旨の平面性が含まれていた場合、前記画像処理手段は、前記被写体の画像を、パラメータとして設定されている投射面の法線方向の傾き量に基づいて透視変換させる画像処理を施す、請求項１乃至３何れか１項記載の画像処理装置。
【請求項５】
前記特性取得手段で取得された被写体特性に、ぶれ耐性が必要である旨のぶれ耐性が含まれていた場合、前記画像処理手段は、前記被写体の画像に対して、パラメータとして設定されているぶれ量に基づいてぶれ合成する画像処理を施す、請求項１乃至４何れか１項記載の画像処理装置。
【請求項６】
前記特性取得手段で取得された被写体特性に、高速に検出する必要がある旨の検出速度性が含まれていた場合、前記画像処理手段は、前記被写体の画像を、パラメータとして設定されている縮小率に基づいて縮小する画像処理を施す、請求項１乃至５何れか１項記載の画像処理装置。
【請求項７】
画像処理装置が実行する画像処理方法であって、
被写体の特性である被写体特性を取得する特性取得ステップと、
前記特性取得ステップで取得された被写体特性に応じて、前記被写体特性に対して予め定められた種類の画像処理を選択する選択ステップと、
前記被写体の画像に対して前記選択ステップにより選択された種類の画像処理をあるパラメータを使用して施し、複製被写体画像を生成する画像処理ステップと、
前記画像処理ステップで生成された複製被写体画像を用いてマッチング辞書を学習する学習ステップと、
前記画像処理ステップで生成された複製被写体画像を用いてマッチング辞書のマッチング性能を検定する検定ステップと、
検定された前記マッチング性能が所定の条件を満たさない場合、前記画像処理ステップとは使用するパラメータを変更して新たな複製被写体画像を追加生成する追加生成ステップと、
追加生成された前記複製被写体画像を用いて前記マッチング辞書を追加学習する追加学習ステップと、
を含む画像処理方法。
【請求項８】
コンピュータを、
被写体の特性である被写体特性を取得する特性取得手段と、
前記特性取得手段で取得された被写体特性に応じて、前記被写体特性に対して予め定められた種類の画像処理を選択する選択手段と、
前記被写体の画像に対して前記選択手段により選択された種類の画像処理をあるパラメータを使用して施し、複製被写体画像を生成する画像処理手段と、
前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書を学習する学習手段と、
前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書のマッチング性能を検定する検定手段と、
して機能させ、
検定された前記マッチング性能が所定の条件を満たさない場合、前記画像処理手段は、使用するパラメータを変更して新たな複製被写体画像を追加生成し、
前記学習手段は、追加生成された前記複製被写体画像を用いて前記マッチング辞書を追加学習する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、画像中から物体を検出する技術として、非特許文献１に開示される手法が知られている。このマッチング辞書の学習において、特許文献１に開示される手法が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２８７３７８号公報
【非特許文献】
【０００４】
【非特許文献１】Ｖｉｏｌａ  ａｎｄ  Ｊｏｎｅｓ，  "Ｒａｐｉｄ  ｏｂｊｅｃｔ  ｄｅｔｅｃｔｉｏｎ  ｕｓｉｎｇ  ｂｏｏｓｔｅｄ  ｃａｓｃａｄｅ  ｏｆ  ｓｉｍｐｌｅ  ｆｅａｔｕｒｅｓ"，  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ，  ２００１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
マッチング辞書の学習に必要な被写体画像数の削減、若しくは同一の被写体画像数での性能の向上が求められる。特許文献１は、ある被写体画像から被写体画像を鏡像反転及び微量の回転を施し複製被写体画像を生成する技術を開示している。しかしながら特許文献１の技術では鏡像対称でない画像については複製被写体画像が生成されず、結果として必要な被写体画像数を削減できていない問題があった。
【０００６】
本発明はこのような問題点に鑑みなされたもので、学習に必要な被写体画像の数を削減することを目的とする。
【課題を解決するための手段】
【０００７】
そこで、本発明の画像処理装置は、被写体の特性である被写体特性を取得する特性取得手段と、前記特性取得手段で取得された被写体特性に応じて、前記被写体特性に対して予め定められた種類の画像処理を選択する選択手段と、前記被写体の画像に対して前記選択手段により選択された種類の画像処理をあるパラメータを使用して施し、複製被写体画像を生成する画像処理手段と、前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書を学習する学習手段と、前記画像処理手段で生成された複製被写体画像を用いてマッチング辞書のマッチング性能を検定する検定手段と、を有し、検定された前記マッチング性能が所定の条件を満たさない場合、前記画像処理手段は、使用するパラメータを変更して新たな複製被写体画像を追加生成し、前記学習手段は、追加生成された前記複製被写体画像を用いて前記マッチング辞書を追加学習する。
【発明の効果】
【０００８】
本発明によれば、学習に必要な被写体画像の数を削減することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置のハードウェア構成の一例を示す図である。
【図２】画像処理装置の機能構成等の一例を示す図である。
【図３】被写体画像の一例を示す図である。
【図４】背景画像群の一例を示す図である。
【図５】入力画像の一例を示す図である。
【図６】被写体特性の一例を示す図である。
【図７】被写体画像と被写体画像に画像処理を施した結果の一例を示す図である。
【図８】マッチング部による処理の一例を示すフローチャートである。
【図９】特性取得部の処理の一例を示すフローチャートである。
【図１０】学習部の処理の一例を示すフローチャートである。
【図１１】画像処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。
【００１１】
＜実施形態１＞
図１は、画像処理装置のハードウェア構成の一例を示す図である。
図１において、撮像素子１０１は、ＣＣＤ、ＭＯＳ、等で構成され、被写体像を光から電気信号に変換する。
信号処理回路１０２は、撮像素子１０１から得られた被写体像に関する時系列信号を処理しデジタル信号に変換する。
ＣＰＵ１０３は、ＲＯＭ１０４に格納されている制御プログラムを実行することにより、本装置全体の制御を行う。
ＲＯＭ１０４は、ＣＰＵ１０３が実行する制御プログラムや各種パラメータデータを格納する。ＣＰＵ１０３が制御プログラムを実行することによって、後述する画像処理装置の機能及びフローチャートに係る各処理が実現される。
ＲＡＭ１０５は、画像や各種情報を記憶する。また、ＲＡＭ１０５は、ＣＰＵ１０３のワークエリアやデータの一時待避領域として機能する。
ディスプレイ１０６は、例えば、ＬＣＤやＣＲＴで構成される。なお、本実施形態では、後述するフローチャートの各ステップに対応する処理を、ＣＰＵ１０３を用いてソフトウェアで実現することとするが、その処理の一部又は全部を電子回路等のハードウェアで実現するようにしてもよい。また、画像処理装置は、撮像素子１０１や信号処理回路１０２を省いて汎用ＰＣを用いて実現してもよいし、画像処理専用装置として実現するようにしてもよい。また、ネットワーク又は各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行してもよい。
【００１２】
図２は、画像処理装置の機能構成等の一例を示す図である。
本実施形態では被写体画像群２０１、背景画像群２０２、入力画像２０３を入力とする。
被写体画像群２０１は、マッチング辞書２１０が正例として学習するべき画像の集合である。この被写体画像の例を図３に示す。図３は、被写体画像の一例を示す図である。図３ではヒマワリの花を例示するが被写体の種別は問わない。従来、あるマッチング辞書２１０の学習に必要な被写体画像の数はその被写体の多様性に依存し、大きい多様性の網羅には多くの被写体画像数が必要であった。本実施形態の目的は、その被写体画像数を削減することであり、本実施形態の画像処理装置は、被写体画像の特性である被写体特性に応じた画像処理により被写体画像から多くの複製被写体画像を生成する。
背景画像群２０２は、マッチング辞書２１０が負例として学習するべき画像の集合である。背景画像群２０２の一例を図４に示す。図４は、背景画像群の一例を示す図である。背景画像群は、入力画像２０３のうち被写体を含まない領域を可能な範囲で網羅した画像であるべきである。しかしながら、背景画像群は、図４の様な画像から任意に切り出した部分画像の集合であってもよい。
入力画像２０３は任意の画像であり、マッチング部２１１は、前記画像にマッチング辞書２１０を適用する。入力画像２０３は、撮像素子１０１により取得される画像であってもよい。この画像の例を図５に示す。
【００１３】
図５は、入力画像の一例を示す図である。
特性取得部２０４は、学習対象となる被写体の被写体特性２０５を取得する。
被写体特性２０５は、被写体が持つ特性である。本実施形態が想定する被写体特性２０５の例を図６に示す。図６は、被写体特性の一例を示す図である。即ち、本実施形態では、被写体特性の一例として、回転対称性、鏡像対称性、平面性、ぶれ耐性、検出速度（検出速度性）の５種を用いて説明する。より具体的には、回転対称性とは、回転対称と見なせるか否か、鏡像対称性とは、鏡像対称と見なせるか否か、平面性とは、単一平面上に存在すると見なせるか否か、ぶれ耐性とは、ぶれ耐性が必要か否か、検出速度とは、高速に検出する必要があるか否か、である。更に被写体特性２０５は、それぞれの画像処理のパラメータの変更時の変更量等の他のパラメータを含んでもよいし、その他の特性を含んでもよい。
画像処理部２０６は、被写体画像群２０１に対し、被写体特性２０５に対応する画像処理を施し、複製被写体画像群２０７を生成する。本実施形態が想定する被写体特性と画像処理との対応を図６に示す。即ち、画像処理部２０６は、回転対称性を持つ場合に回転、鏡像対称性を持つ場合に鏡像反転、平面性を持つ場合に透視変換、ぶれ耐性を要する場合にぶれ合成、検出速度が必要な場合に縮小及びマージン付加、という画像処理を施す。なお、画像処理部２０６は、これらの画像処理を一つだけ実行してもよいし、任意の数、組み合わせて使用してもよい。
複製被写体画像群２０７は、被写体画像群２０１から被写体特性２０５に基づき画像処理部２０６により複製された画像群である。被写体画像が図３、即ち図７における７０１であり、被写体特性が図６の場合に、回転、鏡像反転、透視変換、ぶれ合成、縮小及びマージン付加、のそれぞれの処理により複製された画像を７０２〜７０６に示す。
画像処理パラメータ２０８は、画像処理部２０６の画像処理のそれぞれに用いられるパラメータを保存する。画像処理とそのパラメータとの対応を図６に示す。即ち、パラメータは、回転に対し回転角度、鏡像反転に対し反転するか否か、透視変換に対しその投射面の法線方向、ぶれ合成に対しぶれ量、縮小及びマージン付加に対して縮小率である。
学習部２０９は、背景画像群２０２を負例、複製被写体画像群２０７を正例としてマッチング辞書２１０を学習する。
マッチング辞書２１０は、画像処理装置が生成するマッチング辞書である。マッチング辞書２１０には辞書がマッチする画像の大きさ、マッチする画像の大きさに対する被写体の縮小率が含まれている。それぞれ図３の被写体画像における３０１、及び３０１と３０２との割合に相当する。なお、マッチング辞書２１０には、その他の情報が含まれていてもよい。
マッチング部２１１は、マッチング辞書２１０を入力画像２０３に適用し、マッチする領域を求める。図５を入力画像２０３とする場合に、図３を含む被写体画像群２０１から学習したマッチング辞書２１０を適用した結果を図５の５０１に示す。
【００１４】
マッチング部２１１による処理の一例を図８に示す。図８は、マッチング部による処理の一例を示すフローチャートである。マッチング部２１１は、入力画像２０３及びマッチング辞書２１０を入力とする。このフローチャートの処理は、例えば非特許文献１に示される様な、ピラミッド構造でサイズの、Ｗｉｎｄｏｗ  Ｓｈｉｆｔｉｎｇで位置ずれの耐性を確保するテンプレートマッチング手法である。
まず、ステップＳ８０１で、マッチング部２１１は、入力画像の最大縮小率を求め、入力画像の縮小率の初期値とする。例えば、マッチング部２１１は、入力画像のサイズ５０２をマッチング辞書２１０のサイズ３０１で割ることによってこの値を求める。また、マッチング部２１１は、画像の縦横で異なる値が出る場合、どちらか一方を用いればよい。
次に、ステップＳ８０２で、マッチング部２１１は、マッチ領域の大きさ及び領域中の被写体の割合からピクセルステップ及び画像拡大率を求める。マッチ領域の大きさ及びマッチ領域中の被写体の大きさはそれぞれマッチング辞書２１０に記録されているとする。ピクセルステップはマッチ領域の大きさ３０１からマッチ領域中の被写体の大きさ３０２を引いたものである。画像拡大率はマッチ領域中の被写体の大きさ３０２のマッチ領域の大きさ３０１による商である。但しこれらの値は目安であり、マッチング部２１１は、求められる検出性能等によりピクセルステップの値は変化させてもよい。
ステップＳ８０３では、マッチング部２１１は、終了条件を満たすまでステップＳ８０４からステップＳ８０８までの処理を繰り返す。終了条件は、例えば実時間で処理する必要があるならば一定の時間内、或いは入力画像の縮小率が１を下回り縮小しなくなるまで、とするが、任意の終了条件を設けてもよい。このステップの処理は非特許文献１等に記載のＰｙｒａｍｉｄ構造の生成に相当する。
ステップＳ８０４では、マッチング部２１１は、ステップＳ８０１及びステップＳ８０９で設定される入力画像の縮小率に基づき入力画像を縮小し縮小画像を生成する。
【００１５】
次にステップＳ８０５及び８０６では、マッチング部２１１は、ステップＳ８０４で生成した縮小画像のそれぞれ上端及び左端から、ステップＳ８０２で求めたピクセルステップずつ矩形領域を移動させながら、ステップＳ８０７〜ステップＳ８０８を繰り返す。ここで矩形領域は縮小画像上に設定され、その左上点はステップＳ８０５及び５０６で定義され、そのサイズはマッチング辞書２１０と同サイズとする。このステップの処理は非特許文献１等に記載のＷｉｎｄｏｗ  Ｓｈｉｆｔｉｎｇに相当する。
ステップＳ８０７では、マッチング部２１１は、ステップＳ８０５及びステップＳ８０６で設定したマッチングウィンドウからその特徴量を取得する。この特徴量は画像処理部２０６にて施される各種の画像処理の前後で異なる特徴量を取得するものが望ましい。非特許文献１に記載のＨａａｒ  ｌｉｋｅ  ｆｅａｔｕｒｅ，或いはＨｉｓｔｏｇｒａｍ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ等が適する。
ステップＳ８０８では、マッチング部２１１は、ステップＳ８０７で得た特徴量が、マッチング辞書２１０にマッチするか否かを判定する。非特許文献１に記載のＡｄａｂｏｏｓｔ，  或いはＳｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ等が適する。
ステップＳ８０９において、マッチング部２１１は、入力画像の縮小率に画像拡大率を積算し、入力画像の縮小率を減らす。即ち、マッチング部２１１は、より大きな画像に対してステップＳ８０５〜８０８を適用する。
ステップＳ８０３内のループを繰り返すうちに、一度でもステップＳ８０８においてマッチすると判断した場合、マッチング部２１１は、入力画像２０３にマッチング辞書２１０がマッチしたと判断する。一度もマッチすると判断しなかった場合、マッチング部２１１は、入力画像２０３にマッチング辞書２１０はマッチしないと判断する。
マッチング部２１１は、マッチするか否か、マッチする場合はその座標を出力する。
【００１６】
特性取得部２０４のフローチャートの処理を図９に示す。図９は、特性取得部の処理の一例を示すフローチャートである。
特性取得部２０４は、被写体画像群２０１及びマッチング辞書２１０を入力とする。また、特性取得部２０４は、被写体特性２０５を出力とする。
まず、ステップＳ９０１では、特性取得部２０４は、被写体画像群２０１に対応する被写体特性が事前に保存済みか否かを判断する。これは後述するステップＳ９０５で保存されるものである。特性取得部２０４は、事前に保存済みならばステップＳ９０２へ、そうでなければステップＳ９０３へ遷移する。
ステップＳ９０２では、特性取得部２０４は、保存済みの被写体特性を読み込み、特性取得部２０４の出力である被写体特性２０５とし、特性取得部２０４の処理を終了する。
ステップＳ９０３では、特性取得部２０４は、被写体画像群２０１中の任意の画像と学習済みのマッチング辞書２１０とを用いてマッチング部２１１を呼びだす。特性取得部２０４は、マッチするならステップＳ９０４へ、そうでなければステップＳ９０５へ遷移する。
ステップＳ９０４では、特性取得部２０４は、マッチング辞書２１０の学習に使用した被写体特性を取得し、特性取得部２０４の出力である被写体特性２０５とし、特性取得部２０４の処理を終了する。
ステップＳ９０５では、特性取得部２０４は、ユーザに被写体特性２０５の入力を促し、その結果を保存し、特性取得部２０４の処理を終了する。被写体特性２０５の入力手法は任意である。
【００１７】
次に、学習部２０９のフローチャートの一例を図１０に示す。図１０は、学習部の処理の一例を示すフローチャートである。
学習部２０９は、被写体画像群２０１、背景画像群２０２、被写体特性２０５を入力とする。また、学習部２０９は、マッチング辞書２１０を出力とする。
ステップＳ１００１では、学習部２０９は、教師背景画像群、教師被写体画像群、検定用背景画像群、検定用教師画像群を生成する。より具体的に説明すると、学習部２０９は、被写体画像群２０１の一部を教師被写体画像群、残りを検定用被写体画像群とし、背景画像群２０２の一部を教師背景画像群、残りを検定用教師画像群とする。学習部２０９は、教師背景画像群及び教師被写体画像群をマッチング辞書２１０の学習に使用する。また、学習部２０９は、検定用背景画像群及び検定用教師画像群を学習したマッチング辞書２１０の性能の測定（又は検定）に使用する。
ステップＳ１００２からステップＳ１００８での処理で学習部２０９は、マッチング辞書２１０を学習する。
まず、ステップＳ１００２では、学習部２０９は、ステップＳ１００１で設定した教師背景画像群と教師被写体画像群から特徴量を求めマッチング辞書２１０を学習する。このステップの処理には一般的な物体検出器・物体認識器の学習手法、例えば非特許文献１に記載のＶｉｏｌａらによる手法が適用可能である。但し、このステップで使用される特徴量及び手法は、マッチング部２１１のステップＳ８０７にて使用される特徴量及びステップＳ８０８にて使用されるマッチング手法に対応した手法でなければならない。
次に、ステップＳ１００３では、学習部２０９は、画像処理部２０６が用いる画像処理パラメータ２０８を初期化する。このステップの詳細は後述する。
次に、ステップＳ１００４では、学習部２０９は、ステップＳ１００９で求めるマッチング性能が閾値を下回るか、又はユーザが中断を指示するまで、ステップＳ１００５からステップＳ１００９までの処理を繰り返す。なお、ループの終了条件は他の任意の条件を設けてもよい。
【００１８】
次に、ステップＳ１００５では、学習部２０９は、画像処理部２０６を用いて被写体特性２０５に基づき複製被写体画像群２０７を得る。
次に、ステップＳ１００６では、学習部２０９は、マッチング部２１１を呼び出し、背景画像群２０２に対しステップＳ１００２若しくはステップＳ１００８で学習されたマッチング辞書２１０を適用する。その後、学習部２０９は、マッチした領域を教師背景画像群に追加する。背景画像群２０２の全ての部分領域は被写体画像を含まないため、学習部２０９は、マッチした全ての領域を教師背景画像群に追加してよい。
次に、ステップＳ１００７では、学習部２０９は、マッチング部２１１を呼び出し、ステップＳ１００５で得られた複製被写体画像群２０７中のそれぞれの画像に対し、ステップＳ１００２若しくはステップＳ１００８で学習されたマッチング辞書２１０を適用する。その後、学習部２０９は、マッチしなかった領域を教師被写体画像群に追加する。被写体画像候補群はその全てが被写体画像から画像処理で生成されたものである為、学習部２０９は、マッチしなかった全ての領域を教師被写体画像群に追加するべきである。
次に、ステップＳ１００８では、学習部２０９は、ステップＳ１００６で求めた教師背景画像群と、ステップＳ１００７で求めた教師被写体画像群と、からマッチング辞書２１０を学習する。この学習の処理は、ステップＳ１００２の処理と同一である。
次に、ステップＳ１００９では、学習部２０９は、検定用背景画像群及び検定用被写体画像群のそれぞれの画像に対しマッチング部２１１を呼び出し、ステップＳ１００８で学習したマッチング辞書２１０のマッチング性能を得る。この性能は、本実施形態では正答率及び正棄却率を想定しているが、学習部２０９は、その他の性能を測定しステップＳ１００４におけるループの終了条件としてもよい。
ステップＳ１０１０では、学習部２０９は、ステップＳ１００４においてループの終了と判断した場合、出力するマッチング辞書２１０を選択する。マッチング辞書２１０は、ループ内のどの時点で学習されたものかを問わない。性能が最良のものでもよいし、終了条件を満たしたもの、若しくは終了条件を満たさない最新のものでもよい。
ステップＳ１０１１では、学習部２０９は、マッチング辞書２１０にマッチ領域サイズ、マッチ領域中の被写体サイズを記録する。図７の複製被写体画像７０６において、マッチ領域サイズは７０７、マッチ領域中の被写体サイズは７０８である。被写体サイズ７０８は、被写体サイズ７０８に画像処理パラメータにおける縮小率を積算して求められる。これらの値は特に画像処理部２０６において縮小処理が施された場合に変動する。
ステップＳ１０１１で得られたマッチング辞書２１０が、学習部２０９の出力となる。
【００１９】
画像処理部２０６のフローチャートの例を図１１に示す。図１１は、画像処理の一例を示すフローチャートである。
画像処理部２０６は、被写体画像群２０１及び被写体特性２０５を入力とする。また、画像処理部２０６は、複製被写体画像群２０７を出力とする。画像処理部２０６は、画像処理パラメータ２０８を使用する。被写体特性２０５における、種類と対応する画像処理方法、そのパラメータ、及び初期値を図６に示す。
画像処理部２０６が呼び出される前に画像処理パラメータ２０８の初期化が必要である。このパラメータ初期化は、学習部２０９のステップＳ１００３から呼び出される。より具体的に説明すると、パラメータ初期化では、回転処理の回転角度を０度に、鏡像反転するか否かを「しない」に、投射面の法線方向の傾き量を０度に、ぶれ合成量を０ピクセルに、縮小率を事前の規定値に設定する。
また、画像処理部２０６は、ステップＳ１１０１〜１１０４において画像処理パラメータ２０８を変化させる。ここで変化量は事前に設定されてもよいし、被写体特性の一部として事前に入力されてもよい。また、この変化は差分の増減、割合に基づく乗除、或いはその他の演算の結果等に基づくものであってもよい。
まず、ステップＳ１１０１で、画像処理部２０６は、被写体特性２０５において回転対称と見なせるか否かを判定し、回転対称と見なせないなら、回転角度を増加させる。
次に、ステップＳ１１０２で、画像処理部２０６は、被写体特性２０５において被写体が単一平面上に存在すると見なせるか否かを判定し、単一平面上に存在すると見なせる場合は、投射面の法線方向の傾き量を増やす。
次に、ステップＳ１１０３で、画像処理部２０６は、被写体特性２０５において被写体にぶれ耐性が必要か否かを判定し、ぶれ耐性が必要だと判断される場合はぶれ量を増やす。
次に、ステップＳ１１０４で、画像処理部２０６は、被写体特性２０５において被写体に高速検出が必要か否かを判定し、高速検出が必要と判定された場合は縮小率が必要な場合は縮小率を増やす。
次に、ステップＳ１１０５で、画像処理部２０６は、ステップＳ１１０６からステップＳ１１１３までの処理を、被写体画像群２０１に含まれる全ての画像について繰り返す。
【００２０】
まず、ステップＳ１１０６で、画像処理部２０６は、被写体特性２０５において回転対称か否かを判断する。画像処理部２０６は、回転対称であればステップＳ１１０７に、回転対称でないならステップＳ１１０８に遷移する。
ステップＳ１１０７で、画像処理部２０６は、被写体画像をランダムに回転し、複製被写体画像とする。ここで、それぞれ回転角度の異なる複数枚を複製被写体画像としてもよい。その後、画像処理部２０６は、ステップＳ１１０９に遷移する。
ステップＳ１１０８で、画像処理部２０６は、被写体画像を回転角度分だけ回転し、複製被写体画像とする。その後、画像処理部２０６は、ステップＳ１１０９に遷移する。被写体画像７０１を回転した例を７０２に示す。
ステップＳ１１０９で、画像処理部２０６は、被写体特性２０５において鏡像対称か否かを判定し、鏡像対称と見なせるなら、複製被写体画像を任意に左右反転（鏡像反転）する。ここで任意とは例えば乱数を発生し一定確率以上である、等でよい。被写体画像７０１を左右反転した例を７０３に示す。
ステップＳ１１１０で、画像処理部２０６は、投射面の法線の傾き量に基づき複製被写体画像に透視変換を施す。ここで、画像処理部２０６は、被写体画像平面と投射面がなす角度が投射面の法線方向の傾き量と等しい透視変換を複数生成し、複数枚の複製被写体画像を生成してもよい。被写体画像７０１に対し透視変換を施した画像を７０４に示す。
ステップＳ１１１１で、画像処理部２０６は、ぶれ量に基づき複製被写体画像にぶれを付加する。このとき、画像処理部２０６は、任意の方向にぶれを合成することで複数の複製被写体画像を生成してもよい。被写体画像７０１に対しぶれを付加した例を７０５に示す。
ステップＳ１１１２で、画像処理部２０６は、縮小率に基づき複製被写体画像を縮小し、その周囲にマージンを付加する。画像処理部２０６は、例えば被写体画像を７０１として、複製被写体画像のサイズ７０７を被写体画像７０１の被写体サイズ７０８と等しくし、縮小した被写体領域を複製被写体画像の矩形中の任意の位置に重ねた画像を生成する。このとき、画像処理部２０６は、重ねる位置を任意に変化させることで複数の複製被写体画像を生成してもよい。図７の７０１にマージンを付加した例を７０６に示す。
ステップＳ１１１３で、画像処理部２０６は、ステップＳ１１０６〜ステップＳ１１１２で作成された複製被写体画像を複製被写体画像群２０７に追加する。
【００２１】
以上の様に本実施形態によれば、被写体特性２０５に基づき、被写体画像群２０１に対して多数の複製被写体画像群２０７を生成することができる。結果として同一の被写体画像群から学習したマッチング辞書２１０の性能向上、或いは同じ性能のマッチング辞書２１０の学習に必要な被写体画像数の削減をすることができる。
更に、本実施形態によれば、被写体特性２０５により回転対称と見なせる、単一平面上に存在すると見なせる、とされる被写体画像群２０１については、任意の角度で回転することができる。これにより、鏡像反転のみに加え多くの複製被写体画像群２０７を生成することができる。
更に、本実施形態によれば、被写体特性２０５が平面上に存在するとされない被写体画像群２０１について透視変換でサンプルを生成することがない為、被写体画像群２０１から学習したマッチング辞書２１０の性能低下を防ぐことができる。
更に、本実施形態によれば、被写体特性２０５がぶれ耐性を要する被写体画像群２０１については、ぶれ画像を含む複製被写体画像群２０７から学習することができるため、入力画像２０３がぶれている場合のマッチング精度の向上が期待できる。
更に、本実施形態によれば、被写体特性２０５が高速に検出する必要がある被写体画像群２０１について、画像処理部２０６は、マッチング辞書２１０のサイズ７０７に比して被写体サイズ７０８を小さくした複製被写体画像群２０７を生成する。これによりマッチング部２１１のステップＳ８０２においてピクセルステップ及び画像拡大率が大きくなる。結果としてステップＳ８０３〜８０９におけるループ回数が減少し、マッチング部２１１の高速化が期待できる。更に、本実施形態によれば、物体検出等、単位時間当たりにマッチング部２１１を終了すればよい場合、ステップＳ８０３の終了条件を満たす範囲で大きな画像に対しマッチング可能である。したがって、結果として画像中に含まれるより小さな領域に対してマッチングを試みることができる。
更に、本実施形態によれば、学習部２０９は、ステップＳ１００９で求めるマッチング性能がステップＳ１００４に定義する条件を満たす範囲で複製被写体画像群２０７を生成、学習することができる。即ち、被写体特性２０５に対してマッチング性能を満たす範囲で剛健なマッチング辞書２１０を作成することができる。
【００２２】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００２３】
以上、上述した各実施形態によれば、学習に必要な被写体画像の数を削減することができる。
【００２４】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００２５】
１０３  ＣＰＵ
【図１】
0005550301.tif 000002
【図２】
0005550301.tif 000003
【図３】
0005550301.tif 000004
【図４】
0005550301.tif 000005
【図５】
0005550301.tif 000006
【図６】
0005550301.tif 000007
【図７】
0005550301.tif 000008
【図８】
0005550301.tif 000009
【図９】
0005550301.tif 000010
【図１０】
0005550301.tif 000011
【図１１】
0005550301.tif 000012