(57)【特許請求の範囲】
【請求項１】
処理対象画像の各画素について特徴値を算出する特徴値算出手段と、
座標（ｘ、ｙ）が最小となる画素を原点としたとき、原点からｘ方向に１画素ずつ順に移動した各ｘ座標について更にｙ方向に１画素ずつ順に移動することにより設定される、各座標（ｘ、ｙ）を着目位置とするサブ領域を設定し、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、該着目位置の前記サブ領域内における前記範囲に属する特徴値の頻度値を、前記サブ領域内の予め定めた位置の画素値として付与したサブ領域積算値画像を各々生成するサブ領域積算値画像生成手段と、
前記特徴値の各範囲に対して、前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々と、を総和した総和値、又は前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値に対して所定の算術演算を施した値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与したサブ領域積算値積分画像を各々生成するサブ領域積算値積分画像生成手段と、
を含む画像処理装置。
【請求項２】
入力されたテンプレート画像に相当する大きさのサブウィンドウを前記サブ領域積算値画像上と前記サブ領域積算値積分画像上に設定し、サブウィンドウを分割して得られる部分領域であるサブ領域を前記サブ領域積算値画像上に設定するサブウィンドウ設定手段と、
前記サブ領域積算値画像内に設定された前記サブウィンドウのサブ領域毎に、前記特徴値の各範囲に対する前記サブ領域積算値画像の画素値を要素とするヒストグラムを各々生成するヒストグラム生成手段と、
前記サブ領域積算値積分画像内に設定された前記サブウィンドウの４隅の座標の画素値に基づいて、前記特徴値の各範囲に対して、前記サブウィンドウ内の各サブ領域における前記総和値を算出する総和値算出手段と、
を更に含む請求項１記載の画像処理装置。
【請求項３】
前記サブ領域積算値積分画像生成手段は、前記処理対象画像内の各位置に前記サブ領域を設定した場合について、前記サブ領域に隣接するサブ領域について既に算出された前記総和値を用いて、前記サブ領域に対する前記総和値を算出して、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与した前記サブ領域積算値積分画像を生成する請求項１又は２記載の画像処理装置。
【請求項４】
前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、前記原点と座標（ｘ、ｙ）を対角とする矩形領域内の前記範囲に属する特徴値の頻度値を、座標（ｘ、ｙ）における頻度値として、各座標について算出し、各画素の前記頻度値を表わす積分画像を各々生成する積分画像生成手段を更に含み、
前記サブ領域積算値画像生成手段は、前記積分画像生成手段によって生成された前記特徴値の各範囲に対する前記積分画像に基づいて、前記特徴値の各範囲に対する前記サブ領域積算値画像を生成する請求項１〜請求項３の何れか１項記載の画像処理装置。
【請求項５】
前記積分画像生成手段は、各画素について、前記画素に隣接する画素について既に算出された前記積算値を用いて、前記画素に対する前記積算値を算出して、前記積分画像を生成する請求項４記載の画像処理装置。
【請求項６】
特徴値算出手段と、サブ領域積算値画像生成手段と、サブ領域積算値積分画像生成手段と、を含む画像処理装置における画像処理方法であって、
前記特徴値算出手段が、処理対象画像の各画素について特徴値を算出するステップと、
前記サブ領域積算値画像生成手段が、座標（ｘ、ｙ）が最小となる画素を原点としたとき、原点からｘ方向に１画素ずつ順に移動した各ｘ座標について更にｙ方向に１画素ずつ順に移動することにより設定される、各座標（ｘ、ｙ）を着目位置とするサブ領域を設定し、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、該着目位置の前記サブ領域内における前記範囲に属する特徴値の頻度値を、前記サブ領域内の予め定めた位置の画素値として付与したサブ領域積算値画像を各々生成するステップと、
前記サブ領域積算値積分画像生成手段が、前記特徴値の各範囲に対して、前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々と、を総和した総和値、又は前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値に対して所定の算術演算を施した値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与したサブ領域積算値積分画像を各々生成するステップと、
を含むことを特徴とする画像処理方法。
【請求項７】
サブウィンドウ設定手段が、入力されたテンプレート画像に相当する大きさのサブウィンドウを前記サブ領域積算値画像上と前記サブ領域積算値積分画像上に設定し、サブウィンドウを分割して得られる部分領域であるサブ領域を前記サブ領域積算値画像上に設定するステップと、
ヒストグラム生成手段が、前記サブ領域積算値画像内に設定された前記サブウィンドウのサブ領域毎に、前記特徴値の各範囲に対する前記サブ領域積算値画像の画素値を要素とするヒストグラムを各々生成するステップと、
総和値算出手段が、前記サブ領域積算値積分画像内に設定された前記サブウィンドウの４隅の座標の画素値に基づいて、前記特徴値の各範囲に対して、前記サブウィンドウ内の各サブ領域における前記総和値を算出するステップと、
を更に含む請求項６記載の画像処理方法。
【請求項８】
前記サブ領域積算値積分画像生成手段が前記サブ領域積算値積分画像を生成するステップは、前記処理対象画像内の各位置に前記サブ領域を設定した場合について、前記サブ領域に隣接するサブ領域について既に算出された前記総和値を用いて、前記サブ領域に対する前記総和値を算出して、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与した前記サブ領域積算値積分画像を生成する請求項６又は７記載の画像処理方法。
【請求項９】
積分画像生成手段が、前記算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、前記原点と座標（ｘ、ｙ）を対角とする矩形領域内の前記範囲に属する特徴値の頻度値を、座標（ｘ、ｙ）における頻度値として、各座標について算出し、各画素の前記頻度値を表わす積分画像を各々生成するステップを更に含み、
前記サブ領域積算値画像生成手段が前記サブ領域積算値画像を生成するステップは、前記生成された前記特徴値の各範囲に対する前記積分画像に基づいて、前記特徴値の各範囲に対する前記サブ領域積算値画像を生成する請求項６〜請求項８の何れか１項記載の画像処理方法。
【請求項１０】
コンピュータを、請求項１〜請求項５の何れか１項記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、方法、及びプログラムに係り、特に、処理対象画像について特徴値のヒストグラムを生成する画像処理装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
従来より、検索対象画像内でテンプレート画像と類似している画像領域を検索する画像処理技術において、類似性を測る為に用いる情報として、テンプレート画像及び検索対象画像内の検索対象領域（サブウィンドウ）から抽出される色や輝度値やエッジなどの特徴値の数をカウントすることによりヒストグラムを作成して用いる手法が知られている。このヒストグラムを作成して用いる手法において、ヒストグラムの作成方法として、検索位置毎にサブウィンドウの各画素から特徴値を逐次カウントする全探索法が最も基本的な処理として使用されている。全探索法では、検索対象画像内の指定された検索位置に所定の大きさのサブウィンドウを設定し、サブウィンドウ内若しくはサブウィンドウを分割して得られる部分領域である各サブ領域内の各画素から抽出される特徴値を逐次カウントして、ヒストグラムを作成する。全探索法では、上記処理を検索対象画像内の各検索位置で実施する。検索位置、サブウィンドウ、及びサブ領域の関係を図１に示す。
【０００３】
ヒストグラムの作成処理時間を削減する手法の一つとして、積分画像（非特許文献１参照）を利用したＩｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法（非特許文献２参照）が提案されている。Ｉｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法では、ヒストグラムを構成するビン別に積分画像を作成する。検索対象画像内の各検索位置のサブウィンドウ及びサブ領域において特徴値のヒストグラムを作成する際は、各ビンの積分画像に基づいて、サブウィンドウ若しくはサブ領域等の指定範囲のヒストグラムを算出する。全てのビンの積分画像からヒストグラムを算出することで、サブウィンドウ及びサブ領域のヒストグラムを作成することが可能となる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】P. Viola and M. Jones, 「Robust Real-Time Face Detection」, International Journal of Computer Vision, vol.57, no.2, pp.137-154, 2004.
【非特許文献２】F. Porikli, 「Integral Histogram: A Fast Way to Extract Histograms in Cartesian Spaces」, International Conference on Computer Vision and Pattern Recognition, Vol. 1, pp. 829-836, June 2005.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
全探索法では、ヒストグラムを作成する際に、検索箇所毎に抽出範囲であるサブウィンドウ及びサブ領域内の全画素から特徴値を逐次読み込む必要があり、処理時間が掛かる、という問題がある。また、Ｉｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法では、各積分画像において任意の大きさの領域の４隅の座標値を設定して特徴を抽出することで、サブウィンドウおよび各サブ領域のヒストグラムの作成は高速に実施可能である。しかし、サブウィンドウが複数のサブ領域から構成される場合、同じ位置から複数回に渡りサブ領域のヒストグラムを作成する為、積分画像を用いても複数回の算出をする必要があり、余計な処理時間が掛かる、という問題がある。
【０００６】
また、検索処理時の類似性を測る尺度として、特徴の積算値以外が必要な尺度、例えば正規化相関を用いた場合、サブ領域のヒストグラムの値の２乗値を全サブ領域において算出し積算する必要があるが、Ｉｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法を用いた場合、検索位置が１画素移るたびに、各サブ領域のヒストグラムを算出すると共に、左記値の２乗値の計算を全サブ領域に渡って実行し、且つ左記２乗値を加算する処理が必要となり、非常に処理時間が掛かる、という問題がある。特徴値の積算値以外を用いる他の類似尺度においても、同様である。
【０００７】
本発明は、上記の事情を鑑みてなされたもので、サブウィンドウが複数のサブ領域からなる場合に、サブ領域毎に特徴値のヒストグラムを高速に算出すると共に、サブ領域における特徴値の積算値に算術演算を施した値を複数のサブ領域に渡って総和した値を高速に算出することができる画像処理装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために本発明に係る画像処理装置は、処理対象画像の各画素について特徴値を算出する特徴値算出手段と、座標（ｘ、ｙ）が最小となる画素を原点としたとき、原点からｘ方向に１画素ずつ順に移動した各ｘ座標について更にｙ方向に１画素ずつ順に移動することにより設定される、各座標（ｘ、ｙ）を着目位置とするサブ領域を設定し、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、該着目位置の前記サブ領域内における前記範囲に属する特徴値の頻度値を、前記サブ領域内の予め定めた位置の画素値として付与したサブ領域積算値画像を各々生成するサブ領域積算値画像生成手段と、前記特徴値の各範囲に対して、前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々と、を総和した総和値、又は前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値に対して所定の算術演算を施した値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与したサブ領域積算値積分画像を各々生成するサブ領域積算値積分画像生成手段と、を含んで構成されている。
【０００９】
本発明に係る画像処理方法は、特徴値算出手段と、サブ領域積算値画像生成手段と、サブ領域積算値積分画像生成手段と、を含む画像処理装置における画像処理方法であって、前記特徴値算出手段が、処理対象画像の各画素について特徴値を算出するステップと、前記サブ領域積算値画像生成手段が、座標（ｘ、ｙ）が最小となる画素を原点としたとき、原点からｘ方向に１画素ずつ順に移動した各ｘ座標について更にｙ方向に１画素ずつ順に移動することにより設定される、各座標（ｘ、ｙ）を着目位置とするサブ領域を設定し、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、該着目位置の前記サブ領域内における前記範囲に属する特徴値の頻度値を、前記サブ領域内の予め定めた位置の画素値として付与したサブ領域積算値画像を各々生成するステップと、前記サブ領域積算値積分画像生成手段が、前記特徴値の各範囲に対して、前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々と、を総和した総和値、又は前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値に対して所定の算術演算を施した値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域のｘ方向の大きさのｎ倍（ｎは自然数）だけｘが小さくなる方向に離れた各ｘ座標及び前記サブ領域のｙ方向の大きさのｎ倍（ｎは自然数）だけｙが小さくなる方向に離れた各ｙ座標で示される各位置における前記サブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与したサブ領域積算値積分画像を各々生成するステップと、を含むことを特徴とする。
【００１０】
本発明によれば、処理対象画像の各画素について特徴値を算出する。そして、座標が最小となる画素を原点としたとき、原点から座標が大きくなる方向に１画素ずつずらしながら、各座標を着目位置とするサブ領域を設定し、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、該着目位置の前記サブ領域内における前記範囲に属する特徴値の頻度値を、前記サブ領域内の予め定めた位置の画素値として付与したサブ領域積算値画像を各々生成する。
【００１１】
そして、前記特徴値の各範囲に対して、前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域の大きさのｎ倍（ｎは自然数）だけ離れ、かつ、当該座標より小さい座標における前記サブ領域積算値画像の画素値の各々と、を総和した総和値、又は前記サブ領域内の特定座標（ｘ、ｙ）における前記サブ領域積算値画像の画素値に対して所定の算術演算を施した値と、前記特定座標（ｘ、ｙ）に対して前記サブ領域の大きさのｎ倍（ｎは自然数）だけ離れ、かつ、当該座標より小さい座標における前記サブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与したサブ領域積算値積分画像を各々生成する。
【００１２】
このように、特徴値の各範囲に対して、サブ領域内の画素の特徴値の頻度値を付与したサブ領域積算値画像と、サブ領域内の特定座標（ｘ、ｙ）におけるサブ領域積算値画像の画素値と、特定座標（ｘ、ｙ）に対してサブ領域の大きさのｎ倍だけ離れ、かつ、当該座標より小さい座標におけるサブ領域積算値画像の画素値の各々と、を総和した総和値、又はサブ領域内の特定座標（ｘ、ｙ）におけるサブ領域積算値画像の画素値に対して所定の算術演算を施した値と、特定座標（ｘ、ｙ）に対してサブ領域の大きさのｎ倍だけ離れ、かつ、当該座標より小さい座標におけるサブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、積算値として付与したサブ領域積算値積分画像と生成することにより、サブウィンドウが複数のサブ領域からなる場合に、サブ領域毎に特徴値のヒストグラムを高速に算出すると共に、サブ領域における特徴値の積算値に算術演算を施した値を複数のサブ領域に渡って総和した値を高速に算出することができる。
【００１３】
本発明に係る画像処理装置は、入力されたテンプレート画像に相当する大きさのサブウィンドウを前記サブ領域積算値画像上と前記サブ領域積算値積分画像上に設定し、サブウィンドウを分割して得られる部分領域であるサブ領域を前記サブ領域積算値画像上に設定するサブウィンドウ設定手段と、前記サブ領域積算値画像内に設定された前記サブウィンドウのサブ領域毎に、前記特徴値の各範囲に対する前記サブ領域積算値画像の画素値を要素とするヒストグラムを各々生成するヒストグラム生成手段と、前記サブ領域積算値積分画像内に設定された前記サブウィンドウの４隅の座標の画素値に基づいて、前記特徴値の各範囲に対して、前記サブウィンドウ内の各サブ領域における前記総和値を算出する総和値算出手段と、を更に含むようにすることができる。
【００１４】
本発明に係るサブ領域積算値積分画像生成手段は、前記処理対象画像内の各位置に前記サブ領域を設定した場合について、前記サブ領域に隣接するサブ領域について既に算出された前記総和値を用いて、前記サブ領域に対する前記総和値を算出して、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与した前記サブ領域積算値積分画像を生成するようにすることができる。これによって、サブ領域積算値積分画像を生成するのにかかる計算時間を短縮することができる。
【００１５】
本発明に係る画像処理装置は、前記特徴値算出手段によって算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、前記原点と座標（ｘ、ｙ）を対角とする矩形領域内の前記範囲に属する特徴値の頻度値を、座標（ｘ、ｙ）における頻度値として、各座標について算出し、各画素の前記頻度値を表わす積分画像を各々生成する積分画像生成手段を更に含み、前記サブ領域積算値画像生成手段は、前記積分画像生成手段によって生成された前記特徴値の各範囲に対する前記積分画像に基づいて、前記特徴値の各範囲に対する前記サブ領域積算値画像を生成するようにすることができる。これによって、サブ領域積算値積分画像及びサブ領域積算値積分画像を生成するのにかかる計算時間を短縮することができる。
【００１６】
上記の積分画像生成手段は、各画素について、前記画素に隣接する画素について既に算出された前記積算値を用いて、前記画素に対する前記積算値を算出して、前記積分画像を生成するようにすることができる。これによって、積分値画像を生成するのにかかる計算時間を短縮することができる。
【００１７】
本発明に係る画像処理方法は、サブウィンドウ設定手段が、入力されたテンプレート画像に相当する大きさのサブウィンドウを前記サブ領域積算値画像上と前記サブ領域積算値積分画像上に設定し、サブウィンドウを分割して得られる部分領域であるサブ領域を前記サブ領域積算値画像上に設定するステップと、ヒストグラム生成手段が、前記サブ領域積算値画像内に設定された前記サブウィンドウのサブ領域毎に、前記特徴値の各範囲に対する前記サブ領域積算値画像の画素値を要素とするヒストグラムを各々生成するステップと、総和値算出手段が、前記サブ領域積算値積分画像内に設定された前記サブウィンドウの４隅の座標の画素値に基づいて、前記特徴値の各範囲に対して、前記サブウィンドウ内の各サブ領域における前記総和値を算出するステップと、を更に含むようにすることができる。
【００１８】
本発明に係る前記サブ領域積算値積分画像生成手段が前記サブ領域積算値積分画像を生成するステップは、前記処理対象画像内の各位置に前記サブ領域を設定した場合について、前記サブ領域に隣接するサブ領域について既に算出された前記総和値を用いて、前記サブ領域に対する前記総和値を算出して、前記サブ領域内の特定座標（ｘ、ｙ）における積算値として付与した前記サブ領域積算値積分画像を生成するようにすることができる。これによって、サブ領域積算値積分画像を生成するのにかかる計算時間を短縮することができる。
【００１９】
本発明に係る画像処理方法は、積分画像生成手段が、前記算出された各画素の特徴値に基づいて、前記特徴値の各範囲に対して、前記原点と座標（ｘ、ｙ）を対角とする矩形領域内の前記範囲に属する特徴値の頻度値を、座標（ｘ、ｙ）における頻度値として、各座標について算出し、各画素の前記頻度値を表わす積分画像を各々生成するステップを更に含み、前記サブ領域積算値画像生成手段が前記サブ領域積算値画像を生成するステップは、前記生成された前記特徴値の各範囲に対する前記積分画像に基づいて、前記特徴値の各範囲に対する前記サブ領域積算値画像を生成することができる。これによって、サブ領域積算値積分画像及びサブ領域積算値積分画像を生成するのにかかる計算時間を短縮することができる。
【００２０】
本発明に係るプログラムは、コンピュータを、上記の画像処理装置の各手段として機能させるためのプログラムである。
【発明の効果】
【００２１】
以上説明したように、本発明の画像処理装置、方法、及びプログラムによれば、特徴値の各範囲に対して、サブ領域内の画素の特徴値の頻度値を付与したサブ領域積算値画像と、サブ領域内の特定座標（ｘ、ｙ）におけるサブ領域積算値画像の画素値と、特定座標（ｘ、ｙ）に対してサブ領域の大きさのｎ倍だけ離れ、かつ、当該座標より小さい座標におけるサブ領域積算値画像の画素値の各々と、を総和した総和値、又はサブ領域内の特定座標（ｘ、ｙ）におけるサブ領域積算値画像の画素値に対して所定の算術演算を施した値と、特定座標（ｘ、ｙ）に対してサブ領域の大きさのｎ倍だけ離れ、かつ、当該座標より小さい座標におけるサブ領域積算値画像の画素値の各々に対して所定の算術演算を施した値の各々と、を総和した総和値を、積算値として付与したサブ領域積算値積分画像と生成することにより、サブウィンドウが複数のサブ領域からなる場合に、サブ領域毎に特徴値のヒストグラムを高速に算出すると共に、サブ領域における特徴値の積算値に算術演算を施した値を複数のサブ領域に渡って総和した値を高速に算出することができる、という効果が得られる。
【図面の簡単な説明】
【００２２】
【図１】サブウィンドウ及びサブ領域を説明するための図である。
【図２】本発明の実施の形態に係る画像処理装置の構成を示す概略図である。
【図３】本発明の実施の形態に係る画像処理装置におけるヒストグラム算出処理ルーチンの内容を示すフローチャートである。
【図４】本発明の実施の形態に係る画像処理装置におけるサブ領域積算値画像及びサブ領域積算値成分画像の作成処理ルーチンの内容を示すフローチャートである。
【図５】各ビン別のサブ領域積算値画像及びサブ領域積算値を作成する処理の流れを示すフローチャートである。
【図６】積分画像上のサブ領域を示す図である。
【図７】サブ領域内の特徴値の積算値及び特徴値の積算値の２乗和を付与する位置を説明するための図である。
【図８】特徴値の積算値の２乗和を算出する方法を説明するための図である。
【図９】本発明の実施の形態に係る画像処理装置におけるヒストグラム作成処理ルーチンの内容を示すフローチャートである。
【図１０】サブ領域積算値積分画像からサブ領域の積算値の２乗和を算出する方法を説明するための図である。
【図１１】検索対象画像及びテンプレート画像の例を示す図である。
【図１２】特徴量を抽出したい領域を設定する例を示す図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、サブウィンドウが複数のサブ領域からなり、検索処理時に用いる類似尺度として正規化相関を用いるために、左記正規化相関の計算に必要な、サブ領域毎のヒストグラムの構成要素となる特徴値の積算値を付与したサブ領域積算値画像を作成すると共に、特徴値の積算値の２乗値の総和値を付与したサブ領域積算値積分画像を作成する画像処理装置に本発明を適用した場合を例に説明する。
【００２４】
＜システム構成＞
図２に示すように、本発明の実施の形態に係る画像処理装置１００は、検索対象画像内のサブウィンドウからヒストグラムを算出する。この画像処理装置１００は、ＣＰＵと、ＲＡＭと、後述するヒストグラム算出処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。画像処理装置１００は、入力部１０と、特徴抽出部２０と、ヒストグラム作成部３０と、出力部４０とを備えている。なお、特徴抽出部２０は、特徴値算出手段の一例であり、ヒストグラム作成部３０は、サブ領域積算値画像生成手段、サブ領域積算値積分画像生成手段、ヒストグラム作成手段、総和値算出手段、及び積算値画像生成手段の一例である。
【００２５】
入力部１０には、入力された検索対象画像を受け付ける。
【００２６】
特徴抽出部２０は、画像の類似性を測る為に用いる特徴として、検索対象画像から各画素について色情報や輝度値やエッジ等の特徴値を抽出する。例えば、色情報の場合、特徴値として、ＲＧＢ別に、画素値（０−２５５）を適当な間隔でサンプリングした値を用いる。輝度値の場合も、特徴値として、画素の値(０−２５５)を適当な間隔でサンプリングした値を用いる。エッジの場合、特徴値として、フィルタ処理等で得られたエッジの角度を適当な間隔でサンプリングした角度別にエッジ強度を表わす値を用いる。抽出された特徴値は、ヒストグラム作成部３０に出力される。
【００２７】
ヒストグラム作成部３０は、本発明の主要部であり、検索対象画像上で位置を１画素ずつ移動させながら、特徴抽出部２０から出力された特徴値から、各位置のサブ領域内の画素値（特徴値）のヒストグラム、及び左記ヒストグラムに算術演算を施した値を複数のサブ領域について総和した値を算出し、各位置に格納したサブ領域積算値画像及びサブ領域積算値積分画像を生成する。次に、ヒストグラム作成部３０は、検索のリクエストに応じてサブウィンドウが指定された場合、各ビン別に、上記サブ領域積算値画像及びサブ領域積算値積分画像上に設定したサブウィンドウ及び当該サブウィンドウを複数の領域に分割したサブ領域から、必要なヒストグラムの値、及びヒストグラムの値に算術演算を施した値を総和した値を算出し、出力部４０へ出力する。なお、サブウィンドウをサブ領域に分割したときの分割数は、予め設定されているものとする。
【００２８】
出力部４０は、ヒストグラム作成部３０により作成されたヒストグラム等を出力する。すなわち、出力部４０は、サブウィンドウから抽出されたビン毎のヒストグラムの値、及びヒストグラムの値に算術演算を施した値をビン別に総和した値を出力する。
【００２９】
＜画像処理装置の作用＞
次に、本実施の形態に係る画像処理装置１００の作用について説明する。まず、検索対象画像が画像処理装置１００に入力された後、画像処理装置１００によって、図３に示すヒストグラム算出処理ルーチンが実行される。
【００３０】
まず、ステップＳ１において、入力され検索対象画像を取得し、ステップＳ２において、検索等の類似性の評価に用いる情報となる特徴値を、検索対象画像の各画素について抽出する。
【００３１】
そして、ステップＳ３において、上記ステップＳ２で得られた各画素の特徴値から、各ビン別に積分画像を生成する。またビン別の積分画像を用いて、サブ領域内の当該ビンにおけるヒストグラムの値（当該ビンに属する特徴の頻度値）を算出し、左記ヒストグラムの値を各サブ領域の位置に付与したサブ領域積算値画像を作成する。また、当該サブ領域とそのｎ倍だけ離れた画素における左記ヒストグラムの値の２乗値を総和した値を算出し、左記算出値を各サブ領域の位置に付与したサブ領域積算値積分画像を作成する。
【００３２】
そして、検索のリクエストに応じてテンプレート画像が入力されると、ステップＳ４において、各検索位置においてテンプレート画像に相当する大きさのサブウィンドウをサブ領域積算値積分画像上に設定し、サブウィンドウを分割して得られる部分領域であるサブ領域をサブ領域積算値画像上に設定する。
【００３３】
次のステップＳ５では、設定されたサブウィンドウ及びサブ領域から、ヒストグラムを作成すると共に、ヒストグラムの値に算術演算を施した値の総和値を算出する。そして、ステップＳ６において、上記ステップＳ５で作成されたサブ領域毎のヒストグラム、及びサブウィンドウに対する上記の総和値を出力する。
【００３４】
次のステップＳ７において、サブウィンドウが全ての検索位置に走査されたか否かを判定し、全ての検索位置に走査されていない場合には、上記ステップＳ４へ戻り、サブウィンドウを次の検索位置に設定する。一方、サブウィンドウが全ての検索位置に走査された場合には、ヒストグラム算出処理ルーチンを終了する。
【００３５】
上記ステップＳ３は、図４に示すサブ領域積算値画像及びサブ領域積算値積分画像の作成処理ルーチンによって実現される。
【００３６】
ステップＳ３−１において、検索対象画像から抽出された特徴値から、ビン別に、当該ビンに属する特徴値を各画素について読み込む。そして、ステップＳ３−２において、各ビン別に読み込んだ特徴値から、各ビン別の積分画像を作成する。
【００３７】
ここで、積分画像を作成する方法について説明する。座標(ｘ,ｙ)においてあるビンに属する特徴値の有無を示す値をｉ(ｘ,ｙ)、当該ビンに対する積分画像の座標(ｘ,ｙ)の値をｉｉ(ｘ,ｙ)とすると、ｉｉ(ｘ,ｙ)は、ｘ‘≦ｘ及びｙ’≦ｙの各画素（原点と（ｘ、ｙ）で形成される矩形領域内の各画素）から抽出される、当該ビンに属する特徴の頻度値（当該ビンに属する特徴値がいくつあるかを示す値）であり、以下の（１）式で定義される値となる。
【００３８】
【数１】
0005674535.tif 000002
【００３９】
上記（１）式で表される値は、画像の原点と処理対象の座標（ｘ、ｙ）とを対角とする矩形領域内における、当該ビンに属する特徴値の頻度値（当該ビンにおけるヒストグラムの値）となる。
【００４０】
上記（１）式で表されるｉｉ(ｘ,ｙ)を、以下の（２）式を用いることにより、高速に算出する事が可能である。
【００４１】
【数２】
0005674535.tif 000003
【００４２】
上記（２）式では、対象の画素に隣接する画素について既に算出された、当該ビンに属する特徴値の頻度値を用いて、再帰的にｉｉ(ｘ,ｙ)を算出している。
【００４３】
上記算出を全ての座標(ｘ,ｙ)において実施して、画素(ｘ,ｙ)に付与することで、積分画像を作成する。また上記処理を全てのビンにおいて実施する。ここで、検索対象画像内で積分画像を求める座標(ｘ,ｙ)は、ｘ,ｙの値が共に最小となる位置（原点）から開始して、１画素ずつ順に移動（ｘが増加する方向に移動させた後、ｙが増加する方向に移動）させることを前提としている。
【００４４】
次のステップＳ３−３において、上記ステップＳ３−２により作成された各ビン別の積分画像を用いて、各ビン別に、サブ領域積算値画像及びサブ領域積算値積分画像を作成する。
【００４５】
これにより、画像処理装置１００は、検索対象画像内の任意のサブ領域から、ビン別の特徴値のヒストグラムの値及びそのヒストグラムの値の２乗和を算出することができる。また、画像処理装置１００は、テンプレート画像が入力されたときに、検索対象画像内に設定されたテンプレート画像と同じ大きさのサブウィンドウとテンプレート画像のそれぞれについて、算出されたビン別の特徴値のヒストグラムの値及びそのヒストグラムの値の２乗和を用いて、正規化相関を算出する。
【００４６】
例えば、検索対象画像の座標（ｃ，ｄ）における正規化相関ＮＣＣ（ｃ，ｄ）は、以下の式で表わされる。
【００４７】
【数３】
0005674535.tif 000004
【００４８】
ここで、ａ（ｕ，ｖ）はテンプレート画像におけるｕ番目のサブ領域のヒストグラムのｖ番目のビンの値である。ここでのサブ領域は、テンプレート画像を分割して得られる各部分領域を指す。ｂ（ｕ，ｖ）は、検索対象画像に設定されたサブウィンドウにおけるｕ番目のサブ領域のヒストグラムのｖ番目のビンの値である。Ｕは、サブ領域の数であり、Ｖは、各サブ領域毎に作成されるヒストグラムのビンの数である。なお、以下の説明では検索対象画像についてのヒストグラム及びヒストグラムの２乗和の計算を例に説明を行うが、テンプレート画像についてのヒストグラム及びヒストグラムの２乗和も同じ要領で計算することができる。
【００４９】
上記ステップＳ３−３は、図５に示す処理ルーチンによって実現される。
【００５０】
ステップＳ３−３−１において、処理対象のビンを設定し、ステップＳ３−３−２において、処理対象のビンに対する積分画像を読み込む。そして、ステップＳ３−３−３において、上記ステップＳ３−３−２で読み込んだ積分画像上のある位置に、サブ領域の大きさを持つ４隅を設定し、処理対象のサブ領域とする。処理対象のサブ領域の初期位置としては、例えば、サブ領域の１つの隅が、積分画像の原点となるように設定する。
【００５１】
次のステップＳ３−３−４では、処理対象のビンに対する積分画像上の、処理対象のサブ領域から、処理対象のビンに属する特徴値の頻度値（ヒストグラムの値）を算出する。
【００５２】
ここで、積分画像から、処理対象のサブ領域方形内の当該ビンに属するヒストグラムの値を算出する方法について図６を用いて説明する。サブ領域(ｘ’,ｙ’)の４隅がＡ(ｘ,ｙ)、Ｂ(ｘ,ｙ)、Ｃ(ｘ,ｙ)、Ｄ(ｘ,ｙ)の４点で定義されているとする。ここで、Ａ(ｘ)＜ｘ’≦Ｂ(ｘ)、Ａ(ｙ)＜ｙ’≦Ｃ(ｙ)、Ａ(ｘ)＝Ｃ(ｘ)、Ａ(ｙ)＝Ｂ(ｙ)、Ｂ(ｘ)＝Ｄ(ｘ)、及びＣ(ｙ)＝Ｄ(ｙ)である。処理対象のサブ領域内のあるビンに属するヒストグラムの値Σｉ(ｘ‘,ｙ’)は、以下の（３）式から算出される。
【００５３】
【数４】
0005674535.tif 000005
【００５４】
上記ステップＳ３−３−４で積分画像から算出されたサブ領域内の処理対象のビンに属するヒストグラムの値をｓ(ｘ,ｙ)とすると、ステップＳ３−３−５において、算出されたヒストグラムの値ｓ（ｘ，ｙ）を、処理対象のビンに対するサブ領域積算値画像におけるサブ領域の位置を指す座標に付与する。例えば、図７で示すようにサブ領域の左上隅の座標に付与する。
【００５５】
次のステップＳ３−３−６では、積分画像から算出されたサブ領域内のヒストグラムの値ｓ(ｘ,ｙ)を用いて、サブ領域内の各画素のヒストグラムの値の２乗値ｓ２(ｘ,ｙ)を、以下の（４）式で算出する。
【００５６】
【数５】
0005674535.tif 000006
【００５７】
そして、ステップＳ３−３−７において、着目している座標（ｘ，ｙ）からサブ領域の大きさの自然数倍に相当する距離だけ離れた座標(ｘ−ｎ＊ｗ, ｙ−ｍ＊ｈ)（ただし、サブ領域の大きさをｗ×ｈとし、ｎ及びｍは自然数とする）で算出された当該座標(ｘ−ｎ＊ｗ, ｙ−ｍ＊ｈ)におけるサブ領域内のヒストグラムの値の２乗値であるｓ２(ｘ−ｎ＊ｗ,ｙ−ｎ＊ｈ)を更に積算して、サブ領域間のヒストグラムの値の２乗値の総和値を算出する。具体的には、座標(ｘ,ｙ)において算出されたサブ領域内のヒストグラムの値の２乗値ｓ２(ｘ,ｙ)に対し、ｘ’≦ｘ及びｙ’≦ｙで且つサブ領域の大きさ(ｗ×ｈ)の倍数に相当する距離が離れた座標で算出されたサブ領域のヒストグラム値の２乗和から構成される、サブ領域積算値積分画像における座標(ｘ,ｙ)の値を、ｓｓ２(ｘ,ｙ)とすると、ｓｓ２(ｘ,ｙ)は以下の（５）式で定義される値となる。
【００５８】
【数６】
0005674535.tif 000007
【００５９】
上記（５）式で表される値は、図８において黒色で示す画素におけるヒストグラムの値の２乗値を足し合わせた値となる。ここで、図８の例では、ｗ＝３，ｈ＝３である。
【００６０】
サブ領域積算値の２乗和ｓｓ２(ｘ,ｙ)を、以下の（６）式を用いることにより、高速に算出することが可能である。
【００６１】
【数７】
0005674535.tif 000008
【００６２】
上記（６）式では、処理対象のサブ領域に隣接するサブ領域について既に算出された、当該ビンに属するヒストグラムの値の２乗値の総和値（２乗和）を用いて、再帰的にｓｓ２(ｘ,ｙ)を算出している。
【００６３】
ステップＳ３−３−８では、上記ステップＳ３−３−７で算出された値ｓｓ２（ｘ、ｙ）を、処理対象のビンに対するサブ領域積算値積分画像における着目座標（サブ領域の位置）に付与する。処理対象のサブ領域を設定する位置は、ｘ,ｙの値が共に最小となる位置（原点）から開始して、１画素ずつ順に移動（ｘが増加する方向に移動させた後、ｙが増加する方向に移動）させていくことを前提としている。
【００６４】
そして、ステップＳ３−３−９では、処理対象のサブ領域を、積分画像上の全ての位置に走査したか否かを判定し、全ての位置に走査していない場合には、上記ステップＳ３−３−３に戻り、次の位置に、処理対象のサブ領域を設定する。一方、処理対象のサブ領域を積分画像上の全ての位置に走査した場合には、ステップＳ３−３−１０に移行する。
【００６５】
ステップＳ３−３−１０では、全てのビンについて、上記ステップＳ３−３−１〜Ｓ３−３−９の処理を実行したか否かを判定し、全てのビンについて上記処理を実行していない場合には、上記ステップＳ３−３−１に戻り、処理を実行していないビンを、処理対象のビンに設定する。一方、全てのビンについて、上記ステップＳ３−３−１〜Ｓ３−３−９の処理を実行した場合には、本処理ルーチンを終了する。
【００６６】
上記の処理ルーチンが実行されると、各ビン別に、全ての(ｘ,ｙ)において、サブ領域のヒストグラムの値が算出されて、ビン別のサブ領域積算値画像が作成される。また、各ビン別に、全ての(ｘ,ｙ)において、サブ領域間のヒストグラムの値の２乗和が算出されて、ビン別のサブ領域積算値積分画像が作成される。
【００６７】
また、ステップＳ５は、図９に示すヒストグラム作成処理ルーチンによって実現される。上記ステップＳ４で設定された検索位置（画素位置）のサブウィンドウ及びサブ領域についてヒストグラムが作成される。例えば、サブウィンドウの左上隅を検索位置とした場合、上記図１に示すように、サブウィンドウ及びサブ領域が設定される。
【００６８】
ステップＳ５−１では、各ビン別に、当該ビンに対するサブ領域積算値画像から、設定されたサブ領域の位置に付与された積算値を読み込み、当該サブ領域のヒストグラムの、当該ビンに対する値とする。そして、ステップＳ５−２において、各ビン別に、サブウィンドウの４隅の座標を用いて、当該ビンに対するサブ領域積算値積分画像から、サブウィンドウ内に含まれる複数のサブ領域のヒストグラムの値の２乗和を読み込むことにより、各ビン別に、サブ領域のヒストグラムの値の２乗和を算出する。
【００６９】
ここで、図１０を用いて、サブ領域積算値積分画像から、各ビン別にサブ領域のヒストグラムの値の２乗和を算出する方法を説明する。サブウィンドウ４隅がＰ(ｘ,ｙ)、Ｑ(ｘ,ｙ)、Ｒ(ｘ,ｙ)、Ｓ(ｘ,ｙ)の4点で定義されているとする。ここで、Ｐ(ｘ)＜ｘ”≦Ｑ(ｘ)、Ｐ(ｙ)<ｙ”≦Ｒ(ｙ)、Ｐ(ｘ)＝Ｒ(ｘ)、Ｐ(ｙ)＝Ｑ(ｙ)、Ｑ(ｘ)＝Ｓ(ｘ)、及びＲ(ｙ)＝Ｓ(ｙ)、ｘ”はサブウィンドウ内の画素のｘ軸の座標値、ｙ”はサブウィンドウ内の画素のｙ軸の座標値である。検索位置（ｘ”,ｙ”）での各ビン別のサブ領域の積算値の２乗和Σｓ（ｘ”,ｙ”）は、以下の（７）式から算出される。
【００７０】
【数８】
0005674535.tif 000009
【００７１】
そして、ステップＳ５−３に基づいて、上記ステップＳ５−１で読み込んだ各ビン別のサブ領域のヒストグラムの値に基づいて、サブ領域毎のヒストグラムを作成する。また、上記ステップＳ５−２で算出した各ビン別のサブ領域のヒストグラムの値の２乗和を、各ビン別のヒストグラムの値の２乗和とし、ヒストグラム作成処理ルーチンを終了する。
【００７２】
上記に説明したように本発明の実施の形態に係る画像処理装置１００は、検索対象画像から特徴抽出部２０で抽出された各画素の特徴値に基づいて、ヒストグラム作成部３０によって、各ビン別にサブ領域積算値画像及びサブ領域積算積分画像を作成する。そして、検索処理が実行される場合、各検索位置において、各ビン別にサブ領域積算画像を用いてサブ領域のヒストグラムの構成要素（ヒストグラムのビン別の値）を取得し、検索位置における全ビンのヒストグラムを作成する。また各ビン別にサブ領域積算積分画像を用いてサブウィンドウ内の全サブ領域のヒストグラムの値の２乗和を算出することで、検索位置におけるヒストグラムの２乗和を求める。
【００７３】
これにより、本発明の実施の形態に係る画像処理装置１００は、検索位置毎にサブ領域の積算値の算出及び２乗値の計算及び積算を繰り返すことなく、検索位置において設定されたサブウィンドウから高速にヒストグラムやヒストグラムの値の２乗和を求めることが可能となる。
【００７４】
次に、上記の実施の形態に係る手法を適用して実験を行った結果について説明する。ここでは、上記の実施の形態に係る手法を適用して、類似性を判定する尺度として正規化相関を用いると共に、図１１の検索対象画像及びその中の一部を抜き出して作成したテンプレート画像を用いて、検索を実行した。比較手法として、全探索法及びＩｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法を適用して、同様に検索を実行した。また、特徴には各ＲＧＢ値を４個、８個、１６個、３２個、４３個、６４個に量子化した値を用いた。従って、ヒストグラムのビン数は各々１２、２４、４８、９６、１２９、１９２となる。サブウィンドウ内のサブ領域の数は８×８＝６４とした。実験結果を以下の表１に示す。各数値は検索の実行時間［ms］を表す。
【００７５】
【表１】
0005674535.tif 000010
【００７６】
上記の表１により、全探索法及びＩｎｔｅｇｒａｌ  ｈｉｓｔｏｇｒａｍ法に対して、上記の実施の形態にかかる手法を用いた検索では、非常に高速な検索が実現出来ており、上記の実施の形態にかかる手法の有効性が分かった。 
【００７７】
以上説明したように、本実施の形態に係る画像処理装置によれば、各ビンに対して、サブ領域内の画素の特徴値の積算値を付与したサブ領域積算値画像と、原点とサブ領域とを対角とする矩形領域を分割して得られるサブ領域の各々における、サブ領域の特徴値の積算値の２乗和を、積算値として付与したサブ領域積算値積分画像と生成することにより、サブウィンドウが複数のサブ領域からなる場合に、サブ領域毎に特徴値のヒストグラムを高速に算出すると共に、各サブ領域におけるヒスグラムの値の２乗和を高速に算出することができる。
【００７８】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００７９】
例えば、特徴として色情報、輝度値、エッジ情報を用いたが、当然ながら他の特徴も使用可能であり、本発明による手法は特徴の種別に依存せずに利用可能である。
【００８０】
また、上記の実施の形態では、検索位置としてサブウィンドウの左上隅の座標を設定したが、検索処理を通して全サブウィンドウに共通した設定であれば、付与する座標はサブウィンドウ内の任意の位置に設定可能である。
【００８１】
また、上記の実施の形態では、サブ領域の積算値をサブ領域の左上隅の座標に付与したが、全サブ領域に共通した設定であれば、付与する座標はサブ領域内の任意の位置に設定可能である。
【００８２】
また、上記の実施の形態では、画素値の積算値を算出する際に積分画像を用いたが、当然ながら処理時間は増えるものの、都度画素値の加算処理を実行する手法も使用可能である。
【００８３】
また、上記の実施の形態では、類似尺度として正規化相関を用いた場合に必要な、サブ領域のヒストグラムの積算値を２乗した値を各画素に付与して、サブ領域積算値積分画像を作成したが、当然ながら別の類似尺度等に応じた２乗値以外の値を付与した積算画像の作成も可能である。
【００８４】
また、上記の実施の形態では、サブ領域の積算値を各サブ領域の座標値に付与したが、当然ながら２乗値を用いたサブ領域積算画像と同様に、サブ領域の積算値を更に複数のサブ領域間で総和した値を付与して、サブ領域積算画像を作成し、利用する事も可能である。
【００８５】
また、上記の実施の形態では、サブ領域のヒストグラムの積算値を２乗した値を積算したサブ領域積算値積分画像から、サブウィンドウ内の２乗和を算出したが、当然ながら左記サブ領域積算値積分画像を用いて、任意の個数のサブ領域からなる領域から、左記領域に含まれる２乗和を高速に算出する事も可能である。
【００８６】
また、上記の実施の形態では、検索処理に用いるヒストグラムの作成方法について説明したが、当然ながら本発明による手法は検索処理に関わらず、処理対象領域のヒストグラムの作成が必要な処理に利用可能である。例えば、図１２に示すように、複数のサブ領域からなる領域を、ヒストグラムを抽出したい領域として設定し、当該領域に関するヒストグラムやヒストグラムの値の２乗和などが必要な処理に利用可能である。
【００８７】
また、上記図２における画像処理装置１００が備えている入力部１０、特徴抽出部２０、ヒストグラム作成部３０、及び出力部４０という各構成は、専用のハードウェアにより実現されるものであってもよく、また、メモリおよびマイクロプロセッサにより実現させるものであってもよい。
【００８８】
また、この各構成は、メモリおよびＣＰＵ（中央演算装置）により構成され、各構成の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
【００８９】
また、この各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、各構成による処理が実行されてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００９０】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００９１】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００９２】
１０   入力部
２０   特徴抽出部
３０   ヒストグラム作成部
４０   出力部
１００ 画像処理装置
【図２】
0005674535.tif 000011
【図３】
0005674535.tif 000012
【図４】
0005674535.tif 000013
【図５】
0005674535.tif 000014
【図６】
0005674535.tif 000015
【図９】
0005674535.tif 000016
【図１０】
0005674535.tif 000017
【図１２】
0005674535.tif 000018
【図１】
0005674535.tif 000019
【図７】
0005674535.tif 000020
【図８】
0005674535.tif 000021
【図１１】
0005674535.tif 000022