入力データを所定データサイズの複数の分割データに分割するデータの分割手段と、前記所定データサイズに基づき、フィルタを複数の分割フィルタに分割するフィルタの分割手段と、前記複数の分割フィルタごとにフィルタ係数の近似多項式を作成する作成手段と、前記複数の分割データ、前記複数の分割フィルタおよび前記近似多項式を用いて、前記入力データに前記フィルタによるフィルタ処理を施す処理手段とを有することを特徴とするデータ処理装置。前記処理手段は、第一の分割データを選択する手段と、前記第一の分割データを中心とする分割データの参照範囲を決定する手段と、前記第一の分割データを前記フィルタ処理する際に参照すべき第二の分割データを前記参照範囲から選択する手段と、前記第一の分割データに含まれる注目データの前記フィルタ処理において、前記第一の分割データと前記第二の分割データの位置関係に基づき前記近似多項式の係数を計算する手段と、前記係数および前記近似多項式を用いて前記第二の分割データから前記注目データへ寄与するデータを計算する手段とを有することを特徴とする請求項1に記載されたデータ処理装置。前記フィルタの分割手段は、前記フィルタのフィルタサイズを拡大して、前記フィルタを奇数個の前記所定データサイズの分割フィルタに分割することを特徴とする請求項1または請求項2に記載されたデータ処理装置。画像データが表す画像を所定サイズの複数の分割領域に分割する画像の分割手段と、前記所定サイズに基づき、二次元フィルタを複数の分割フィルタに分割するフィルタの分割手段と、前記複数の分割フィルタごとにフィルタ係数の近似多項式を作成する作成手段と、前記複数の分割領域、前記複数の分割フィルタおよび前記近似多項式を用いて、前記画像データに前記二次元フィルタによるフィルタ処理を施す処理手段とを有することを特徴とする画像処理装置。前記処理手段は、第一の分割領域を選択する手段と、前記第一の分割領域を中心とする分割領域の参照範囲を決定する手段と、前記第一の分割領域を前記フィルタ処理する際に参照すべき第二の分割領域を前記参照範囲から選択する手段と、前記第一の分割領域に含まれる注目画素の前記フィルタ処理において、前記第一の分割領域と前記第二の分割領域の位置関係に基づき前記近似多項式の係数を計算する手段と、前記係数および前記近似多項式を用いて前記第二の分割領域から前記注目画素へ寄与するデータを計算する手段とを有することを特徴とする請求項4に記載された画像処理装置。データの分割手段、フィルタの分割手段、作成手段、処理手段を有するデータ処理装置のデータ処理方法であって、前記データの分割手段が、入力データを所定データサイズの複数の分割データに分割し、前記フィルタの分割手段が、前記所定データサイズに基づき、フィルタを複数の分割フィルタに分割し、前記作成手段が、前記複数の分割フィルタごとにフィルタ係数の近似多項式を作成し、前記処理手段が、前記複数の分割データ、前記複数の分割フィルタおよび前記近似多項式を用いて、前記入力データに前記フィルタによるフィルタ処理を施すことを特徴とするデータ処理方法。データの分割手段、フィルタの分割手段、作成手段、処理手段を有する画像処理装置の画像処理方法であって、前記データの分割手段が、画像データが表す画像を所定サイズの複数の分割領域に分割し、前記フィルタの分割手段が、前記所定データサイズに基づき、二次元フィルタを複数の分割フィルタに分割し、前記作成手段が、前記複数の分割フィルタごとにフィルタ係数の近似多項式を作成し、前記処理手段が、前記複数の分割領域、前記複数の分割フィルタおよび前記近似多項式を用いて、前記画像データに前記二次元フィルタによるフィルタ処理を施すことを特徴とする画像処理方法。コンピュータを請求項1から請求項3の何れか一項に記載されたデータ処理装置の各手段として機能させることを特徴とするプログラム。コンピュータを請求項4または請求項5に記載された画像処理装置の各手段として機能させることを特徴とするプログラム。本発明は、ディジタルデータのフィルタ処理における計算量を低減して、フィルタ処理を高速化することを目的とする。本発明は、前記の目的を達成する一手段として、以下の構成を備える。本発明にかかるデータ処理は、入力データを所定データサイズの複数の分割データに分割し、前記所定データサイズに基づき、フィルタを複数の分割フィルタに分割し、前記複数の分割フィルタごとにフィルタ係数の近似多項式を作成し、複数の分割データ、前記複数の分割フィルタおよび前記近似多項式を用いて、前記入力データに前記フィルタによるフィルタ処理を施すことを特徴とする。本発明によれば、ディジタルデータのフィルタ処理における計算量を低減して、フィルタ処理を高速化することができる。以下、本発明にかかる実施例のデータ処理および画像処理を図面を参照して詳細に説明する。[装置の構成]図1のブロック図により実施例の画像処理装置の構成例を説明する。CPU101は、RAM103をワークメモリとして、ROM102やハードディスクドライブ108に格納されたプログラムを実行し、システムバス104を介して後述する各構成を制御する。これにより、後述する様々な処理が実行される。汎用インタフェイス105は、キーボードやマウス、ディジタルカメラ、スキャナ、メモリカードリーダ、ハードディスクドライブなど、様々なデバイス106を接続する、例えばUSBやIEEE1394などのシリアルバスインタフェイスである。CPU101は、汎用IF105を介して、デバイス106から各種データを読み込み、各種データをデバイス106に書き込むことが可能である。HDDインタフェイス107は、HDD108や光ディスクドライブなどの二次記憶装置を接続する、例えばシリアルATAなどのインタフェイスである。CPU101は、HDDIF107を介して、HDD108からデータを読み出し、HDD108にデータを書き込むことが可能である。さらに、CPU101は、HDD108に格納されたデータをRAM103に展開し、同様に、RAM103に展開されたデータをHDD108に保存することが可能である。そしてCPU101は、RAM103に展開したデータをプログラムと見做して実行することができる。ビデオカード109は、モニタ110用のインタフェイスである。CPU101は、VC109を介して、後述するユーザインタフェイス、フィルタ処理すべき画像、フィルタ処理後の画像を含む各種画像をモニタ110に表示する。ユーザは、デバイス106として汎用IF105に接続されたキーボードやマウスにより、モニタ110に表示されたUIを操作して、例えば後述するフィルタ処理などの実行をCPU101に指示する。フィルタ処理の実行を指示されたCPU101は、ROM102またはHDD108に格納されたフィルタ処理のプログラムを実行する。そして、CPU101は、UIを介してユーザが指定する画像データをHDD108やデバイス106から読み込み、読み込んだ画像データにフィルタ処理を施す。さらに、フィルタ処理後の画像データを、UIを介してユーザが指定する、HDD108やデバイス106の領域に格納したり、フィルタ処理後の画像データが表す画像をモニタ110に表示したりする。[フィルタ処理]図2Aのフローチャートにより画像処理装置が実行するフィルタ処理を説明する。CPU101は、ユーザが指定する画像データAを入力し、入力した画像データAが表す画像を横Nx画素×縦Ny画素所定サイズの複数の領域に分割する。なお、画像を横方向X方向に分割する場合、画像の例えば右端において幅がNx画素に満たない領域が発生する可能性があるが、そのような領域も分割領域として扱う。同様に、画像を縦方向Y方向に分割する場合、画像の例えば下端において高さがNy画素に満たない領域が発生する可能性があるが、そのような領域も分割領域として扱う。また、以下の説明では、分割領域の数をMとする。次に、CPU101は、フィルタ処理用のフィルタBを表すデータを例えばHDD108から入力する。フィルタBのフィルタサイズを横Nfx画素×縦Nfy画素とする。フィルタBは、注目画素からの距離の関数として表現されてもよいし、フィルタの各成分フィルタ係数を表すデータでもよい。ただし、後述するように、フィルタBのフィルタサイズを分割領域のサイズの自然数倍に拡大するため、フィルタ処理の裾に相当する部分の成分フィルタ係数がほぼ零であることが好ましい。次に、CPU101は、分割領域のサイズNx×Nyに対応させて、フィルタBを分割する。その際、CPU101は、分割後のフィルタが縦横ともに奇数個の分割フィルタサイズNx×Nyから構成されるように、フィルタサイズを拡大する。図3によりフィルタサイズの分割を説明する。つまり、分割フィルタの数を縦Lx×横Lyとすると、Lx、Lyが下式を満たすようにフィルタサイズを拡大する。なお、以下では、分割フィルタの数をLx×LyLLと表す。Nx×Lx≧NfxNy×Ly≧Nfy...ここで、Lx、Lyはそれぞれ奇数。なお、拡大後のフィルタのサイズは下式で表される。Nfx×Nfy×...次に、CPU101は、分割フィルタごとに、フィルタ係数をフィルタ中心からの距離の多項式関数で近似して、多項式の各項の係数を求める。なお、元のフィルタBを近似多項式で表したフィルタをフィルタBとする。そして、CPU101は、詳細は後述するが、複数の分割領域、複数の分割フィルタおよび近似多項式を用いて、画像データAにフィルタBによるフィルタ処理を施す。●近似多項式ここで、近似多項式の作成について説明する。フィルタが二階微分が可能な関数で表される場合、各分割フィルタの中心周りでテイラ展開を行って近似多項式を作成すればよい。より一般的には、誤差の二乗和を最小にするように近似多項式の係数を決める最小二乗法を利用する。最小二乗法は、フィルタの関数が不連続または微分不可能な点を含む場合や、フィルタ係数が中心からの距離の関数ではなく予め画素に対応するセルごとに与えられている場合にも適用可能である。ここで、テイラ展開を用いて近似多項式を求める例を説明する。例えば、フィルタBのフィルタ係数が、フィルタ中心からの距離の関数fとして表されるとする。関数fを二階微分が可能な関数とし、位置周りで二次の項までテイラ展開すると、下式が得られる。f≒ffxfyfxx22fyy22fxy...ここで、fx∂f∂x、fy∂f∂y、fxx∂2f∂x2、fyy∂2f∂y2、fxy∂2f∂x∂yさらに、下記を定義して式を変形すると式が得られる。axxfxx2、ayyfyy2、axyfxy、axfx2afxxbfxy、ayfy2bfyyafxy、a0fafxbfya2fxx2abfxyb2fyy2、f≒axxx2axyxyayyy2axxayya0...なお、上記には二次多項式の例を示したが、これに限定されるものではなく、一次、あるいは、三次または四次以上の次数をもつ多項式でもよい。例えば一次の項までの近似多項式であれば、式に代わり式を用いることになる。式を用いれば、項の数は半分になるが、近似精度元の関数fとや式で示す多項式との誤差が低下する。f≒axxayya0...他方、三次や四次以上の次数をもつ近似多項式を用いれば、近似精度は向上するが、例えば、項の数は三次で10、四次で15と増える分、計算量が増大する。一般にfをn次多項式で近似すると式のように表される。f≒ΣpΣqapqxpqj...ここで、Σpの範囲はp0からn、Σqの範囲はq0からn、nは多項式の次数。フィルタBをLL個の分割フィルタに分割した場合、式の近似多項式もLL個生成され、係数apqの組もLL組得られる。なお、LL個の近似多項式のすべてが同じ次数をもつ必要はなく、例えば、フィルタ中心に近い分割フィルタは二次の近似多項式とし、フィルタ中心から遠い分割フィルタは一次の近似多項式としてもよい。●フィルタ処理図2Bのフローチャートによりフィルタ処理の詳細を説明する。近似多項式の作成の後、CPU101は、領域分割した画像データAに対し、フィルタBの近似多項式を使って各画素とフィルタの畳込演算を行う。CPU101は、カウンタiを1に初期化し、画像データAのi番目の分割領域Rdi第一の分割領域を選択する。図4により畳込演算における画像データAとフィルタBの関係を説明する。図4に示すように、CPU101は、分割領域Rdiとフィルタ中心が一致するように画像データAにフィルタBを重ね、分割領域RdiとフィルタBによる畳込演算の対象領域Rfを決定する。そして、カウンタjを1に初期化し、対象領域Rfに含まれるj番目の分割領域Rdj第二の分割領域を選択する。図4はカウンタiに対応する分割領域Rdiを中心とする対象領域Rfにおいて、カウンタjに対応する分割領域Rdjが選択された様子を示す。CPU101は、分割領域Rdiの位置に対する分割領域Rdjの位置に基づきフィルタBの近似多項式の係数の組を選択する。分割領域Rdi内の画素を注目画素とすると、注目画素とフィルタBの畳込演算は次のように表される。hhfΣxΣyhf...ここで、hは注目画素の画素値、hはフィルタ処理後の画素値、fはフィルタ係数、は畳込演算を表す。式において、分割領域Rdjに含まれる画素からの寄与分は、フィルタBが二次多項式で近似されているものとし、分割領域Rdjに含まれる画素の位置をとして、下式で表される。hRdjΣΣhf≒ΣΣhaxx2axyayy2axaya0ΣΣhaxxx12axyx1y1ayyy12x1y1axxx22axyx2y2ayyy22axx2ayy2a0...ここで、Σの範囲は分割領域Rdjに含まれる画素の範囲。さらに、下記を定義して式を変形すると式が得られる。GxxΣΣhx22、GxyΣΣhx2y2、GyyΣΣhy22、GxΣΣhx2、GyΣΣhy2、G0ΣΣh。hRdj≒axxG0x12axyG0x1y1ayyG0y12x1y1φxxx12φxyx1y1φyyy12φxx1φyy1φ0...ここで、φxxaxxG0、φxyaxyG0、φyyayyG0、φx2axxGxaxyGyaxG0、φy2ayyGyaxyGxayG0、φ0axxGxxaxyGxyayyGyyaxGxayGya0G0式はフィルタBを、前述した二次多項式で近似した式である。フィルタBを、前述したより一般的なn次多項式で近似した式は次のようになる。hRdjΣx2Σy2hf≒Σx2Σy2hΣpΣqapqpq...式を、式と同様にx1、y1について整理すると次式が得られる。hRdj≒ΣpΣqφpqx1py1q...式のφpqは、x1py1q項の係数であり、近似多項式の係数apqと、分割領域Rdj内の画素の位置のみから得られる。図5により分割領域Rdi、Rdj周辺の拡大図を示す。図5示すように分割領域Rdi内の画素とは異なる画素を注目画素として、注目画素とフィルタBの畳込演算における分割領域Rdjからの寄与分を考えると、式と同様に、次式が得られる。hRdj≒ΣpΣqφpqx3py3q...式のφpqの値は、前述したように、分割領域Rdiの画素または画素の値とは無関係であり、式のφpqと同一の値を有する。つまり、分割領域Rdi内に含まれる各画素について、フィルタBとの畳込演算のうち、分割領域Rdjからの寄与分の計算は、以下の手順で行えばよい。分割領域Rdiと分割領域Rdjの位置関係からフィルタBの近似多項式の係数の組を選択し、分割領域Rdjの係数φpqを計算し、得られた値を保存し、分割領域Rdiの各画素について、係数φpqおよび式を用いて分割領域Rdjからの寄与分を計算する。次に、CPU101は、カウンタjをインクリメントし、カウンタjのカウント値と分割フィルタの数LLを比較して、j≦LLならば処理をステップS115に戻す。また、j>LLならばカウンタiをインクリメントし、カウンタjのカウント値と分割領域Rdの数Mを比較して、i≦Mならば処理をステップS112に戻す。そして、j>Mになると、CPU101は、式によって演算した畳込演算の結果を画素ごとに加算して、画像データAとフィルタBの畳込演算結果フィルタ処理結果の画像データAとして出力する。[計算量]フィルタを分割しない場合、注目画素一画素に対するフィルタ処理の計算回数はNfx×Nfy回であるから、一つの分割領域Rdが含む全画素の計算回数NRは次式によって表される。NRNfxNfyNxNy...一回の計算には、分割領域Rdが含む画素の値とフィルタ係数との乗算、乗算結果を新しい画素値として積算する処理が含まれる。また、本実施例のフィルタ処理における計算量は次のように見積られる。●分割領域Rdjの係数φpqの計算計算量は、分割領域の画素数とフィルタBの分割フィルタの数の積に比例する。α1α1NfxNfy...ここで、α1は一回当りの計算量を示す定数。●分割領域Rdjからの寄与分の計算つまり、係数φpqを用いた式の計算であり、式の計算を、一画素に付きフィルタBに含まれる分割フィルタの数分繰り返し、さらに、分割領域の画素数分繰り返す。α2NxNyα2NfxNfy...ここで、α2は式の一回当りの計算量を示す定数。従って、式とを加算した結果が、本実施例のフィルタ処理における、分割領域とフィルタBの畳込演算に要する計算量LFである。LFαNfxNfy...ここで、αα1α2また、フィルタを分割しない場合の計算数式と式から次式が得られる。αNfxNfyα...ここで、ααフィルタBを奇数個の分割フィルタによって構成するためにフィルタBのサイズはフィルタBのサイズよりも大きくなる。フィルタサイズの拡大が計算量に影響する分としてαを加味する。例えば、αが90程度、NxNy8とすると、本実施例のフィルタ処理は、計算量を9≒17に削減することができる。●計算量が削減される理由式に示すように計算量を削減できる理由は、畳込演算の式または式を、式に示す近似式で置き換えたことにある。ここで、フィルタ係数がフィルタ中心からの距離で決まるようなフィルタに対して、フィルタを分割せずに畳込演算を行う場合を考える。フィルタ処理する注目画素が変わると、フィルタ範囲に含まれる周辺画素のフィルタ中心からの距離が変わり、周辺画素の寄与分も変化する。従って、周辺画素からの寄与分Cは下式で表される。Ch×f...ここで、hは周辺画素の画素値、fはフィルタ関数、は注目画素の位置。注目画素がに移動すると、周辺画素からの寄与分Cは下式で表される。Ch×f...つまり、同じ周辺画素からの寄与分Cを計算するとしても、注目画素の移動に伴いフィルタ関数fの値が変化するため、注目画素ごとに寄与分Cを計算する必要が生じる。一方、式においては、φpqが分割領域Rdj内の画素位置と画素値のみで決まり、フィルタ処理する分割領域Rdi内の注目画素の位置と分離されている。従って、注目画素が移動した場合も、分割領域Rdj内の画素からの寄与分を表すφpqは同一式参照であり、φpqの再計算は不要で、φpqは定数と見做すことができる。また、式に示す表現方法は、元のフィルタを二次多項式で近似する場合の式の変形例式において示したように、多項式関数で置き換えることで、容易に実現することができる。一般に、任意の連続関数は多項式で近似することが可能であるが、元の関数と近似関数の誤差を小さくすれば、多項式の次数を大きくする必要があり計算量が増大する。そこで、元のフィルタの範囲を領域分割し、一つの分割フィルタの範囲における近似多項式を求めるようにすれば、多項式の次数を大きくしなくても、分割フィルタの範囲内において充分に誤差が小さい近似多項式を得ることができる。さらに、予め近似多項式の形を決めておき、近似多項式の係数を最小二乗法を用いて求める手法を用いれば、元のフィルタは必ずしも連続関数である必要はない。なお、式から式に示した計算量について、一回の計算量は、フィルタを分割しない場合は前述したように一回の乗算と一回の加算の和である。一方、本実施例における一回の計算量は、例えば二次の近似多項式を用いる式においては、加算と乗算がそれぞれ五回ずつ含まれる。また、フィルタのサイズが分割フィルタ単位になるように、Nfx×NfyからNfx×Nfyに拡大する影響もある。そのため、式の定数αは1よりも大きくなり、例えば二次の近似多項式を用いると90程度になる。[フィルタ範囲の拡大]本実施例におけるフィルタ処理は、奇数個の分割フィルタ単位に行うため、フィルタBの範囲は、フィルタBの範囲に比べて拡大される。図6によりフィルタ範囲の拡大を説明する。図6は、実線で示す72×80画素の画像を8×8画素に分割した画像Aに、破線で示すサイズが49×49画素のフィルタBを8×8画素のフィルタに分割した7×7の分割フィルタを有するフィルタBを重ねた状態を示す。この場合、フィルタBのサイズは56×56画素になる。図6に示す分割領域の左上画素が注目画素501の場合、フィルタB49×49画素の範囲は、点線で示す左上、右下の範囲である。また、右下画素が注目画素502の場合、フィルタBの範囲は、点線で示す左上、右下の範囲である。一方、本実施例においては、同じ分割領域内の注目画素501、502に対してフィルタBの範囲は変化せず、破線で示す左上、右下の範囲である。なお、本実施例において、注目画素501についてx57より右、y65より下の画素が参照範囲に追加され、注目画素502についてx14より左、y22より上の画素が参照画素に追加される。このようなフィルタ範囲の違いは、畳込演算を分割フィルタ単位に実施するために生じる誤差であり、フィルタ範囲を拡大した部分のフィルタ係数がほぼ0であれば、誤差の影響は僅かである。従って、フィルタ中心から遠いフィルタ範囲の端部の係数がほぼ零になるフィルタに、本実施例を適用することが最も好ましい。[処理結果]●ガウシアンフィルタ図7により処理結果の確認に使用した画像Aの一例を示す。図7に示す画像Aは、2048×2048画素の8ビットモノクロ画像であり、ランダムな位置に、ランダムな大きさの正方形や円が重畳し、さらにランダムなノイズが加わっている。また、フィルタBは、下式に示すガウシアンフィルタである。fC1×exp2σ2...ここで、C1は定数。フィルタB式のσは12画素とし、フィルタサイズは73×73画素である。フィルタBの係数fの合計が10になるように定数C1000249とする。また、分割領域の大きさは8×8画素である。フィルタBの各分割フィルタを式で示す二次多項式で近似し、フィルタBのサイズは11×11の分割フィルタである。つまり、フィルタBを73×73画素から88×88画素に拡大してフィルタBにする。画像Aに対し、フィルタBによる処理を行って画像Cを取得し、フィルタBによる処理を行って画像Dを取得した。そして、画像Cと画像Dの各画素ごとに画素値の差分を取り、全画像領域における差分値の最大、最小値を求めた。また、各画素の差分値の二乗平均平方根を下式によって計算した。RMS√ΣxΣyhChD2NA...ここで、hCは画像Cの画素値、hDは画像Dの画素値、NAは画素数。その結果、全画像領域における差分値の最大は1、最小は1であり、画素値の差は±1の範囲に収まり、RMS値は0196であった。さらに、画像Dおよび差分値の分布に対して高速フーリエ変換を施して空間周波数成分の分布を調べたところ、分割領域の大きさに関連するような空間周波数特性は見出されなかった。従って、画像Cと画像Dは殆ど同一の画像であり、フィルタ処理の違いによる差は殆ど生じないことを確認した。また、フィルタBによる処理時間は、フィルタBによる処理時間の175であった。●LoGフィルタ図8により処理結果の確認に使用した画像Aの一例を示す。図8に示す画像Aは、1024×1024画素の8ビットモノクロ画像であり、ランダムな位置に、ランダムな大きさの正方形や円が重畳し、さらにランダムなノイズが加わっている。また、フィルタBは、下式に示すLoGフィルタである。f/×exp2σ2...フィルタB式のσは24画素とし、フィルタサイズは145×145画素である。また、分割領域の大きさは8×8画素である。フィルタBの各分割フィルタを式で示す二次多項式で近似し、フィルタBのサイズは19×19の分割フィルタである。つまり、フィルタBを145×145画素から152×152画素に拡大してフィルタBにする。図9により画像Aに対し、フィルタBによる処理を行って取得した画像C図9と、フィルタBによる処理を行って取得した画像D図9を示す。図8において、フィルタ処理によって得られた正の値の画素を黒色、負の値の画素を白色で表す。式におけるσ値が大きいため、図9における正値の画素が構成する線の幅が太くなっているが、細線化すれば図8に示す図形のエッジに相当することは明らかである。また、図9、図9とも、同様に、エッジが抽出されている。また、フィルタBによる処理時間は、フィルタBによる処理時間の162であった。●分割領域のサイズの変更以上では、分割領域のサイズが8×8画素の例を説明したが、以下では、分割領域のサイズを変化させた場合に、処理時間、および、フィルタを分割しない場合との誤差がどのように変化するかについて説明する。画像Aは、図7に示す2048×2048画素の8ビットモノクロ画像である。また、フィルタBは式に示すガウシアンフィルタ73×73画素である。そして、分割領域のサイズを6×6、8×8、10×10、12×12、14×14、16×16、18×18、20×20画素の八種類とする。分割領域のサイズを変更しながら、フィルタBを用いる処理とフィルタBを用いる処理について、精度と処理時間の比較を行った。図10によりフィルタBを用いる処理とフィルタBを用いる処理の比較結果を説明する。図10において、横軸は分割領域の辺の大きさフィルタのσ値、左の縦軸は処理時間比フィルタBを用いる処理フィルタBを用いる処理、右の縦軸は式に示すRMS値をそれぞれ表す。図10によれば、フィルタBを用いる処理は、分割領域のサイズを大きくする程、処理時間が短くなり、分割領域のサイズを小さくする程、誤差が小さくなることがわかる。図11により分割領域のサイズを20×20画素として、フィルタ処理した後の画像図11および空間周波数分布図11を示す。なお、図11に示す画像は分割領域の20画素間隔の縞模様が見えるように部分的に拡大したものである。図11を参照すると、XY軸に対してそれぞれ±20画素、および、±20画素整数に相当するピッチの模様が生じている。これは分割領域が元のフィルタのサイズに比べて大きいため、近似多項式の精度が低下し、誤差が生じているためと考えられる。このように、フィルタを分割する本実施例のフィルタ処理は、分割領域のサイズを大きくする程、処理時間の短縮が期待できるが、その一方、誤差が大きくなり精度は低下する。従って、分割領域のサイズを適切に決めることにより、精度を低下させずに、フィルタ処理の処理時間を短縮することが可能になる。以下、本発明にかかる実施例2の画像処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。実施例1においては二次元フィルタ処理を説明したが、実施例2においては、図12Aのフローチャートにより一次元フィルタ処理を説明する。CPU101は、一次元のデータA例えばサウンドデータを入力し、入力データAをNxデータ所定データサイズごとに分割した分割データを生成する。なお、データAが画像データのような二次元データの場合、例えば画像の右端において、Nx画素に満たない分割データが発生する可能性があるが、そのような場合も分割データとして扱う。また、以下の説明では、分割データの数をMとする。次に、CPU101は、一次元フィルタ処理用のフィルタBを表すデータを例えばHDD108から入力する。フィルタBのフィルタサイズをNfxデータとする。フィルタBは、注目データからの距離の関数として表現されてもよいし、フィルタの各成分フィルタ係数を表すデータでもよい。ただし、フィルタBのフィルタサイズを分割データの数の自然数倍に拡大するため、フィルタ処理の裾に相当する部分の成分フィルタ係数がほぼ零であることが好ましい。次に、CPU101は、分割データの数Nxに対応させて、フィルタBを分割する。その際、CPU101は、分割後のフィルタが奇数個の分割フィルタサイズNxから構成されるように、フィルタサイズを拡大する。つまり、分割フィルタの数をLxとすると、Lxが下式を満たすようにフィルタサイズを拡大する。Nx×Lx≧Nfx...ここで、Lxは奇数。なお、拡大後のフィルタのサイズは下式で表される。NfxNx×Lx...次に、CPU101は、分割フィルタごとに、フィルタ係数をフィルタ中心からの距離の多項式関数で近似して、多項式の各項の係数を求める。なお、元のフィルタBを近似多項式で表したフィルタをフィルタBとする。そして、CPU101は、詳細は後述するが、前記複数の分割データ、複数の分割フィルタおよび近似多項式を用いて、データAにフィルタBによるフィルタ処理を施す。●近似多項式フィルタBが二階微分が可能な関数として表記されている場合、例えば、各分割フィルタの中心に対してテイラ展開を行って近似多項式を求める。例えば、フィルタBのフィルタ係数が、フィルタ中心からの距離xの関数fとして表されるとする。関数fを二階微分が可能な関数とし、位置aに対して二次の項までテイラ展開すると、下式が得られる。f≒ffxfxx22...ここで、fxdfdx、fxxd2fdx2さらに、下記を定義して式を変形すると式が得られる。axxfxx2、axfx2afxx、a0fafxa2fxx2、f≒axxx2axxa0...なお、上記には二次多項式の例を示したが、これに限定されるものではなく、一次、あるいは、三次または四次以上の次数をもつ多項式でもよい。一般にfをn次多項式で近似すると式のように表される。f≒Σpapxp...ここで、Σpの範囲はp0からn、nは多項式の次数。フィルタBをLx個の分割フィルタに分割した場合、式の近似多項式もLx個生成され、係数apの組もLx組得られる。なお、Lx個の近似多項式のすべてが同じ次数をもつ必要はなく、例えば、フィルタ中心に近い分割フィルタは二次の近似多項式とし、フィルタ中心から遠い分割フィルタは一次の近似多項式としてもよい。●フィルタ処理図12Bのフローチャートによりフィルタ処理の詳細を説明する。近似多項式の作成後、CPU101は、分割したデータAに対し、フィルタBの近似多項式を使って各データとフィルタの畳込演算を行う。CPU101は、カウンタiを1に初期化し、データAのi番目の分割データDdi第一の分割データを選択する。CPU101は、分割データDdiとフィルタ中心が一致するようにデータAにフィルタBを重ね、分割データDdiとフィルタBによる畳込演算の対象データ集合Sfを決定する。そして、カウンタjを1に初期化し、対象データ集合Sfに含まれるj番目の分割データDdj第二の分割データを選択する。CPU101は、分割データDdiの位置に対する分割データDdjの位置に基づきフィルタBの近似多項式の係数の組を選択する。分割データDdi内のデータx1を注目データとすると、注目データとフィルタBの畳込演算は次のように表される。hhfΣxhf...ここで、hは注目データの値、hはフィルタ処理後の値、fはフィルタ係数、は畳込演算を表す。式において、分割データDdjに含まれるデータからの寄与分は、フィルタBが二次多項式で近似されているものとし、分割データDdjに含まれるデータの位置をx2として、下式で表される。hDdjΣhfΣhaxx2axa0Σhaxxx12x1axxx22axx2a0...ここで、Σの範囲は分割データDdjに含まれるデータx2の範囲。さらに、下記を定義して式を変形すると式が得られる。GxxΣhx22、GxΣhx2、G0ΣhhDdj≒axxG0x12x1≒φxxx12φxx1φ0...ここで、φxxaxxG0、φx2axxGxaxG0、φ0axxGxxaxGxa0G0式はフィルタBを、前述した二次多項式で近似した式である。フィルタBを、前述したより一般的なn次多項式で近似した式は次のようになる。hDdjΣx2hf≒Σx2hΣpapp...式を、式と同様にx1について整理すると次式が得られる。hDdj≒Σpφpx1p...式のφpは、x1p項の係数であり、近似多項式の係数apと、分割データDdj内のデータの位置のみから得られる。つまり、分割データDdi内のデータx1とは異なるデータx3を注目データとして、注目データx3とフィルタBの畳込演算における分割データDdjからの寄与分を考えると、式と同様に、次式が得られる。hDdj≒Σpφpx3p...式のφpの値は、前述したように、分割データDdiのデータx1またはデータx3の値とは無関係であり、式のφpと同一の値を有する。つまり、分割データDdi内に含まれる各画素について、フィルタBとの畳込演算のうち、分割データDdjからの寄与分の計算は、以下の手順で行えばよい。分割データDdiと分割データDdjの位置関係からフィルタBの近似多項式の係数の組を選択し、分割データDdjの係数φpを計算し、得られた値を保存し、分割データDdiの各データについて、係数φpおよび式を用いて分割データDdjからの寄与分を計算する。次に、CPU101は、カウンタjをインクリメントし、カウンタjのカウント値と分割フィルタの数Lxを比較して、j≦Lxならば処理をステップS215に戻す。また、j>Lxならばカウンタiをインクリメントし、カウンタjのカウント値と分割データRdの数Mを比較して、i≦Mならば処理をステップS212に戻す。そして、j>Mになると、CPU101は、式によって演算した畳込演算の結果をデータごとに加算して、データAとフィルタBの畳込演算結果フィルタ処理結果のデータAとして出力する。[計算量]フィルタを分割しない場合、注目データに対するフィルタ処理の計算回数はNfx回であるから、一つの分割データDdが含む全データの計算回数NRは次式によって表される。NRNfxNx...一回の計算には、分割データDdが含むデータとフィルタ係数との乗算、乗算結果を新しいデータとして積算する処理が含まれる。また、本実施例のフィルタ処理における計算量LFは、実施例1で説明したように、次のように見積られる。LFαNfx...また、フィルタを分割しない場合の計算数式と式から次式が得られる。αNfxαNx...ここで、ααフィルタBを奇数個の分割フィルタによって構成するためにフィルタBのサイズはフィルタBのサイズよりも大きくなる。フィルタサイズの拡大が計算量に影響する分としてαを加味する。例えば、αが4程度、Nx8とすると、本実施例のフィルタ処理は、計算量を4812に削減することができる。[その他の実施例]また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステムあるいは装置のコンピュータ又はCPUやMPU等がプログラムを読み出して実行する処理である。