(57)【要約】【課題】累積情報を扱う際の配列（メモリ）を小さくすることができる情報処理装置及び情報処理方法等を提供する。【解決手段】先ず、処理対象画像に対して、処理対象画像を所定の領域（分割領域）に分割し、分割領域毎に画素値の累積情報（分割領域累積情報）を算出する（ステップＳ４１）。次いで、分割領域累積情報を利用して、処理対象画像上に規定される特定領域（矩形領域）内の画素値の総和（特定領域内総和値）を求める（ステップＳ４２）。【選択図】図４
2010134692.tif 000002
【特許請求の範囲】
【請求項１】
複数次元配列の処理対象情報を複数の分割領域に分割する分割手段と、
前記処理対象情報内の各要素位置に対応する累積情報値として、前記分割領域の所定の原点位置と前記分割領域に属する前記処理対象情報の各要素位置とを対角とする領域内の全ての要素値の総和値を、前記分割領域毎に算出する算出手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記分割領域毎に算出された累積情報値を用いて、前記処理対象情報上に規定される特定領域内の要素値の総和を求める総和算出手段を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記総和算出手段は、
前記特定領域が複数の前記分割領域にまたがっているか否かを判別する判別手段と、
またがっている場合に、前記特定領域を、またがっている前記分割領域の夫々に応じた分割特定領域に分割する特定領域分割手段と、
前記分割特定領域毎に、当該分割特定領域内の要素値の総和を求める第２の算出手段と、
を有することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記複数の分割領域の大きさは、互いに等しいことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記複数の分割領域の大きさは、前記特定領域のうち最大のものの大きさ以上であることを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記複数次元配列は２次元配列であり、
前記分割領域の所定の原点位置と前記分割領域の各要素位置とを対角とする領域は矩形領域であることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記特定領域は矩形領域であることを特徴とする請求項２乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記複数次元配列は３次元以上の配列であり、
前記分割領域の所定の原点位置と前記分割領域の各要素位置とを対角とする領域とは超直方体であることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項９】
前記特定領域は超直方体領域であることを特徴とする請求項２、３、４、５又は８に記載の情報処理装置。
【請求項１０】
複数次元配列の処理対象情報を複数の分割領域に分割する分割ステップと、
前記処理対象情報内の各要素位置に対応する累積情報値として、前記分割領域の所定の原点位置と前記分割領域に属する前記処理対象情報の各要素位置とを対角とする領域内の全ての要素値の総和値を、前記分割領域毎に算出する算出ステップと、
を有することを特徴とする情報処理方法。
【請求項１１】
コンピュータに、
複数次元配列の処理対象情報を複数の分割領域に分割する分割ステップと、
前記処理対象情報内の各要素位置に対応する累積情報値として、前記分割領域の所定の原点位置と前記分割領域に属する前記処理対象情報の各要素位置とを対角とする領域内の全ての要素値の総和値を、前記分割領域毎に算出する算出ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、矩形領域内の信号値の合計及び平均等を求めるフィルタ演算並びにこのようなフィルタ演算を用いたパターン識別等に好適な情報処理装置及び情報処理方法等に関する。
【背景技術】
【０００２】
情報処理の分野では、多次元配列を頻繁に扱う。その中で、特定範囲内の要素の和を求めることが多い。そして、非特許文献１には、コンピュータ・グラフィックスの処理に関し、長方形の累積情報（summed-area table）の概念が記載されている。累積情報とは、任意の点における要素値が、元画像の原点とその任意の点とを対角とする領域内の画素値の総和となるようなデータである。
【０００３】
ここで、図１３を用いて累積情報を用いた矩形領域内の画素値の総和の算出処理について説明する。図１３は、累積情報の例を示す図である。この例では、元画像の左上の点を原点としている。そして、図１３中の要素１は、元画像における領域Ａに含まれる全画素の画素値の総和を要素値として持つ。このため、元画像における領域Ｄに含まれる全画素の画素値の合計は、４の要素値から要素２及び要素３の要素値を減算し、要素１の要素値を加算することによって算出される。つまり、元画像での矩形領域の画素値の総和が、累積情報を用いれば、矩形領域の４隅のデータ値を加減算することで高速に求めることができる。
【０００４】
つまり、入力画像の画素値をＩ（ｘ，ｙ）として、累積情報Ｃ（ｘ，ｙ）を数１に示すように定義した場合、入力画像に置かれた任意の矩形領域内のＩ（ｘ，ｙ）の和は、数２に示す式を使って累積情報上の４点を参照するのみで、求めることができる。
【０００５】
【数１】
2010134692.tif 000003
【０００６】
【数２】
2010134692.tif 000004
【０００７】
ここで、（ｘ0，ｙ0）は長方形の左上の頂点座標、（ｘ1，ｙ1）は右下の頂点座標である。このような処理により、画像上の矩形領域内の値の和を高速に求めることが可能となる。ただし、座標は０から始まるものとし、Ｃ（ｘ，−１）及びＣ（−１，ｙ）は０とする。
【０００８】
また、画像認識の分野においては、非特許文献２に、上記のような累積情報(Integral Image）を使って高速な顔検出を行うことが記載されている。
【０００９】
【非特許文献１】Crow, "Summed-Area Tables For Texture Mapping", Computer Graphics, Vol. 18(3), pp. 207-212, July 1984.
【非特許文献２】P. Viola, M. Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features", Proc. IEEE Conf. on Computer Vision and Pattern Recognition, Vol. 1, pp. 511-518, December 2001.
【発明の開示】
【発明が解決しようとする課題】
【００１０】
このような累積情報の要素値は、元画像の原点から離れるほど、図１３に示す例では、右下に向かうほど単調に増加する。従って、累積情報を配列（メモリ）に格納しようとした場合、その配列は、累積情報の右下のデータ値（元画像の原点である左上から最も離れた位置の累積情報値、つまり、累積情報の最大の要素値）が格納できるだけのビット幅を持つ必要がある。
【００１１】
この場合、元画像のサイズが大きくなればなるほど、累積情報の桁数が増加し、そのため累積情報を格納するのに必要な配列のビット幅が大きくなり、その結果、配列全体のサイズが巨大になる。
【００１２】
この課題に対し、非特許文献１には、元画像を分割し、その分割した元画像単位で累積情報を算出すると同時に、別の配列に、元画像の原点から分割画像の原点までの累積値を記憶しておく処理が記載されている。
【００１３】
しかしながら、このような処理を行うためには、累積値を記憶しておくための配列（メモリ）が別途必要となってしまう。
【００１４】
本発明は、累積情報を扱う際の配列（メモリ）を小さくすることができる情報処理装置及び情報処理方法等を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本願発明者は、前記課題を解決すべく鋭意検討を重ねた結果、以下に示す発明の諸態様に想到した。
【００１６】
本発明に係る情報処理装置は、複数次元配列の処理対象情報を複数の分割領域に分割する分割手段と、前記処理対象情報内の各要素位置に対応する累積情報値として、前記分割領域の所定の原点位置と前記分割領域に属する前記処理対象情報の各要素位置とを対角とする領域内の全ての要素値の総和値を、前記分割領域毎に算出する算出手段と、を有することを特徴とする。
【００１７】
本発明に係る情報処理方法は、複数次元配列の処理対象情報を複数の分割領域に分割する分割ステップと、前記処理対象情報内の各要素位置に対応する累積情報値として、前記分割領域の所定の原点位置と前記分割領域に属する前記処理対象情報の各要素位置とを対角とする領域内の全ての要素値の総和値を、前記分割領域毎に算出する算出ステップと、を有することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、２次元以上の複数次元配列である処理対象情報の累積情報を算出する際の累積情報の桁数の増加を抑制することができる。このため、累積情報を格納するためのバッファ容量を低減したり、累積情報を用いた演算回路の規模を縮小したりすることが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。
【００２０】
（第１の実施形態）
先ず、本発明の第１の実施形態について説明する。図１は、本発明の第１の実施形態に係る情報処理装置の構成を示すブロック図である。本実施形態では、情報処理として、矩形領域内の画素値の総和を算出する画像処理を行う。また、矩形領域内の画素の総和を算出する際には、累積情報を用いる。
【００２１】
第１の実施形態に係る情報処理装置には、図１に示すように、ＣＰＵ１０１、情報入力部１０２、ＤＭＡコントローラ（ＤＭＡＣ）１０３、処理対象情報格納メモリ１０４、バス１０５及び累積情報演算処理部１００が設けられている。ＣＰＵ１０１が累積情報演算処理部１００を兼用してもよい。
【００２２】
ＣＰＵ１０１は、バス１０５を介して接続される各部を制御し、情報処理装置が目的とする所望の処理を実現する。
【００２３】
情報入力部１０２は、複数次元の処理対象情報を入力する。例えば処理対象となる入力画像データを装置内に取り込む。情報入力部１０２は、ＣＣＤ等の画像センサによって構成されてもよく、また、ネットワーク等の所定の通信経路を持って外部装置から処理したいデータを受信するＩ／Ｆ装置であってもよい。
【００２４】
処理対象情報格納メモリ１０４は、例えば、ＲＯＭ、ＲＡＭ又はＨＤＤ等のストレージ装置で構成されており、バス１０５に接続されている。処理対象情報格納メモリ１０４は、処理対象情報を保持する領域として用いられる。また、ＣＰＵ１０１の動作内容を示すプログラムコードを記憶したり、各種処理を行ったりする作業領域（図示せず）を兼用してもよい。ここで、処理対象情報は、例えば画像データであり、本実施形態では、図５に示すように、２５６画素×２５６画素のサイズで、画素値が８ビットで表されている画像データが、処理対象情報格納メモリ１０４に格納されているとする。
【００２５】
ＤＭＡコントローラ１０３は、ＣＰＵ１０１が設定して動作指令を行うと、情報入力部１０２、処理対象情報格納メモリ１０４及び累積情報演算処理部１００間での所定サイズのデータ転送を自立的に連続して制御する。そして、指令された転送動作が完了すると、バス１０５を介して割り込み信号をＣＰＵ１０１に通知する。
【００２６】
累積情報演算処理部１００には、バス１０５に接続するバスＩ／Ｆ１１０、累積情報生成部１１１、累積情報利用演算部１１２、累積情報保持部１１３及び分割制御部１１４が設けられている。
【００２７】
累積情報保持部１１３には、詳細は後述するが、図２に示すように、累積情報を保持する累積情報保持メモリ、及びこのメモリへの入出力を制御するメモリコントローラが設けられている。
【００２８】
累積情報生成部１１１は、情報入力部１０２から入力され、処理対象情報格納メモリ１０４に格納された処理対象画像の累積情報（処理対象情報内の各要素位置に対応する累積情報値）を生成し、この累積情報を累積情報保持部１１３へ格納する。この際に、分割制御部１１４による制御に基づき、単純な累積情報ではなく、分割領域累積情報を算出する。ここで、処理対象画像を分割した夫々の画像を分割領域といい、分割領域累積情報とは、処理対象画像を分割領域に分割し、分割領域毎に算出する累積情報をいう。なお、本実施形態では、ＣＰＵ１０１の制御により、処理対象情報格納メモリ１０４に格納された画像情報が、１画素ずつラスタスキャン順に累積情報演算処理部１００に送られ、累積情報生成部１１１が、この画像情報に対して分割領域累積情報を算出する。なお、累積情報生成部１１１の詳細は、図２を参照しながら後述する。
【００２９】
累積情報利用演算部１１２は、ＣＰＵ１０１からの要求に従って累積情報保持部１１３に保持されている領域分割累積情報を用いた演算処理を行い、その結果をＣＰＵ１０１に返す。なお、累積情報利用演算部１１２の詳細は、図３を参照しながら後述する。
【００３０】
分割制御部１１４には、予め分割パラメータが設定されている。分割パラメータとは、処理対象画像をどのように分割するのかを規定するパラメータである。例えば、本実施形態では、図５に示すように、６４画素×６４画素のサイズを単位として全て同サイズの分割領域に分割するということが分割パラメータによって規定されている。分割パラメータのフォーマットは、分割の状態が表現できるものであれば、任意である。分割パラメータは、予め何らかの手段（例えばＣＰＵ１０１）により、分割制御部１１４に設定されている。
【００３１】
そして、分割制御部１１４は、分割パラメータにしたがって、分割境界情報を累積情報生成部１１１及び累積情報利用演算部１１２に出力する。分割境界情報のフォーマットは、分割の状態が表現できるものであれば、任意である。例えば、本実施形態では、図５に示すように、ｘ座標及びｙ座標の夫々について、６４の手前（６３と６４との間）、１２８の手前（１２７と１２８との間）、及び１９２の手前（１９１と１９２との間）の位置で、垂直方向及び水平方向に分割が行われているという情報が分割境界情報となっている。
【００３２】
ここで、図２を参照しながら累積情報生成部１１１の詳細について説明する。図２は、累積情報生成部１１１の構成、並びにバスＩ／Ｆ１１０及び累積情報保持部１１３との接続関係を示すブロック図である。
【００３３】
累積情報生成部１１１には、図２に示すように、入力情報サイズ記憶レジスタ２０１、アドレスカウンタ２０２、入力要素値保持レジスタ２０３、水平方向累積値保持レジスタ２０４、及び前ライン累積情報値参照レジスタ２０５が設けられている。更に、累積加算処理部２０６及び初期化制御部２０７も設けられている。
【００３４】
入力情報サイズ記憶レジスタ２０１は、情報入力部１０２より入力される複数次元配列情報（例えば、２次元の画像情報）のサイズを記憶し、バスＩ／Ｆ１１０を介してＣＰＵ１０１により処理開始前に値が設定される。
【００３５】
入力要素値保持レジスタ２０３は、バスＩ／Ｆ１１０を介してＣＰＵ１０１又はＤＭＡＣ１０３の制御により入力される入力配列情報の１要素値（例えば、画素値）を、順に一時保持する。本実施形態では、前述のように、処理対象情報格納メモリ１０４に格納された画像情報が、１画素ずつラスタスキャン順に累積情報演算処理部１００に送られる。
【００３６】
アドレスカウンタ２０２は、入力情報サイズ記憶レジスタ２０１に記憶されている入力配列情報のサイズに基づき、入力値保持レジスタに要素値が入力される毎に、対応して生成される累積情報値を格納すべき累積情報保持部のメモリアドレスを計算する。入力情報の最初の画素（原点位置）が入力されると、格納すべきアドレスは０または所定のオフセット値にリセットされ、以後画像の終端画素の入力まで、格納先アドレスを１ずつインクリメントする。
【００３７】
また、アドレスカウンタ２０２は、入力情報サイズ記憶レジスタ２０１に記憶されている入力配列情報のサイズを参照し、処理対象情報格納メモリ１０４からラスタスキャン順で送られてくる画素の位置（処理対象情報上での座標）を算出する。そして、アドレスカウンタ２０２は、算出した入力画素値座標を初期化制御部２０７に出力する。更に、アドレスカウンタ２０２は、入力画素が２ライン目以降のものになった場合、１ライン前の同列位置の累積情報が格納されている前ライン累積情報アドレスを計算する。これは、先に算出した格納先アドレスから、１ラインの要素個数を引くことにより得られる。アドレスカウンタ２０２が計算したアドレスは、累積情報保持部１１３内のメモリコントローラ１１３−２に与えられ、同じく累積情報保持部１１３内の累積情報保持メモリ１１３−１の当該アドレスへの書き込み又は読み出しが行われる。
【００３８】
前ライン累積情報値参照レジスタ２０５は、アドレスカウンタ２０２が算出した前ライン累積情報アドレスを用いて、累積情報保持メモリ１１３−１から読み出された累積情報値を一時保持する。但し、初期化制御部２０７が初期化指示を出力していれば、累積情報保持メモリ１１３−１から読み出された累積情報値に関わらず、前ライン累積情報値参照レジスタ２０５には０がセットされる。
【００３９】
水平方向累積値保持レジスタ２０４は、現在投入中の画素が属する分割領域内の１ラインのみについて、分割領域の先頭画素からの累積加算情報を保持する。入力要素値保持レジスタ２０３に画素が投入された時点では、その前回までの画素の累積加算値が保持された状態となっている。このレジスタ値は投入中の画素が属する分割領域内の１ラインについてのみ保持するものである。従って、入力してくる画素が分割領域を超えた場合や、次ラインになった場合には、水平方向累積値保持レジスタ２０４は、初期化制御部２０７からの初期化指示により０にセットされる。
【００４０】
初期化制御部２０７は、分割制御部１１４から送られてくる分割境界情報を用いて、水平方向累積値保持レジスタ２０４及び前ライン累積情報値参照レジスタ２０５に対して初期化の指示を行う。これは、累積情報演算処理部１００で算出されているのが、１つの累積情報でなく、分割領域毎に算出された累積情報（分割領域累積情報）であるからである。
【００４１】
初期化制御部２０７は、前ライン累積情報値参照レジスタ２０５に対しては、入力してくる画素が、各分割領域の上端のラインに属する画素である場合に初期化を指示し、前ライン累積情報値参照レジスタ２０５を０にする。一方、水平方向累積値保持レジスタ２０４に対しては、入力してくる画素が、各分割領域の左端の列に属する画素である場合に初期化を指示し、水平方向累積値保持レジスタ２０４を０にする。
【００４２】
累積加算処理部２０６には、加算器２０６−１及び２０６−２が設けられている。加算器２０６−１は数３に加算を行い、加算器２０６−２は数４に示す加算を行う。ここで、Ｉ（ｘ，ｙ）は入力画像の画素値を示し、Ｃ（ｘ，ｙ）は累積情報を示し、Ｓ（ｘ，ｙ）はある垂直方向座標ｙにおける水平方向の画素値の累積値を示す。但し、座標は０から始まり（原点は画像左上）、Ｓ（０，ｙ）＝Ｉ（０，ｙ）、及びＣ（ｘ，０）＝Ｓ（ｘ，０）の関係が成り立つ（つまり、Ｓ（−１，ｙ）及びＣ（ｘ，−１）は０である）。初期化制御部２０７が上記の初期化の指示を行うのは、このようなＳ（−１，ｙ）及びＣ（ｘ，−１）を０とする設定を各分割領域に対しても行うためである。
【００４３】
【数３】
2010134692.tif 000005
【００４４】
【数４】
2010134692.tif 000006
【００４５】
つまり、加算器２０６−１は、水平方向累積値と入力画素値との加算を行う。加算された結果は、新たな水平方向累積値として、水平方向累積値保持レジスタ２０４へフィードバック格納され、次の画素が入力されてきたときに使用される。
【００４６】
また、加算器２０６−２は、加算器２０６−１の出力と前ライン累積情報値参照レジスタ２０５に保持されている分割領域累積情報値との加算を行う。この加算結果が当該入力画素位置に対応する分割領域累積情報値となり、メモリコントローラ１１３−２を介して、累積情報保持メモリ１１３−１のアドレスカウンタ２０２で計算された格納アドレスに格納される。
【００４７】
次に、このように構成された累積情報生成部１１１の動作、即ち累積情報の算出手順について説明する。累積情報生成部１１１では、主として、加算器２０６−１及び２０６−２の動作により、累積情報が順次算出される。
【００４８】
但し、数３及び数４の加算により分割領域累積情報を算出する場合、垂直方向の分割境界（図５において矢印Ａで示されるような境界）では、水平方向の画素値の累積値Ｓを初期化する。つまり、初期化制御部２０７が、Ｓ（６４，ｙ）＝Ｉ（６４，ｙ）とし、Ｓ（１２８，ｙ）＝Ｉ（１２８，ｙ）とし、Ｓ（１９２，ｙ）＝Ｉ（１９２，ｙ））とする。同様に、水平方向の分割境界（図５において矢印Ｂで示されるような境界）では、累積情報値Ｃを初期化する。つまり、初期化制御部２０７が、Ｃ（ｘ，６４）＝Ｓ（ｘ，６４）とし、Ｃ（ｘ，１２８）＝Ｓ（ｘ，１２８）とし、Ｃ（ｘ，１９２）＝Ｓ（ｘ，１９２））とする。
【００４９】
このように、分割領域累積情報を算出する際には、垂直方向の分割境界及び水平方向の分割境界において、水平方向累積値（Ｓ）及び累積情報値（Ｃ）を初期化する必要があり、そのために分割制御部１１４から受け取る分割境界情報を利用する。
【００５０】
次に、図３を参照しながら累積情報利用演算部１１２の構成及び動作の詳細について説明する。図３は、累積情報利用演算部１１２の構成、並びにバスＩ／Ｆ１１０及び累積情報保持部１１３との接続関係を示すブロック図である。本実施形態では、前述のように、累積情報を利用した画像処理の内容として、矩形領域内の画素値の総和を算出する処理とする。
【００５１】
累積情報利用演算部１１２には、図３に示すように、特定領域指定レジスタ３０１、参照アドレス計算部３０２、参照値一時保持レジスタ３０３、加減算処理部３０４、演算結果保持レジスタ３０５、及び特定領域分割部３０６が設けられている。
【００５２】
なお、入力情報サイズ記憶レジスタ２０１は、累積情報生成部１１１内のものであり、前述のように、累積情報の生成前にＣＰＵ１０１によりバスＩ／Ｆ１１０を介して予め入力情報のサイズが設定されている。
【００５３】
特定領域指定レジスタ３０１は、ＣＰＵ１０１により行われた画素値の総和を求めたい特定領域（例えば、矩形領域）の指定を保持する。特定領域の指定とは、その特定領域の形状を規定するのに必要な座標を指定することを意味する。従って、特定領域が矩形領域の場合、ＣＰＵ１０１は、この矩形領域を表す２点の対角座標を、バスＩ／Ｆ１１０を介して特定領域指定レジスタ３０１に設定する。本実施形態では、図５に示すように、特定領域として、座標（８０，１６０）及び座標（２２３，２０７）を対角座標とする矩形領域が指定されるとする。このため、座標（８０，１６０）及び座標（２２３，２０７）が特定領域指定レジスタ３０１に設定される。
【００５４】
特定領域分割部３０６は、特定領域指定レジスタ３０１にて指定されている特定領域を、分割制御部１１４から送られてくる分割境界情報に従って分割する。本実施形態では、累積情報が分割領域毎に算出されるため、特定領域分割部３０６が、特定領域を分割領域に応じて分割する。この分割領域に応じて分割された特定領域を分割特定領域という。その上で、分割特定領域毎に、対応する分割領域の分割領域累積情報を用いることで、第２の算出手段として分割特定領域内の画素値の総和を夫々算出する。更に、分割特定領域毎の総和を合計して、特定領域内の画素値の総和を算出する。特定領域分割部３０６は、分割制御部１１４から送られてくる分割境界情報に応じて、分割した分割特定領域内の画素値の総和を算出するのに必要な座標を算出する。
【００５５】
本実施形態では、特定領域が矩形領域で、分割領域も矩形領域であるので、分割特定領域も矩形領域になる。矩形領域内の画素値の総和は、前述のように矩形の４隅の座標が判明していれば、対応する４点の累積情報の値（累積情報値）を用いて求めることができる。従って、特定領域分割部３０６は、分割特定領域の夫々の２点の対角座標を算出する。本実施形態では、図５に示すように、分割特定領域の２点の対角座標として、（８０，１６０）及び（１２７，１９１）の組み合わせ、（１２８，１６０）及び（１９１，１９１）の組み合わせ、（１９２，１６０）及び（２２３，１９１）の組み合わせ、（８０，１９２）及び（１２７，２０７）の組み合わせ、（１２８，１９２）及び（１９１，２０７）の組み合わせ、並びに（１９２，１９２）及び（２２３，２０７）の組み合わせを算出する。以下、これらの２点の対角座標により表わされる分割特定領域を、順に分割特定領域Ａ〜Ｆということとする。
【００５６】
参照アドレス計算部３０２は、特定領域分割部３０６が分割特定領域毎に算出した２点の対角座標を利用して、累積情報を参照するアドレスを算出する。例えば分割特定領域Ａは、４隅が、夫々、左上（８０，１６０）、右上（１２７，１６０）、左下（８０，１９１）、右下（１２７，１９１）という座標を持つ。従って、参照アドレス計算部３０２は、これらの座標（７９，１５９）、（１２７，１５９）、（７９，１９１）及び（１２７，１９１）に対応する累積情報を格納しているアドレスを算出する。そして、このアドレスを順にメモリコントローラ１１３−２に受け渡す。他の分割特定領域Ｂ〜Ｆについても同様の処理を行う。なお、累積情報は、例えば数１で表わされる。
【００５７】
メモリコントローラ１１３−２は、送られてくるアドレスに基づき累積情報保持メモリ１１３−１にアクセスし、分割特定領域毎に順次取得した４点の累積情報値を参照値一時保持レジスタ３０３に設定する。但し、以下に示すように、分割特定領域の上側境界と分割領域の上側境界とが一致している場合、及び、分割特定領域の左側境界と分割領域の左側境界とが一致している場合には、累積情報保持メモリ１１３−１を参照して取得した累積情報値に拘わらず、０を設定する場合がある。これは、累積情報保持メモリ１１３−１に格納されている情報が、１つの累積情報でなく、分割領域毎に算出された累積情報（分割領域累積情報）だからである。つまり、上述のように、数３及び数４に示す加算の際にＣ（ｘ，−１）及びＣ（−１，ｙ）を０としており、これと同様の設定を各分割領域に対しても行うためである。
【００５８】
このような分割特定領域の上側境界と分割領域の上側境界とが一致しているという情報、及び、分割特定領域の左側境界と分割領域の左側境界とが一致しているという情報は、特定領域分割部３０６によって算出される。そして、参照値一時保持レジスタ３０３は、この情報に基づいて必要なレジスタに０を設定する。なお、０が設定されると判明している累積情報値に関しては、累積情報保持メモリ１１３−１への参照を省略することも可能である。
【００５９】
上側境界が、分割領域の上側境界と一致している分割特定領域（例えば、図５の分割特定領域Ｄ、Ｅ、Ｆ）に関し、分割特定領域の４隅のうち、上側境界と接している角に対応する累積情報値を格納するレジスタには、累積情報値として０が設定される。例えば、分割特定領域Ｄは、４隅が、夫々、左上（８０，１９２）、右上（１２７，１９２）、左下（８０，２０７）、右下（１２７，２０７）という座標を持つ。従って、分割特定領域Ｄの画素値の総和を求めるには、座標（７９，１９１）、（１２７，１９１）、（７９，２０７）及び（１２７，２０７）に対応する累積情報を参照する。このとき、分割特定領域Ｄの上側境界と分割領域の上側境界が一致しているので、上側境界と接している角に対応する累積情報値、つまり、座標（７９，１９１）及び（１２７，１９１）に対応する累積情報値は、０として参照値一時保持レジスタ３０３に格納される。
【００６０】
同様に、左側境界が、分割領域の左側境界と一致している分割特定領域（例えば、図５の分割特定領域Ｂ、Ｃ、Ｅ、Ｆ）に関しても、分割特定領域の４隅のうち、左側境界と接している角に対応する累積情報値を格納するレジスタには、累積情報値として０が設定される。例えば、分割特定領域Ｂは、４隅が、夫々、左上（１２８，１６０）、右上（１９１，１６０）、左下（１２８，１９１）、右下（１９１，１９１）という座標を持つ。従って、分割特定領域Ｂの画素値の総和を求めるには、座標（１２７，１５９）、（１９１，１５９）、（１２７，１９１）、及び（１９１，１９１）に対応する累積情報を参照する。このとき、分割特定領域Ｂの左側境界と分割領域の左側境界が一致しているので、左側境界と接している角に対応する累積情報値、つまり、座標（１２７，１５９）及び（１２７，１９１）に対応する累積情報値は、０として参照値一時保持レジスタ３０３に格納される。
【００６１】
参照値一時保持レジスタ３０３に分割特定領域毎に４点の値が保持されると、加減算処理部３０４が、４点の値を用いた所定の加減算処理を実行し、その分割特定領域の画素値の総和を算出する。所定の加減算処理としては、例えば数１に示す演算の処理が挙げられる。加減算処理部３０４は、それぞれの分割特定領域の画素値の総和の算出を、全ての分割特定領域に対して行った後、それらを合計することにより、特定領域の画素値の総和を算出する。
【００６２】
この演算結果は、演算結果保持レジスタ３０５に保持される。ＣＰＵ１０１は演算完了を、バスＩ／Ｆ１１０を介して割り込み通知や完了フラグの参照等によって知ることができる。そして、演算結果保持レジスタ３０５の値を取得し、設定した矩形領域の総和値として使用する。
【００６３】
次に、上述のように構成された情報処理装置による画像処理の動作について説明する。図４は、第１の実施形態に係る情報処理装置の動作を示すフローチャートである。
【００６４】
先ず、ステップＳ４１において、累積情報生成部１１１が、処理対象情報格納メモリ１０４に格納されている処理対象画像のデータを読み出して、処理対象画像の累積情報を作成する。この際に、累積情報生成部１１１は、分割制御部１１４の制御により、単純な累積情報ではなく、分割領域累積情報を算出する。算出された分割領域累積情報は、累積情報保持部１１３に格納される。
【００６５】
次いで、ステップＳ４２において、累積情報生成部１１１が、累積情報保持部１１３に格納されている分割領域累積情報の必要な累積情報値を読み出す。この際に、累積情報生成部１１１は、分割制御部１１４の制御により、累積情報保持部１１３からどの累積情報値を読み出すのかを算出する。読み出した累積情報値は、累積情報利用演算部１１２に受け渡され、累積情報利用演算部１１２が、特定領域（例えば、矩形領域）内の画素値の総和（特定領域内総和値）を算出する。
【００６６】
このように、本実施形態により行われる画像処理は、分割領域累積情報を算出する処理と、算出された分割領域累積情報を利用して特定領域内総和値を算出する処理との２つの処理に大別することができる。
【００６７】
そして、このような本実施形態によれば、累積情報を格納するための配列（メモリ）の大きさを削減することができる。例えば、上述のように、２５６画素×２５６画素のサイズで、画素値が８ビットで表されているような画像データに対し従来の累積情報を作成すると、累積情報保持メモリに必要なビット幅は２４ビットになる。これに対し、本実施形態によれば、分割領域のサイズは６４画素×６４画素となるため、累積情報保持メモリ１１３−１に必要なビット幅は２０ビットでよい。
【００６８】
また、分割領域をより小さくすれば（例えば３２画素×３２画素）、累積情報保持メモリ１１３−１に必要なビット幅を更に小さくすることも可能である。但し、分割領域を小さくすればするほど、特定領域の分割数（分割特定領域の数）が増加するので、特定領域の画素値の総和を算出するのに必要となる累積情報保持メモリ１１３−１へのアクセス回数が増加する。つまり、特定領域の画素値の総和を算出するのに必要な時間が増加する。つまり、処理時間と分割領域の大きさとはトレードオフの関係にある。従って、処理時間の短縮を優先する場合には、回路規模の制約が許す限り、分割領域を大きくすればよく、逆に回路規模の縮小を優先する場合には、処理時間の制約が許す限り、分割領域を小さくすればよい。
【００６９】
また、このような情報処理において、画素値の総和を算出する特定領域のサイズが予め判明している場合には、分割領域のサイズと特定領域のサイズとを等しくすることが好ましい。これらを等しくすることにより、検出対象画像上のどの位置に特定領域を設定しても、特定領域の分割数（分割特定領域の数）を４個以下にすることが可能となり、処理のスケジューリングが容易となるからである。
【００７０】
同様に、特定領域として設定するサイズが複数ある場合には、その中の最大のものと、分割領域のサイズとを等しくすれば、特定領域の分割数（分割特定領域の数）を４個以下にすることが可能となり、処理のスケジューリングが容易となる。
【００７１】
また、本実施形態を応用することにより、非特許文献２に示されたような顔検出を行うことも可能である。
【００７２】
非特許文献２では、図６に示すように、処理対象画像６００内で、処理ウインドウ６０１とよばれる領域を移動させ、各移動先の処理ウインドウ内に顔が含まれるか否かを判定している。そして、この判定に当たり、各移動先の処理ウインドウ６０１内で、特定の矩形領域内の画素値の総和を求めることを、数多くの矩形領域６０２に対し行うことで実現している。
【００７３】
このような処理に対して本実施形態を応用する場合、累積情報利用演算部１１２内の特定領域指定レジスタ３０１に対し、矩形領域６０２に対応する特定領域の指定を何度も行えばよい。
【００７４】
そして、このような処理を行うに際して、前述のように、分割領域のサイズを、矩形領域６０２の最大のサイズ（非特許文献２では、設定する位置やサイズの異なる矩形領域６０２を複数用意している）と等しくすることが好ましい。上述のように、検出対象画像上のどの位置に特定領域を設定しても、特定領域の分割数（分割特定領域の数）を４個以下にすることが可能となり、処理のスケジューリングが容易となるからである。
【００７５】
また、処理ウインドウ６０１のサイズと、矩形領域６０２の最大のサイズとを比較すると、両者は同じであるか、又は処理ウインドウ６０１のサイズの方が大きい。従って、分割領域のサイズを、処理ウインドウ６０１のサイズと等しくしても同様の効果が得られる。
【００７６】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。上述のように、第１の実施形態によれば、処理対象画像全体にわたって分割領域累積情報を予め算出し、累積情報保持メモリ１１３−１に格納することにより、顔検出を行うことが可能である。第２の実施形態は、このような処理を行う際の累積情報保持メモリ１１３−１の容量の更なる縮小を図ったものである。図７は、第２の実施形態に係る情報処理装置の動作（バンドバッファにより分割領域累積情報を保持した際の動作）を示すフローチャートである。また、図８は、第２の実施形態において、分割領域累積情報全域に対し一時に保持されるバンドバッファの様子を示す図である。ここでは、説明の簡単のため、分割領域のサイズが処理ウインドウのサイズに等しいものとする。
【００７７】
先ず、ステップＳ９１において、累積情報生成部１１１が、先頭に位置する所定高さのバンド領域７０２のみについて、分割領域累積情報を生成し、累積情報保持部１１３内の累積情報保持メモリ１１３−１に、バンド領域７０２の分割領域累積情報を格納する。
【００７８】
次いで、ステップＳ９２において、累積情報生成部１１１が、処理ウインドウがバンドの先頭（左端）位置７０１にあるときに、その処理ウインドウ内で、特定の矩形領域内の画素値の総和を求める処理を、数多くの矩形領域に対して行う。そして、処理ウインドウを先頭位置７０１から右に１画素ずらした位置に移動させ、再び同様の処理を行う。以後、処理ウインドウがバンド領域７０２の右端に達するまで、処理ウインドウをずらしながら、同様の処理を繰り返す。
【００７９】
このように、ステップＳ９１〜Ｓ９２において、所定のバンド位置に対して、バンドのサイズ分の分割領域累積情報を算出し、算出した分割領域累積情報を用いて特定領域内の総和の算出を行う。
【００８０】
１バンド領域分の特定領域内の総和の算出（ステップＳ７２）が完了すると、累積情報生成部１１１が、現在処理していたバンド領域が入力情報の最終ラインを含む位置であったかどうかを、ステップＳ９３において判別する。
【００８１】
最終ライン位置でなければ、ステップＳ９４において、ステップＳ９１と同様の処理により、次の１ライン分の分割領域累積情報を生成して保持する。本実施形態におけるバンドバッファは、ライン単位のリングバッファとして構成されているので、新たな１ラインを生成する際には、最も古い１ラインを破棄してこの領域に新たなラインを保持する。このとき、前ライン分の分割領域累積情報は既に累積情報保持メモリのバンドバッファ上に存在しているので、第１の実施形態と同様の処理により１ライン分の累積情報を生成できる。即ち、この演算において、バンドバッファにしたことによるオーバーヘッドは生じない。つまり、分割領域累積情報の所望の位置が、現在のバッファ中のどのアドレスに相当するかを換算する必要はあるが、全域を一度に保持するときに比べて処理のオーバーヘッドはほとんど無い。
【００８２】
次ライン生成・保持後は、累積情報がバンド領域７０３に移った状態となり、累積情報生成部１１１が、再びステップＳ９２の処理を実行する。以後、ステップＳ９３において最終ラインと判別されるまで、１ラインずつバンド領域を下方に移動させつつ、同様の処理を繰り返す。
【００８３】
このように、ステップＳ９２〜Ｓ９４において、最初のバンド内での特定領域内総和算出の完了後に、バンド位置を１ライン下方にスライドし、そのバンド位置に対して、前回算出した分割領域累積情報に追加する１ライン分の分割領域累積情報を算出する。そして、今回算出した１ライン分の分割領域累積情報を、これまでに算出した分割領域累積情報のもっとも古い１ラインに置き換えることで、今回のバンド位置に対する分割領域累積情報とする。続いて、今回のバンド位置に対する分割領域累積情報を用いて特定領域内の総和の算出を行う。
【００８４】
そして、ステップＳ９３で最終ラインに到達したことが判別されると処理を完了する。
【００８５】
このように、本実施形態では、バンド領域７０２は、累積情報保持メモリ１１３−１に一時に保持する所定高さのバンド領域であり、累積情報保持メモリ１１３−１は、一度にはバンド領域７０２の大きさの分割領域累積情報しか格納しない。そして、バンド領域７０２の所定の高さは顔検出処理の処理ウインドウ領域の高さと等しく、幅は処理対象画像情報の幅と等しい。
【００８６】
また、本実施形態では、特定領域内の総和の算出がバンド領域単位で行われる。
【００８７】
そして、本実施形態では、累積情報保持メモリ１１３−１のサイズとして、バンド領域７０２のサイズの分割領域累積情報が格納できるものであればよい。これに対し、第１の実施形態では、累積情報保持メモリ１１３−１のサイズとして、分割領域累積情報７００が格納できるサイズが必要である。つまり、本実施形態によれば、第１の実施形態と比較して、ほとんど演算のオーバーヘッドを生じさせることなく、累積情報保持メモリ１１３−１のメモリ容量を大幅に削減することが可能となる。
【００８８】
第１の実施形態と同様に、処理対象画像を２５６画素×２５６画素のサイズで、画素値が８ビットで表されている画像データとし、処理ウインドウサイズ（＝分割領域のサイズ）６４画素×６４画素とした場合、一時に保持する必要のあるサイズは１バンド分である。従って、最低限用意すべき累積情報保持メモリのサイズ（深さ）は、６４×２５６ですむ。一方、第１の実施形態では、必要な累積情報保持メモリのサイズ（深さ）は２５６×２５６である。なお、累積情報保持メモリの幅は、いずれの実施形態でも２０である。
【００８９】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。第３の実施形態は、バッファ容量の更なる削減を図ったものである。図９は、第３の実施形態に係る情報処理装置の動作（ブロックバッファにより分割領域累積情報を保持した際の動作）を示すフローチャートである。また、図１０は、第３の実施形態において、分割領域累積情報全域に対し一時に保持されるブロックバッファの様子を示す図である。ここでも、説明の簡単のため、分割領域のサイズが処理ウインドウのサイズに等しいものとする。また、ブロックバッファは縦方向線分単位のリングバッファとして構成される。ここで縦方向線分とは、処理ウインドウ高さに一致する長さの線分である。
【００９０】
先ず、ステップＳ１１０１において、累積情報生成部１１１が、処理対象画像の左上を分割領域累積情報算出の原点１００５として設定する。
【００９１】
次いで、ステップＳ１１０２において、累積情報生成部１１１が、現在の原点を左上に含むブロックの分割領域累積情報を生成・記憶する。即ち、図１０における領域１００１の累積情報を生成する。
【００９２】
その後、ステップＳ１１０３において、累積情報生成部１１１が、その処理ウインドウ内で、特定の矩形領域内の画素値の総和を求める処理を、数多くの矩形領域に対し行う。
【００９３】
続いて、ステップＳ１１０４において、累積情報生成部１１１が、処理した処理ウインドウ位置が最右列に到達したかを判定する。
【００９４】
最右列に到達していなければ、ステップＳ１１０５において、累積情報生成部１１１が、処理ウインドウの右端に隣接する線分領域１００４の分割領域累積情報を生成し、線分領域１００３の分割領域累積情報を保持していたバッファ領域に保持する。線分領域１００４は分割領域の左端に該当するので、線分領域１００４の分割領域累積情報は容易に算出可能である。つまり、線分領域１００４の最上端画素から順に累積加算すればよい。なお、線分領域１００４の更に右の線分領域の分割領域累積情報は、当該右の線分領域の最上端画素から順に累積加算した値と、線分領域１００４の分割領域累積情報とを加算すれば算出できる。つまり、数３及び数４に示す加算（累積情報算出）におけるｘ軸とｙ軸とを入れ替えたような演算を行えば算出できる。
【００９５】
次線分累積情報を生成し、処理ウインドウを右へ１画素ずらしたら、累積情報生成部１１１が、当該領域に対しステップＳ１１０３の特定領域内の総和の算出処理を行う。以後、ステップＳ１１０４にて、処理ウインドウが右端まで達したと判定されるまで、同様の処理を繰り返す。
【００９６】
このように、ステップＳ１１０１〜Ｓ１１０５の処理により、ブロックバッファに保持される分割領域累積情報が、領域１００１の位置から領域１００２の位置に移る際、縦方向の線分領域１００３の分割領域累積情報が記憶されている領域が破棄される。そして、この領域に縦方向の線分領域１００４の分割領域累積情報が保持される。このような処理が、処理ウインドウが右端に到達するまで順次繰り返される。
【００９７】
右端位置までの処理が完了したら、ステップＳ１１０６において、累積情報生成部１１１が、全入力情報の最終ライン位置を処理したかどうかを判定する。
【００９８】
現処理ブロック位置が最終ライン位置に到達していなければ、ステップＳ１１０７において、累積情報生成部１１１が、処理ウインドウ位置を１ライン下方の左端に設定し直す。そのとき、分割領域累積情報を算出するための原点を原点１００５から１ライン下の原点１００６にずらす。
【００９９】
そして、ステップＳ１１０２において、累積情報生成部１１１が、新たに設定した処理ウインドウにおいて、新たに設定した分割領域累積情報を算出するための原点を用いて、現在の原点を左上に含むブロックの分割領域累積情報を生成・記憶する。
【０１００】
次いで、累積情報生成部１１１が、ステップＳ１１０３のブロック毎の特定領域内総和算出処理を繰り返す。以後、ステップＳ１１０６において最終ラインに到達するまで、順に処理を繰り返して入力情報全域に対する処理を行う。
【０１０１】
このように、ステップＳ１１０６〜Ｓ１１０７では、処理ウインドウが右端に到達したことをトリガとして、処理ウインドウを１ライン下にずらし、左端１００７からステップＳ１１０２〜Ｓ１１０５の処理が繰り返される。このとき、分割領域累積情報を算出するための原点は、新たな原点１００６となる。つまり、処理ウインドウが１ライン下にずれると、分割領域累積情報を算出するための原点も１つ下にずれる。
【０１０２】
そして、ステップＳ１１６０で最終ラインに到達したことが判別されると処理を完了する。
【０１０３】
このように、本実施形態では、領域１００１は、現在ブロックバッファに保持している分割領域累積情報の領域であり、累積情報保持メモリ１１３−１は、一度には領域１００１の大きさの分割領域累積情報しか格納しない。また、現在ブロックバッファに保持している累積情報の領域１００１は、現在の処理ウインドウの位置と一致する。図１０では、開始位置（左上端）の分割領域累積情報を格納していることを示している。また、領域１００２は、処理ウインドウが右に１画素分ずれた領域を示し、この領域を処理する際にはブロックバッファには同領域の分割領域累積情報が保持されることになる。
【０１０４】
このような本実施形態では、累積情報保持メモリ１１３−１のサイズとして、上述のブロックバッファのサイズさえあればよい。例えば、本実施形態におけるバッファ容量を、第１及び第２の実施形態で説明した例と同条件で計算すると、一時に保持する必要のあるサイズは１ブロック分であるので、最低限用意すべき累積情報保持メモリのサイズ（深さ）は、６４×６４ですむ。累積情報保持メモリの幅は２０で同じである。
【０１０５】
また、本実施形態では、処理ウインドウのサイズと分割領域のサイズが同じであり、処理ウインドウが１ライン下にずれると、分割領域累積情報を算出するための原点も下にずれる。従って、水平方向の領域分割は実質的に生じない。
【０１０６】
但し、本実施形態のブロックバッファによる実装では分割領域累積情報を計算する上でのオーバーヘッドが生じやすい。つまり、処理対象情報のある位置の画素に対応する分割領域累積情報を複数回算出する必要がある。一方、第１及び第２の実施形態では、処理対象情報のある位置の画素に対応する分割領域累積情報の算出は１度ですむ。
【０１０７】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。第１〜第３の実施形態は、２次元の処理対象情報に対し分割領域累積情報を算出し、その分割領域累積情報を利用して、２次元の特定領域の要素値の総和を求める処理に関するものである。第４の実施形態は、３次元以上の処理対象情報の処理に関する。
【０１０８】
累積情報は２次元配列情報のみならず、３次元以上の多次元配列情報に対しても生成することができる。図１１は、３次元の場合の累積情報の様子を示す図である。３次元配列の入力情報とは、例えば動画情報であって、２次元画像に時間軸の１次元が加わり３次元情報となる。
【０１０９】
図１１（ａ）において、３次元累積情報配列の点Ｘの位置の要素の要素値は、入力３次元情報における原点と点Ｘを対角とする直方体の中に含まれる要素の総和値となる。このような３次元累積情報を用いて、例えば図１１（ｂ）の直方体１２０１内の要素の総和値を求めることが可能である。ここで、直方体１２０１の対角を示す２点の座標を（ｘ0，ｙ0，ｔ0）及び（ｘ1，ｙ1，ｔ1）とする。また、直方体の各頂点に関する累積情報値をＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ及びＨとすると、これらは、表１に示す座標の累積情報値となる。
【０１１０】
【表１】
2010134692.tif 000007
【０１１１】
このような定義を行った場合、入力情報の直方体１２０１内要素の総和値Ｓ3dは、
Ｓ3d＝Ｈ−Ｄ−Ｆ＋Ｂ−（Ｇ−Ｃ−Ｅ＋Ａ）
と表わされる。
【０１１２】
このような３次元累積情報に対し、第１〜第３の実施形態の２次元の分割領域累積情報を３次元の分割領域累積情報で代替すれば、同様の処理により累積情報を作成することができる。この場合の分割領域は３次元になる。例えば、図１１の３次元累積情報に対し、３次元の分割領域累積情報は図１２のようになる。図１２では、図が煩雑になるので、一つの分割領域１３０１のみを図示しているが、処理対象情報に対し分割領域１３０１を単位として分割し、分割した領域内で３次元の累積情報を算出すればよい。
【０１１３】
更に、３次元を超える多次元入力情報に対する累積情報も、同様に超直方体領域で考えれば、同様の処理を行うことが可能である。
【０１１４】
なお、本発明の実施形態は、例えばコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びプログラムプロダクトは、本発明の範疇に含まれる。
【０１１５】
つまり、本発明はハードウェア回路のみでなく、ソフトウェアによる処理であっても適用可能である。例えば、従来の累積情報であれば、３２ｂｉｔのｌｏｎｇ型配列を用いる必要があったところを、本発明の分割領域累積情報を用いることで１６ｂｉｔとすることができれば、１６ｂｉｔのｓｈｏｒｔ型配列を使用することが可能となる。つまり使用するバッファ容量を半分に削減することができる。
【０１１６】
また、上述の実施形態では、バンドバッファ又はブロックバッファをリングバッファとして使用しているが、本発明はこのようなメモリの使用方法に限るわけではない。例えば、リングカウンタに対応するメモリアドレステーブルを有し、当該テーブルを参照することで、不連続な領域を所定の処理単位で割り当てながら処理してもよい。即ち、本発明で述べたリングバッファとは狭義のリングバッファ又は循環バッファに限定するものではない。
【０１１７】
また、分割領域累積情報を用いた情報処理としては、パターン認識処理に限定するものではない。本発明は、従来技術で述べたようなコンピュータグラフィクス等の他分野の処理であっても、累積情報を用いる処理であれば、適用可能である。
【図面の簡単な説明】
【０１１８】
【図１】本発明の第１の実施形態に係る情報処理装置の構成を示すブロック図である。
【図２】累積情報生成部１１１の構成、並びにバスＩ／Ｆ１１０及び累積情報保持部１１３との接続関係を示すブロック図である。
【図３】累積情報利用演算部１１２の構成、並びにバスＩ／Ｆ１１０及び累積情報保持部１１３との接続関係を示すブロック図である。
【図４】第１の実施形態に係る情報処理装置の動作を示すフローチャートである。
【図５】特定領域等の一例を示す図である。
【図６】顔検出処理を示す図である。
【図７】第２の実施形態に係る情報処理装置の動作（バンドバッファにより分割領域累積情報を保持した際の動作）を示すフローチャートである。
【図８】第２の実施形態において、分割領域累積情報全域に対し一時に保持されるバンドバッファの様子を示す図である。
【図９】第３の実施形態に係る情報処理装置の動作（ブロックバッファにより分割領域累積情報を保持した際の動作）を示すフローチャートである。
【図１０】第３の実施形態において、分割領域累積情報全域に対し一時に保持されるブロックバッファの様子を示す図である。
【図１１】３次元の場合の累積情報の様子を示す図である。
【図１２】３次元の分割領域累積情報を示す図である。
【図１３】累積情報の例を示す図である。
【符号の説明】
【０１１９】
１００：累積情報演算処理部
１０１：ＣＰＵ
１０２：情報入力部
１０３：ＤＭＡコントローラ
１０４：処理対象情報格納メモリ
１０５：バス
１１０：バス・インターフェース部
１１１：累積情報生成部
１１２：累積情報利用演算部
１１３：累積情報保持部
１１３−１：累積情報保持メモリ
１１３−２：メモリコントローラ
１１４：分割制御部
２０１：入力情報サイズ記憶レジスタ
２０２：アドレスカウンタ
２０３：入力要素値保持レジスタ
２０４：水平方向累積値保持レジスタ
２０５：前ライン累積情報値参照レジスタ
２０６：累積加算処理部
２０６−１、２０６−２：加算器
２０７：初期化制御部
３０１：特定領域指定レジスタ
３０２：参照アドレス計算部
３０３：参照値一時保持レジスタ
３０４：加減算処理部
３０５：演算結果保持レジスタ
３０６：特定領域分割部
【図１】
2010134692.tif 000008
【図２】
2010134692.tif 000009
【図３】
2010134692.tif 000010
【図４】
2010134692.tif 000011
【図５】
2010134692.tif 000012
【図６】
2010134692.tif 000013
【図７】
2010134692.tif 000014
【図８】
2010134692.tif 000015
【図９】
2010134692.tif 000016
【図１０】
2010134692.tif 000017
【図１１】
2010134692.tif 000018
【図１２】
2010134692.tif 000019
【図１３】
2010134692.tif 000020