(57)【要約】【課題】演算時間を短縮することができる画像処理装置および方法を提供すること。【解決手段】画像処理部は、画像データ入力部１０、標本化関数値記憶部２０、乗算部３０、対応点加算部４０、７０、水平中間値作成部５０、演算結果記憶部６０、９０、垂直中間値作成部８０、補間値出力部１００、拡大画像データ格納部１０２、表示処理部１０４、表示部１０６を備えている。画像データ入力部１０から水平ラインに沿って１画素毎の画素値が出力される。標本化関数値記憶部２０では２変数で位置が特定される標本化関数の所定範囲について複数の関数値を記憶している。乗算部３０では、これら複数の関数値と１画素毎の各画素値とを同時に乗算する。画素値の出力タイミングに合わせてこれらの乗算結果が出力され、これらの乗算結果に対する加算等を繰り返すことにより、原画像の画素値に基づく補間結果が得られる。【選択図】図１
2010130599.tif 000002
【特許請求の範囲】
【請求項１】
所定範囲において２変数によって標本位置および補間位置が特定される標本化関数について、複数の標本位置およびこれらの標本位置間を分割した位置のそれぞれに対応する複数の関数値を記憶する標本化関数値記憶手段と、
前記２変数によって位置が特定される画素の画素値を含む画像データを取り込んで、前記２変数のいずれか一方に沿って順番に前記画素値を出力する画像データ入力手段と、
前記標本化関数値記憶手段に格納された複数の関数値のそれぞれと、前記画像データ入力手段から出力される画素値とを乗算することにより、前記複数の関数値のそれぞれに対応する複数の乗算結果を出力する乗算手段と、
前記乗算手段から出力される複数の乗算結果のそれぞれに対応する複数の中間値を作成して出力する第１の中間値作成手段と、
前記乗算手段から出力される複数の乗算結果と、前記第１の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する第１の対応点加算手段と、
前記第１の対応点加算手段から出力される複数の加算結果を記憶する第１の演算結果記憶手段と、
前記第１の演算結果記憶手段に記憶された複数の加算結果のそれぞれに対応する複数の中間値を作成して出力する第２の中間値作成手段と、
前記第１の演算結果記憶手段に記憶された複数の加算結果と、前記第２の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する第２の対応点加算手段と、
前記第２の対応点加算手段から出力される複数の加算結果を記憶する第２の演算結果記憶手段と、を備え、
前記第１の中間値作成手段は、前記画像データ入力手段から出力される画素値が切り替わる毎に、前記第１の演算結果記憶手段に記憶された複数の加算結果を、前記２変数の一方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成し、
前記第２の中間値作成手段は、前記画像データ入力手段から出力される画素値が切り替わる毎に、前記第２の演算結果記憶手段に記憶された複数の加算結果を、前記２変数の他方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成することを特徴とする画像処理装置。
【請求項２】
請求項１において、
前記第１の中間値作成手段は、前記２変数の一方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、前記第１の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することを特徴とする画像処理装置。
【請求項３】
請求項１または２において、
前記第２の中間値作成手段は、前記２変数の他方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、前記第２の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することを特徴とする画像処理装置。
【請求項４】
請求項１〜３のいずれかにおいて、
前記第１の演算結果記憶手段に記憶されている複数の加算結果の中で、前記第１の対応点加算手段による加算回数が最も多い加算結果が前記第２の対応点加算手段による加算演算に用いられることを特徴とする画像処理装置。
【請求項５】
請求項１〜４のいずれかにおいて、
前記第２の演算結果記憶手段に記憶されている複数の加算結果の中で、前記第２の対応点加算手段による加算回数が最も多い加算結果を取り出して出力する補間値出力手段をさらに備えることを特徴とする画像処理装置。
【請求項６】
請求項１〜５のいずれかにおいて、
前記標本化関数は、前記所定範囲に含まれる複数の標本位置のそれぞれに対応する関数値が０で、それ以外の位置の少なくとも一部に対応する関数値が０以外の有限の値を有することを特徴とする画像処理装置。
【請求項７】
請求項６において、
前記標本化関数は、前記所定範囲以外で関数値が０であることを特徴とする画像処理装置。
【請求項８】
請求項１〜７のいずれかにおいて、
前記標本化関数は、前記２変数のそれぞれに沿って前記所定範囲を２以上に分割した各分割区間がｎ次多項式で表現される区分的多項式関数であることを特徴とする画像処理装置。
【請求項９】
所定範囲において２変数によって標本位置および補間位置が特定される標本化関数について、複数の標本位置およびこれらの標本位置間を分割した位置のそれぞれに対応する複数の関数値を記憶する標本化関数値記憶手段を有する画像処理装置における画像処理方法であって、
前記２変数によって位置が特定される画素の画素値を含む画像データを画像データ入力手段によって取り込んで、前記２変数のいずれか一方に沿って順番に前記画素値を出力する画像データ入力ステップと、
前記標本化関数値記憶手段に格納された複数の関数値のそれぞれと、前記画像データ入力手段から出力される画素値とを乗算することにより、前記複数の関数値のそれぞれに対応する複数の乗算結果を乗算手段を用いて出力する乗算ステップと、
前記乗算手段から出力される複数の乗算結果のそれぞれに対応する複数の中間値を作成して出力する動作を第１の中間値作成手段を用いて行う第１の中間値作成ステップと、
前記乗算手段から出力される複数の乗算結果と、前記第１の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する動作を第１の対応点加算手段を用いて行う第１の対応点加算ステップと、
前記第１の対応点加算手段から出力される複数の加算結果を第１の演算結果記憶手段に記憶する第１の演算結果記憶ステップと、
前記第１の演算結果記憶手段に記憶された複数の加算結果のそれぞれに対応する複数の中間値を作成して出力する動作を第２の中間値作成手段を用いて行う第２の中間値作成ステップと、
前記第１の演算結果記憶手段に記憶された複数の加算結果と、前記第２の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する動作を第２の対応点加算手段を用いて行う第２の対応点加算ステップと、
前記第２の対応点加算手段から出力される複数の加算結果を第２の演算結果記憶手段に記憶する第２の演算結果記憶ステップと、を有し、
前記第１の中間値作成手段は、前記画像データ入力手段から出力される画素値が切り替わる毎に、前記第１の演算結果記憶手段に記憶された複数の加算結果を、前記２変数の一方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成し、
前記第２の中間値作成手段は、前記画像データ入力手段から出力される画素値が切り替わる毎に、前記第２の演算結果記憶手段に記憶された複数の加算結果を、前記２変数の他方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成することを特徴とする画像処理方法。
【請求項１０】
請求項９において、
前記第１の中間値作成手段は、前記２変数の一方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、前記第１の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することを特徴とする画像処理方法。
【請求項１１】
請求項９または１０において、
前記第２の中間値作成手段は、前記２変数の他方に沿って前記標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、前記第２の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することを特徴とする画像処理方法。
【請求項１２】
請求項９〜１１のいずれかにおいて、
前記第１の演算結果記憶手段に記憶されている複数の加算結果の中で、前記第１の対応点加算手段による加算回数が最も多い加算結果が前記第２の対応点加算手段による加算演算に用いられることを特徴とする画像処理方法。
【請求項１３】
請求項９〜１２のいずれかにおいて、
前記第２の演算結果記憶手段に記憶されている複数の加算結果の中で、前記第２の対応点加算手段による加算回数が最も多い加算結果を取り出して出力する動作を補間値出力手段を用いて行う補間値出力ステップさらに有することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２変数で位置が特定される画像データに基づく補間処理を行って画像の拡大や高解像度化を行う画像処理装置および方法に関する。
【０００２】
なお、本明細書においては、関数値が局所的な領域（標本位置を除く）の全部あるいは一部において０以外の有限の値を有し、それ以外の領域で０となる場合を「有限台」と称して説明を行うものとする。
【背景技術】
【０００３】
従来から、原画像に対してＸ方向に沿った補間処理を行った後にＹ方向に沿った補間処理を行って所望の補間位置における画素値を求めることにより、画像の拡大を行うようにした画像処理装置が知られている（例えば、特許文献１参照。）。
【特許文献１】特開平１１−３５３４７３号公報（第４−８頁、図１−１０）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１に開示された画像処理装置では、補間位置が決まったときにその都度Ｘ方向に沿った補間処理とその後のＹ方向に沿った補間処理を行っているため、原画像の画素間の多くの補間位置で補間値を演算する場合（拡大率が大きい場合）に演算に時間がかかるという問題があった。例えば、原画像を４倍に拡大する場合を考えると、補間位置を４×４（＝１６）回変更してその都度画素値を演算する必要がある。
【０００５】
本発明は、このような点に鑑みて創作されたものであり、その目的は、演算時間を短縮することができる画像処理装置および方法を提供することにある。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明の画像処理装置は、所定範囲において２変数によって標本位置および補間位置が特定される標本化関数について、複数の標本位置およびこれらの標本位置間を分割した位置のそれぞれに対応する複数の関数値を記憶する標本化関数値記憶手段と、２変数によって位置が特定される画素の画素値を含む画像データを取り込んで、２変数のいずれか一方に沿って順番に画素値を出力する画像データ入力手段と、標本化関数値記憶手段に格納された複数の関数値のそれぞれと、画像データ入力手段から出力される画素値とを乗算することにより、複数の関数値のそれぞれに対応する複数の乗算結果を出力する乗算手段と、乗算手段から出力される複数の乗算結果のそれぞれに対応する複数の中間値を作成して出力する第１の中間値作成手段と、乗算手段から出力される複数の乗算結果と、第１の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する第１の対応点加算手段と、第１の対応点加算手段から出力される複数の加算結果を記憶する第１の演算結果記憶手段と、第１の演算結果記憶手段に記憶された複数の加算結果のそれぞれに対応する複数の中間値を作成して出力する第２の中間値作成手段と、第１の演算結果記憶手段に記憶された複数の加算結果と、第２の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する第２の対応点加算手段と、第２の対応点加算手段から出力される複数の加算結果を記憶する第２の演算結果記憶手段とを備えている。第１の中間値作成手段は、画像データ入力手段から出力される画素値が切り替わる毎に、第１の演算結果記憶手段に記憶された複数の加算結果を、２変数の一方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する。第２の中間値作成手段は、画像データ入力手段から出力される画素値が切り替わる毎に、第２の演算結果記憶手段に記憶された複数の加算結果を、２変数の他方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する。
【０００７】
また、本発明の画像処理方法は、所定範囲において２変数によって標本位置および補間位置が特定される標本化関数について、複数の標本位置およびこれらの標本位置間を分割した位置のそれぞれに対応する複数の関数値を記憶する標本化関数値記憶手段を有する画像処理装置における画像処理方法であって、２変数によって位置が特定される画素の画素値を含む画像データを画像データ入力手段によって取り込んで、２変数のいずれか一方に沿って順番に画素値を出力する画像データ入力ステップと、標本化関数値記憶手段に格納された複数の関数値のそれぞれと、画像データ入力手段から出力される画素値とを乗算することにより、複数の関数値のそれぞれに対応する複数の乗算結果を乗算手段を用いて出力する乗算ステップと、乗算手段から出力される複数の乗算結果のそれぞれに対応する複数の中間値を作成して出力する動作を第１の中間値作成手段を用いて行う第１の中間値作成ステップと、乗算手段から出力される複数の乗算結果と、第１の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する動作を第１の対応点加算手段を用いて行う第１の対応点加算ステップと、第１の対応点加算手段から出力される複数の加算結果を第１の演算結果記憶手段に記憶する第１の演算結果記憶ステップと、第１の演算結果記憶手段に記憶された複数の加算結果のそれぞれに対応する複数の中間値を作成して出力する動作を第２の中間値作成手段を用いて行う第２の中間値作成ステップと、第１の演算結果記憶手段に記憶された複数の加算結果と、第２の中間値作成手段から出力される複数の中間値とを、１対１に対応させて対応するもの同士を加算して複数の加算結果を出力する動作を第２の対応点加算手段を用いて行う第２の対応点加算ステップと、第２の対応点加算手段から出力される複数の加算結果を第２の演算結果記憶手段に記憶する第２の演算結果記憶ステップとを有している。第１の中間値作成手段は、画像データ入力手段から出力される画素値が切り替わる毎に、第１の演算結果記憶手段に記憶された複数の加算結果を、２変数の一方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する。第２の中間値作成手段は、画像データ入力手段から出力される画素値が切り替わる毎に、第２の演算結果記憶手段に記憶された複数の加算結果を、２変数の他方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する。
【０００８】
また、上述した第１の中間値作成手段は、２変数の一方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、第１の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することが望ましい。
【０００９】
また、上述した第２の中間値作成手段は、２変数の他方に沿って標本化関数の隣接する標本位置に対応する区間分ずらして中間値を作成する際に、第２の演算結果記憶手段に、対応する加算結果が記憶されていない場合には０を内容とする中間値を作成することが望ましい。
【００１０】
また、上述した第１の演算結果記憶手段に記憶されている複数の加算結果の中で、第１の対応点加算手段による加算回数が最も多い加算結果が第２の対応点加算手段による加算演算に用いられることが望ましい。
【００１１】
また、上述した第２の演算結果記憶手段に記憶されている複数の加算結果の中で、第２の対応点加算手段による加算回数が最も多い加算結果を取り出して出力する補間値出力手段、補間値出力ステップをさらに備えることが望ましい。
【００１２】
また、上述した標本化関数は、所定範囲に含まれる複数の標本位置のそれぞれに対応する関数値が０で、それ以外の位置の少なくとも一部に対応する関数値が０以外の有限の値を有することが望ましい。
【００１３】
また、上述した標本化関数は、所定範囲以外で関数値が０であることが望ましい。また、上述した標本化関数は、２変数のそれぞれに沿って所定範囲を２以上に分割した各分割区間がｎ次多項式で表現される区分的多項式関数であることが望ましい。
【発明の効果】
【００１４】
本発明によると、標本化関数に対応する複数の関数値について並行して画素値との乗算や各種の加算を行うことにより、２変数のそれぞれに沿って隣接する４つの標本位置（画素位置）の間の複数の補間値を同時に生成することができ、補間値の演算時間を短縮することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を適用した一実施形態の画像処理装置について、図面に基づいて詳細に説明する。
【００１６】
図１は、一実施形態の画像処理装置の構成を示す図である。図１に示すように、本実施形態の画像処理部は、画像データ入力部１０、標本化関数値記憶部２０、乗算部３０、対応点加算部４０、７０、水平中間値作成部５０、演算結果記憶部６０、９０、垂直中間値作成部８０、補間値出力部１００、拡大画像データ格納部１０２、表示処理部１０４、表示部１０６を含んで構成されている。本実施形態の画像処理装置では、原画像を４倍に拡大（あるいは解像度を４倍に変更）する動作を行うものとして、以下の説明を行う。
【００１７】
画像データ入力部１０は、所定の解像度の原画像に対応する画像データを取り込むためのものである。この画像データは、水平方向（Ｘ方向）と垂直方向（Ｙ方向）のそれぞれに沿って等間隔に配置された複数の画素の各画素値から構成されている。また、画像データ入力部１０は、取り込まれた画像データに含まれる各画素値を水平方向に沿って一つずつ順番に出力する。例えば、画像データ入力部１０は、取り込んだ画像データについて、水平方向に沿った所定の画素列に着目して各画素の画素値を１画素ずつ出力した後、着目する画素列を垂直方向に一つずらしながら同様の動作を繰り返す。
【００１８】
具体的には、紙原稿に描かれた画像を所定の解像度で光学的に読み取るスキャナを画像データ入力部１０として用いることができる。あるいは、ＣＤやＤＶＤ等の挿抜可能な記憶媒体に記録された画像データを取り込む場合には、これらの記憶媒体のドライブ装置（読み取り装置）を画像データ入力部１０として用いることができる。半導体メモリやハードディスク装置に記録された画像データを取り込む場合には、これらを接続する入出力インタフェースを画像データ入力部１０として用いることができる。また、インターネットやその他のネットワーク、あるいは電話回線等を介した通信によって画像データを取り込む場合には、回線の種類等に応じた通信装置を画像データ入力部１０として用いることができる。また、放送による配信によって画像データを取り込む場合には、放送の形態に応じた受信装置を画像データ入力部１０として用いることができる。
【００１９】
標本化関数値記憶部２０は、２変数で定義される標本化関数の波形を示す複数の値（標本化関数値）を記憶しており、これら複数の標本化関数値を並行して出力する。図２は、標本化関数値記憶部２０の具体例を示す図である。本実施形態では、以下の（１）式で示される２変数の標本化関数ψ（ｘ，ｙ）が用いられる。
【００２０】
ψ（ｘ，ｙ）＝φ（ｘ）φ（ｙ）                                ・・・（１）
ここで、φは以下の式で表される。
【００２１】
φ（ｔ）＝０                             （ｔ≦−２）
−０．２５ｔ2−ｔ−１          （−２≦ｔ≦−１．５）
０．７５ｔ2＋２ｔ＋１．２５    （−１．５≦ｔ≦−１）
１．２５ｔ2＋３ｔ＋１．７５    （−１≦ｔ≦−０．５）
−１．７５ｔ2＋１              （−０．５≦ｔ≦０．５）
１．２５ｔ2−３ｔ＋１．７５    （０．５≦ｔ≦１）
０．７５ｔ2−２ｔ＋１．２５    （１．０≦ｔ≦１．５）
−０．２５ｔ2＋ｔ−１          （１．５≦ｔ≦２）
０                             （２≦ｔ）
ｔ＝０，±１，±２，・・・が標本位置に対応している。この関数φ（ｔ）は、微分可能性に着目した有限台の関数であり、例えば全域において１回だけ微分可能であって、横軸に沿った標本位置ｔが−２から＋２の間にあるときに、標本位置以外の位置において関数値が０以外の有限な値を有する有限台の関数である。また、標本位置ｔが−２以下あるいは２以上のときは関数値が常に０となる。また、φ（ｔ）は標本化関数であるため、ｔ＝０の標本点でのみ１になり、ｔ＝±１，±２の標本点において０になるという特徴を有する。
【００２２】
本実施形態では、隣接する２つの標本位置（原画像の画素位置）の間を水平方向および垂直方向のそれぞれについて４分割して補間位置が設定されており、各補間位置に対応する標本化関数値が標本化関数値記憶部２０に記憶されている。具体的には、水平方向および垂直方向に沿って隣接する２つの標本位置で区画される四角形領域に対応して１６（＝４×４）個の標本化関数値、全体範囲（水平方向および垂直方向のそれぞれについて標本位置−２から２までの範囲）に対応して合計２５６（１６×１６）個の標本化関数値のそれぞれが、標本化関数値記憶部２０内の２５６個の格納部に記憶されている。
【００２３】
乗算部３０は、複数の乗算器（図２に示す２５６個の格納部を有する標本化関数値記憶部２０の場合には２５６個の乗算器）を含んで構成されており、標本化関数値記憶部２０から出力される複数の標本化関数値のそれぞれと、画像データ入力部１０から出力される画素値とを乗算する。これにより、乗算部３０は、２５６個の乗算結果を並行して出力する。
【００２４】
対応点加算部４０は、乗算部３０から出力される２５６個の乗算結果と、水平中間値作成部５０から出力される２５６個の中間値について、対応するもの同士を加算し、２５６個の加算結果を並行して出力する。具体的には、対応点加算部４０には２５６個の加算器が備わっており、各加算器は、乗算部３０から出力される１つの乗算結果と、水平中間値作成部５０から出力される１つの中間値とを加算する。
【００２５】
水平中間値作成部５０は、２５６個の中間値を作成して保持するために２５６個の格納部を有し、これら２５６個の格納部に格納した中間値を並行して出力する。図３は、水平中間値作成部５０と演算結果記憶部６０の概略を示す図である。図３に示すように、水平中間値作成部５０に含まれる２５６個の格納部の中で、６４（＝４×１６）個の格納部（図３ではハッチングが付されている）に格納された６４個の中間値の値は「０」に固定されており、残りの１９２個の格納部に格納された１９２個の中間値の内容が、画像データ入力部１０から画素値が出力されるタイミングに同期して更新される。
【００２６】
演算結果記憶部６０は、対応点加算部４０から出力される２５６個の加算結果を一時的に記憶する。この中で、６４個の加算結果は、対応点加算部７０に向けて出力される。また、残りの１９２個の加算結果は、水平中間値作成部５０によって読み出される。具体的には、図３に示すように、演算結果記憶部６０は、２５６個の格納部を有しており、対応点加算部４０から出力される２５６個の加算結果をそれぞれの格納部に格納する。
【００２７】
なお、図２および図３において、標本化関数値記憶部２０の２５６個の格納部、水平中間値作成部５０の２５６個の格納部、演算結果記憶部６０の２５６個の格納部は、実線あるいは点線の水平線および垂直線で区画された２５６個のマス目によって示されており、配置の順番が同じもの同士が対応している。
【００２８】
図３に示すように、水平中間値作成部５０は、演算結果記憶部６０から１９２個の演算結果を読み出すが、６４個分ずれた１９２個の格納部に格納することにより中間値を作成している。
【００２９】
対応点加算部７０は、演算結果記憶部６０に記憶されている６４個の演算結果（対応点加算部４０による加算結果）と、垂直中間値作成部８０から出力される６４個の中間値について、対応するもの同士を加算し、６４個の加算結果を並行して出力する。具体的には、対応点加算部７０には６４個の加算器が備わっており、各加算器は、演算結果記憶部６０から出力される１つの演算結果と、垂直中間値作成部８０から出力される１つの中間値とを加算する。
【００３０】
垂直中間値作成部８０は、６４個の中間値を作成して保持するために６４個の格納部を有し、これら６４個の格納部に格納した中間値を並行して出力する。図４は、垂直中間値作成部８０と演算結果記憶部９０の概略を示す図である。図４に示すように、垂直中間値作成部８０に含まれる６４個の格納部の中で、１６（＝４×４）個の格納部（図４ではハッチングが付されている）に格納された１６個の中間値の値は「０」に固定されており、残りの４８個の格納部に格納された４８個の中間値の内容が、画像データ入力部１０から画素値が出力されるタイミングに同期して更新される。
【００３１】
演算結果記憶部９０は、対応点加算部７０から出力される６４個の加算結果を一時的に記憶する。この中で、１６個の加算結果は、補間値として補間値出力部１００に向けて出力される。また、残りの４８個の加算結果は、垂直中間値作成部８０によって読み出される。
【００３２】
ところで、本実施形態では、水平方向に１画素分の画素値が画像データ入力部１０から出力される毎に、対応点加算部７０から６４個の加算結果が出力される。演算結果記憶部９０は水平方向に並んだ画素数に対応する数の格納部を有しており、画像データ入力部１０から画素値が出力される毎に、対応点加算部７０から出力される６４個の加算結果の格納位置が変更され、画素の垂直方向の位置が更新されるまで各加算結果が上書きされないようになっている。
【００３３】
水平方向に沿った画素値の出力が一巡し、次の水平方向に沿った画素値の出力が行われているときに、垂直中間値作成部８０は、この画素値と垂直方向の位置が同じである１水平ライン分前の画素値に対応する６４個の加算結果の中の４８個の加算結果を読み出し、１６個分ずれた４８個の格納部に格納することにより中間値を作成している。また、垂直中間値作成部８０によって読み出されない残りの１６個の加算結果が、上述したように補間値として補間値出力部１００に向けて出力される。
【００３４】
補間値出力部１００は、演算結果記憶部９０から出力された６４個の補間値を拡大画像データ格納部１０２に格納する。表示処理部１０４は、拡大画像データ格納部１０２に格納された補間値（拡大後の画像の画素値）を読み出して表示部１０６に表示する。
【００３５】
上述した標本化関数値記憶部２０が標本化関数値記憶手段に、画像データ入力部１０が画像データ入力手段に、乗算部３０が乗算手段に、対応点加算部４０が第１の対応点加算手段に、水平中間値作成部５０が第１の中間値作成手段に、演算結果記憶部６０が第１の演算結果記憶手段に、垂直中間値作成部８０が第２の中間値作成手段に、対応点加算部７０が第２の対応点加算手段に、演算結果記憶部９０が第２の演算結果記憶手段に、補間値出力部１００が補間値出力手段にそれぞれ対応する。
【００３６】
また、上述した画像データ入力部１０による動作が画像データ入力ステップの動作に、乗算部３０による動作が乗算ステップの動作に、対応点加算部４０による動作が第１の対応点加算ステップの動作に、水平中間値作成部５０による動作が第１の中間値作成ステップの動作に、演算結果記憶部６０に対する記憶動作が第１の演算結果記憶ステップの動作に、垂直中間値作成部８０による動作が第２の中間値作成ステップの動作に、対応点加算部７０による動作が第２の対応点加算ステップの動作に、演算結果記憶部９０に対する記憶動作が第２の演算結果記憶ステップの動作に、補間値出力部１００による動作が補間値出力ステップの動作にそれぞれ対応する。
【００３７】
本実施形態の画像処理装置はこのような構成を有しており、次に、この装置によって行われる画像の拡大処理（補間処理）について説明する。
【００３８】
図５は、原画像と拡大画像に含まれる各画素との関係を示す図である。図５において、白丸（○）は原画像の各画素を、黒丸（●）は拡大処理後の補間画素をそれぞれ示している。例えば、画像データ入力部１０からは、画素ｐ１、ｐ２、ｐ３、ｐ４の順で水平方向に並んだ各画素の画素値が出力され、この水平ラインの最終画素の画素値が出力された後に、画素ｐ５、ｐ６、ｐ７、ｐ８が含まれる水平ラインに沿って同様の画素値出力が行われる。以後、同様にして各水平ラインに沿った画素値出力が順番に行われる。以下の説明では、画素ｐ６、ｐ７、ｐ１０、ｐ１１で区画される領域に含まれる黒丸で示される１６個の補間画素の画素値を出力する場合について考えるものとする。
【００３９】
図２に示す標本化関数値記憶部２０に関数値が記憶されている２変数の標本化関数は、水平および垂直方向のそれぞれにそって±２画素分の広がりを有している。したがって、画素ｐ６、ｐ７、ｐ１０、ｐ１１で区画される領域に含まれる１６個の補間画素（●）の画素値は、原画像に含まれる１６個の画素ｐ１〜ｐ１６の各画素値を用いて演算することができる。
【００４０】
（ステップＳ１）まず、画素ｐ１の画素値が画像データ入力部１０から出力された場合を考える。乗算部３０では、標本化関数値記憶部２０に記憶されている２５６個の関数値のそれぞれと、この入力された画素値とを乗算し、２５６個の乗算結果を並行して出力する。対応点加算部４０では、これら２５６個の乗算結果のそれぞれと、水平中間値作成部５０から出力される２５６個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、水平中間値作成部５０において作成される２５６個の中間値の中の符号Ａ（図３）が付された（値が「０」に固定された）６４個の中間値に着目すると、これら６４個の中間値に対応して、対応点加算部４０からは、標本化関数値記憶部２０の符号Ａ（図２）が付された６４個の格納部に格納された６４個の関数値のそれぞれと画素ｐ１の画素値とを乗算した乗算結果（この乗算結果を「ｐ１×Ａ」と表すものとする。）と、固定値「０」の中間値とを加算した結果が出力される。これらの加算結果は、演算結果記憶部６０の符号Ａ（図３）が付された領域に格納される。
【００４１】
（ステップＳ２）次に、画素ｐ２の画素値が画像データ入力部１０から出力された場合を考える。乗算部３０では、標本化関数値記憶部２０に記憶されている２５６個の関数値のそれぞれと、この入力された画素値とを乗算し、２５６個の乗算結果を並行して出力する。対応点加算部４０では、これら２５６個の乗算結果のそれぞれと、水平中間値作成部５０から出力される２５６個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、水平中間値作成部５０において作成される２５６個の中間値の中の符号Ｂ（図３）が付された６４個の中間値に着目すると、これら６４個の中間値は、ステップＳ１において演算結果記憶部６０の符号Ａが付された領域に格納された加算結果（ｐ１×Ａ）に等しい。したがって、水平中間値作成部５０の符号Ｂが付された領域に対応して、対応点加算部４０からは、標本化関数値記憶部２０の符号Ｂ（図２）が付された６４個の格納部に格納された６４個の関数値のそれぞれと画素ｐ２の画素値とを乗算した乗算結果（この乗算結果を「ｐ２×Ｂ」と表すものとする。）と、水平中間値作成部５０の符号Ｂが付された６４個の中間値（ｐ１×Ａ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部６０の符号Ｂ（図３）が付された領域に格納される。
【００４２】
（ステップＳ３）次に、画素ｐ３の画素値が画像データ入力部１０から出力された場合を考える。乗算部３０では、標本化関数値記憶部２０に記憶されている２５６個の関数値のそれぞれと、この入力された画素値とを乗算し、２５６個の乗算結果を並行して出力する。対応点加算部４０では、これら２５６個の乗算結果のそれぞれと、水平中間値作成部５０から出力される２５６個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、水平中間値作成部５０において作成される２５６個の中間値の中の符号Ｃ（図３）が付された６４個の中間値に着目すると、これら６４個の中間値は、ステップＳ２において演算結果記憶部６０の符号Ｂが付された領域に格納された加算結果（ｐ１×Ａ＋ｐ２×Ｂ）に等しい。したがって、水平中間値作成部５０の符号Ｃが付された領域に対応して、対応点加算部４０からは、標本化関数値記憶部２０の符号Ｃ（図２）が付された６４個の格納部に格納された６４個の関数値のそれぞれと画素ｐ３の画素値とを乗算した乗算結果（この乗算結果を「ｐ３×Ｃ」と表すものとする。）と、水平中間値作成部５０の符号Ｃが付された６４個の中間値（ｐ１×Ａ＋ｐ２×Ｂ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部６０の符号Ｃ（図３）が付された領域に格納される。
【００４３】
（ステップＳ４）次に、画素ｐ４の画素値が画像データ入力部１０から出力された場合を考える。乗算部３０では、標本化関数値記憶部２０に記憶されている２５６個の関数値のそれぞれと、この入力された画素値とを乗算し、２５６個の乗算結果を並行して出力する。対応点加算部４０では、これら２５６個の乗算結果のそれぞれと、水平中間値作成部５０から出力される２５６個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、水平中間値作成部５０において作成される２５６個の中間値の中の符号Ｄ（図３）が付された６４個の中間値に着目すると、これら６４個の中間値は、ステップＳ３において演算結果記憶部６０の符号Ｃが付された領域に格納された加算結果（ｐ１×Ａ＋ｐ２×Ｂ＋ｐ３×Ｃ）に等しい。したがって、水平中間値作成部５０の符号Ｄが付された領域に対応して、対応点加算部４０からは、標本化関数値記憶部２０の符号Ｄ（図２）が付された６４個の格納部に格納された６４個の関数値のそれぞれと画素ｐ４の画素値とを乗算した乗算結果（この乗算結果を「ｐ４×Ｄ」と表すものとする。）と、水平中間値作成部５０の符号Ｄが付された６４個の中間値（ｐ１×Ａ＋ｐ２×Ｂ＋ｐ３×Ｃ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部６０の符号Ｄ（図３）が付された領域に格納される。
【００４４】
（ステップＴ１）このようにして、演算結果記憶部６０の符号Ｄが付された領域に格納された６４個の演算結果は、対応点加算部７０によって読み出される。対応点加算部７０は、読み出した６４個の演算結果のそれぞれと、垂直中間値作成部８０から出力される６４個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、垂直中間値作成部８０において作成される６４個の中間値の中の符号ａ（図４）が付された１６個の中間値に着目すると、これら１６個の中間値に対応して、対応点加算部７０からは、演算結果記憶部６０の符号Ｄと符号ａ（図４）が付された１６個の演算結果と、固定値「０」の中間値とを加算した結果が出力される。これらの加算結果は、例えば演算結果記憶部９０の符号ｐと符号ａ（図４）が付された領域に格納される。
【００４５】
なお、演算結果記憶部６０の符号Ｄと符号ａ（図４）が付された１６個の演算結果とは、ｐ１×Ａ＋ｐ２×Ｂ＋ｐ３×Ｃ＋ｐ４×Ｄで示される６４個の演算結果の中で、図２において符号ａで示される領域に含まれる関数値に対応するもの（この乗算結果を「（ｐ１−ｐ４）×ａ」と表すものとする。）である。
【００４６】
（ステップＴ２）次の水平ラインに含まれる画素ｐ８の画素値が画像データ入力部１０から出力され、同様の処理が行われる。そして、演算結果記憶部６０の符号Ｄが付された領域に格納された６４個の演算結果は、対応点加算部７０によって読み出される。対応点加算部７０は、読み出した６４個の演算結果のそれぞれと、垂直中間値作成部８０から出力される６４個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、垂直中間値作成部８０において作成される６４個の中間値の中の符号ｂ（図４）が付された１６個の中間値に着目すると、これら１６個の中間値は、ステップＴ１において演算結果記憶部９０の符号ｐと符号ａが付された領域に格納された演算結果（（ｐ１−ｐ４）×ａ）に等しい。したがって、垂直中間値作成部８０の符号ｂが付された領域に対応して、対応点加算部７０からは、演算結果記憶部６０の符号Ｄと符号ｂ（図４）が付された１６個の演算結果と、垂直中間値作成部８０の符号ｂが付された１６個の中間値（（ｐ１−ｐ４）×ａ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部９０の符号ｐと符号ｂ（図４）が付された領域に格納される。
【００４７】
なお、演算結果記憶部６０の符号Ｄと符号ｂ（図４）が付された１６個の演算結果とは、ｐ５×Ａ＋ｐ６×Ｂ＋ｐ７×Ｃ＋ｐ８×Ｄで示される６４個の演算結果の中で、図２において符号ｂで示される領域に含まれる関数値に対応するもの（この乗算結果を「（ｐ５−ｐ８）×ｂ」と表すものとする。）である。
【００４８】
（ステップＴ３）次の水平ラインに含まれる画素ｐ１２の画素値が画像データ入力部１０から出力され、同様の処理が行われる。そして、演算結果記憶部６０の符号Ｄが付された領域に格納された６４個の演算結果は、対応点加算部７０によって読み出される。対応点加算部７０は、読み出した６４個の演算結果のそれぞれと、垂直中間値作成部８０から出力される６４個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、垂直中間値作成部８０において作成される６４個の中間値の中の符号ｃ（図４）が付された１６個の中間値に着目すると、これら１６個の中間値は、ステップＴ２において演算結果記憶部９０の符号ｐと符号ｂが付された領域に格納された演算結果（（ｐ１−ｐ４）×ａ＋（ｐ５−ｐ８）×ｂ）に等しい。したがって、垂直中間値作成部８０の符号ｃが付された領域に対応して、対応点加算部７０からは、演算結果記憶部６０の符号Ｄと符号ｃ（図４）が付された１６個の演算結果と、垂直中間値作成部８０の符号ｃが付された１６個の中間値（（ｐ１−ｐ４）×ａ＋（ｐ５−ｐ８）×ｂ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部９０の符号ｐと符号ｃ（図４）が付された領域に格納される。
【００４９】
なお、演算結果記憶部６０の符号Ｄと符号ｃ（図４）が付された１６個の演算結果とは、ｐ９×Ａ＋ｐ１０×Ｂ＋ｐ１１×Ｃ＋ｐ１２×Ｄで示される６４個の演算結果の中で、図２において符号ｃで示される領域に含まれる関数値に対応するもの（この乗算結果を「（ｐ９−ｐ１２）×ｃ」と表すものとする。）である。
【００５０】
（ステップＴ４）次の水平ラインに含まれる画素ｐ１６の画素値が画像データ入力部１０から出力され、同様の処理が行われる。そして、演算結果記憶部６０の符号Ｄが付された領域に格納された６４個の演算結果は、対応点加算部７０によって読み出される。対応点加算部７０は、読み出した６４個の演算結果のそれぞれと、垂直中間値作成部８０から出力される６４個の中間値のそれぞれとを加算（１対１に対応するもの同士を加算）する。ここで、垂直中間値作成部８０において作成される６４個の中間値の中の符号ｄ（図４）が付された１６個の中間値に着目すると、これら１６個の中間値は、ステップＴ３において演算結果記憶部９０の符号ｐと符号ｃが付された領域に格納された演算結果（（ｐ１−ｐ４）×ａ＋（ｐ５−ｐ８）×ｂ＋（ｐ９−ｐ１２）×ｃ）に等しい。したがって、垂直中間値作成部８０の符号ｄが付された領域に対応して、対応点加算部７０からは、演算結果記憶部６０の符号Ｄと符号ｄ（図４）が付された１６個の演算結果と、垂直中間値作成部８０の符号ｄが付された１６個の中間値（（ｐ１−ｐ４）×ａ＋（ｐ５−ｐ８）×ｂ＋（ｐ９−ｐ１２）×ｃ）とを加算した結果が出力される。これらの加算結果は、演算結果記憶部９０の符号ｐと符号ｄ（図４）が付された領域に格納される。
【００５１】
なお、演算結果記憶部６０の符号Ｄと符号ｄ（図４）が付された１６個の演算結果とは、ｐ１３×Ａ＋ｐ１４×Ｂ＋ｐ１５×Ｃ＋ｐ１６×Ｄで示される６４個の演算結果の中で、図２において符号ｄで示される領域に含まれる関数値に対応するもの（この乗算結果を「（ｐ１３−ｐ１６）×ｄ」と表すものとする。）である。すなわち、演算結果記憶部９０の符号ｐと符号ｄ（図４）が付された領域には、（ｐ１−ｐ４）×ａ＋（ｐ５−ｐ８）×ｂ＋（ｐ９−ｐ１２）×ｃ＋（ｐ１３−ｐ１６）×ｄで示される演算結果が格納される。これらの演算結果は、図５に示す画素ｐ６、ｐ７、ｐ１０、ｐ１１で囲まれた領域に含まれる１６個の補間画素の画素値であり、その後これらの補間画素の画素値が補間値出力部１００によって読み出される。
【００５２】
このように、本実施形態の画像処理装置では、標本化関数に対応する複数の関数値について並行して画素値との乗算や各種の加算を行うことにより、２変数のそれぞれに沿って隣接する４つの標本位置（画素位置）の間の複数の補間値を同時に生成することができ、補間値の演算時間を短縮することができる。
【００５３】
なお、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。例えば、上述した実施形態では、（１）式で示される標本化関数を用いたが、他の標本化関数を用いるようにしてもよい。水平方向および垂直方向に沿って各関数値を記憶可能であれば、どのような標本化関数に対しても本発明を適用することができる。
【００５４】
また、上述した実施形態においては、標本化関数はｔ＝±２で０に収束するようにしたが、本発明はこれに限らず、ｔ＝±３以上で０に収束するようにしてもよい。
【図面の簡単な説明】
【００５５】
【図１】一実施形態の画像処理装置の構成を示す図である。
【図２】標本化関数値記憶部の具体例を示す図である。
【図３】水平中間値作成部と演算結果記憶部の概略を示す図である。
【図４】垂直中間値作成部と演算結果記憶部の概略を示す図である。
【図５】原画像と拡大画像に含まれる各画素との関係を示す図である。
【符号の説明】
【００５６】
１０  画像データ入力部
２０  標本化関数値記憶部
３０  乗算部
４０、７０  対応点加算部
５０  水平中間値作成部
６０、９０  演算結果記憶部
８０  垂直中間値作成部
１００  補間値出力部
１０２  拡大画像データ格納部
１０４  表示処理部
１０６  表示部
【図１】
2010130599.tif 000003
【図２】
2010130599.tif 000004
【図３】
2010130599.tif 000005
【図４】
2010130599.tif 000006
【図５】
2010130599.tif 000007