(57)【要約】【課題】回路サイズを大きく増やすことなく、高次の補間フィルタに対応し、折り返しノイズの発生を抑えた良好な縮小画像を生成することができる縮小画像生成装置を提供する。【解決手段】この発明にかかる縮小画像生成装置は、縮小率Ｒで画像を縮小する縮小画像生成装置であって、縮小率Ｒは、Ｍ／Ｎ（ＭおよびＮは、Ｍ≧Ｎを満たす整数）と１／Ｌ（Ｌは２以上の整数）との積で表され、入力された画像を一旦Ｍ／Ｎを拡大係数として拡大する拡大処理部３と、拡大処理部３で拡大された画像を１／Ｌを縮小係数として縮小する縮小処理部４とを備える。【選択図】図１
2011009814.tif 000002
【特許請求の範囲】
【請求項１】
縮小率Ｒで画像を縮小する縮小画像生成装置であって、
前記縮小率Ｒは、Ｍ／Ｎ（ＭおよびＮは、Ｍ≧Ｎを満たす整数）と１／Ｌ（Ｌは２以上の整数）との積で表され、
入力された前記画像を一旦前記Ｍ／Ｎを拡大係数として拡大する拡大処理部と、
前記拡大処理部で拡大された前記画像を前記１／Ｌを縮小係数として縮小する縮小処理部とを備える、
縮小画像生成装置。
【請求項２】
前記拡大係数および前記縮小係数は、前記画像の水平方向および垂直方向についてそれぞれ個別に設定可能である、
請求項１に記載の縮小画像生成装置。
【請求項３】
前記拡大処理部から出力される拡大補間画素と前記縮小処理部から出力される縮小補間画素について、前記縮小処理部は、一組の前記拡大補間画素に基づいて一の前記縮小補間画素を生成し、
各前記縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じである、
請求項１または２に記載の縮小画像生成装置。
【請求項４】
前記係数ＭおよびＮは、２×Ｎ＞Ｍ≧Ｎ＞０を満たす整数である、
請求項１〜３のいずれかに記載の縮小画像生成装置。
【請求項５】
前記縮小処理部は、前記縮小係数１／Ｌ毎に前記縮小の縮小補間処理に用いる２×Ａ×Ｌ−１（Ａは２以上の整数）個の補間係数参照テーブルを有する、
請求項１〜４のいずれかに記載の縮小画像生成装置。
【請求項６】
前記補間係数参照テーブルは、前記画像の水平方向、垂直方向についてそれぞれ個別に前記Ａを設定可能である、
請求項５に記載の縮小画像生成装置。
【請求項７】
前記縮小処理部は、前記縮小後の画素と、その周辺に位置する前記縮小前の画素の、縮小後の画素間隔を１とする距離ｔが前記Ａに対し｜ｔ｜≧Ａを満たす場合、前記縮小補間処理に用いる前記補間係数を０とする、
請求項５または６に記載の縮小画像生成装置。
【請求項８】
画像を縮小する縮小画像生成装置であって、
入力された前記画像を一旦拡大する拡大処理部と、
前記拡大処理部で拡大された前記画像を縮小する縮小処理部とを備え、
前記拡大処理部から出力される拡大補間画素と前記縮小処理部から出力される縮小補間画素について、前記縮小処理部は、一組の前記拡大補間画素に基づいて一の前記縮小補間画素を生成し、
各前記縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じである、
縮小画像生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は縮小画像生成装置に関し、特に入力された元画像に対して補間処理を行うことにより、縮小画像を生成する縮小画像生成装置に関する。
【背景技術】
【０００２】
縮小画像生成装置において縮小画像を生成するための補間方法として、最近傍補間法や共一次補間（バイリニア補間）法、３次補間（バイキュービック）法などが一般に用いられている。
【０００３】
元の画像を小さく縮小すると、縮小後のサンプリング周波数では表現できない高周波成分が折り返しノイズとなって現れる。そのため、縮小に伴う補間処理の前にローパスフィルタを挿入し、あらかじめ高周波成分を除去することにより折り返しノイズを抑える手法が用いられることが多い。このとき、折り返しノイズを抑えるためのローパスフィルタのカットオフ周波数が縮小サイズよりも小さく適当でないと、解像感が失われることになる。また、元の画像を小さく縮小すればするほど、折り返しノイズを抑制するために、高次の補間フィルタが必要となる。
【０００４】
特許文献１には、Ｓｉｎｃ関数を使った高次の補間フィルタを参照テーブルとして記憶しておき、これを参照してフィルタの係数とし、補間処理時、座標変換演算によって求まる座標の少数部だけ、参照するＳｉｎｃ関数位置を移動することにより畳み込むデータの係数を求める方法が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特公平６−９５６２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示された補間方法では、Ｓｉｎｃ関数を使った高次の補間フィルタを用いることにより折り返しノイズを抑制した縮小処理が可能であるが、縮小率によって座標変換演算から求まる座標の小数部の精度が異なり、その精度にあわせて縮小処理を最適に行うためには補間係数を格納する大きな参照テーブルが必要であるという問題があった。
【０００７】
本発明は上記のような問題点を解消するためになされたものであり、補間フィルタの補間係数を縮小係数にあわせて用意した補間係数の参照テーブルを大きくすることなく、良好な縮小画像を生成できる縮小画像生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の態様にかかるこの発明は、縮小率Ｒで画像を縮小する縮小画像生成装置であって、前記縮小率Ｒは、Ｍ／Ｎ（ＭおよびＮは、Ｍ≧Ｎを満たす整数）と１／Ｌ（Ｌは２以上の整数）との積で表され、入力された前記画像を一旦前記Ｍ／Ｎを拡大係数として拡大する拡大処理部と、前記拡大処理部で拡大された前記画像を前記１／Ｌを縮小係数として縮小する縮小処理部とを備える。
【０００９】
第２の態様にかかるこの発明は、画像を縮小する縮小画像生成装置であって、入力された前記画像を一旦拡大する拡大処理部と、前記拡大処理部で拡大された前記画像を縮小する縮小処理部とを備え、前記拡大処理部から出力される拡大補間画素と前記縮小処理部から出力される縮小補間画素について、前記縮小処理部は、一組の前記拡大補間画素に基づいて一の前記縮小補間画素を生成し、各前記縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じである。
【発明の効果】
【００１０】
第１の態様にかかるこの発明によれば、縮小率Ｒで画像を縮小する縮小画像生成装置であって、前記縮小率Ｒは、Ｍ／Ｎ（ＭおよびＮは、Ｍ≧Ｎを満たす整数）と１／Ｌ（Ｌは２以上の整数）との積で表され、入力された前記画像を一旦前記Ｍ／Ｎを拡大係数として拡大する拡大処理部と、前記拡大処理部で拡大された前記画像を前記１／Ｌを縮小係数として縮小する縮小処理部とを備えることにより、縮小に用いる参照テーブルを大きくすることなく良好な縮小画像を生成することが可能となる。
【００１１】
第２の態様にかかるこの発明によれば、画像を縮小する縮小画像生成装置であって、入力された前記画像を一旦拡大する拡大処理部と、前記拡大処理部で拡大された前記画像を縮小する縮小処理部とを備え、前記拡大処理部から出力される拡大補間画素と前記縮小処理部から出力される縮小補間画素について、前記縮小処理部は、一組の前記拡大補間画素に基づいて一の前記縮小補間画素を生成し、各前記縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じであることにより、縮小に用いる参照テーブルを大きくすることなく良好な縮小画像を生成することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１に係る縮小画像生成装置１の要部構成を示すブロック図である。
【図２】フレーム画像における画素走査方向を説明するための図である。
【図３】拡大処理部３の要部構成を示すブロック図である。
【図４】縮小処理部４の要部構成を示すブロック図である。
【図５】垂直方向縮小補間処理部４４の要部構成を示すブロック図である。
【図６】垂直方向縮小補間メモリ４６の要部構成を示すブロック図である。
【図７】水平方向２画素×垂直方向２画素の元画素を必要とする拡大補間を説明するための図である。
【図８】水平方向４画素×垂直方向４画素の元画素を必要とする拡大補間を説明するための図である。
【図９】横軸を元画素間／１６を基本単位とする距離、縦軸を振幅２５６に正規化したバイキュービックの重み付け係数として、グラフ化した図である。
【図１０】横軸を元画素間／１６を基本単位とする距離、縦軸を振幅２５６に正規化したＬａｎｃｚｏｓ−２補間の重み付け係数として、グラフ化した図である。
【図１１】縮小率２／３の縮小処理を直接行った場合の元画素と縮小補間画素の関係を説明する図である。
【図１２】縮小率２／３の縮小処理を拡大係数４／３の拡大処理と縮小係数１／２の縮小処理の２段階で行った場合の元画素、拡大補間画素、縮小補間画素の関係を説明するための図である。
【図１３】縮小係数１／２の場合の垂直方向縮小補間処理を説明する図である。
【図１４】縮小係数１／３の場合の垂直方向縮小補間処理を説明する図である。
【発明を実施するための形態】
【００１３】
＜Ａ．実施の形態１＞
＜Ａ−１．構成＞
＜Ａ−１−１．縮小画像生成装置の構成＞
図１は、本発明の実施の形態１に係る縮小画像生成装置１の要部構成を示すブロック図である。
【００１４】
縮小画像生成装置１は、入力される元画像に対して、縮小画像を生成して出力するものである。図２に示すような水平方向の画素走査と垂直方向のライン走査とを行う１フレームの画像が縮小画像生成装置１に入力されると、補間処理によって水平方向および垂直方向に縮小処理された１フレームの画像が出力される。なお、図２において、走査方向はこれに限るものではなく、水平方向と垂直方向とが逆でもよい。
【００１５】
図１において、縮小画像生成装置１は、入力端子５、７ａと、出力端子６、７ｂと、入力端子７ａと出力端子７ｂとに接続された全体制御部２と、入力端子５と全体制御部２とに接続された拡大処理部３と、出力端子６と全体制御部２と拡大処理部３とに接続された縮小処理部４とを備えている。
【００１６】
入力端子５には、デジタルカメラなどで撮影された静止画像や、ビデオカメラなどで撮影された動画像の１フレーム（枚）の画像（元画像）が入力される。もちろん、デジタルカメラやビデオカメラの撮像素子で取得された画像が直接入力されても構わないし、一旦、メモリに保存されたものが読み出されて入力されても構わない。入力端子５に入力された画素データは、拡大処理部３に入力される。なお、元画像の１つ１つの画素を元画素、その値を元画素値（元画素データ）と記す。
【００１７】
全体制御部２は、制御部（不図示）から入力端子７ａを介して入力される縮小処理要求を受けるとともに、出力端子７ｂを介して制御部に元画素データの供給を要求する。入力端子７ａを介して制御部から入力される縮小率から、拡大係数、縮小係数を算出し、拡大係数を拡大処理部３に、縮小係数を縮小処理部４に出力する。同様に、入力端子７ａを介して制御部から入力される画像サイズを、拡大処理部３、縮小処理部４に出力する。
【００１８】
拡大処理部３は、入力端子５を介して入力される元画素データを、全体制御部２から入力される画像サイズ、拡大係数に基づいて拡大処理を行い、拡大補間画素データを縮小処理部４に出力する。
【００１９】
縮小処理部４では、拡大処理部３から出力される拡大補間画素データを、全体制御部２から入力される画像サイズ、縮小係数に基づいて縮小処理を行い、出力端子６を介して出力する。
【００２０】
＜Ａ−１−２．拡大処理部の構成＞
図３は、前述の拡大処理部３の要部構成を示すブロック図である。
【００２１】
拡大処理部３は、入力端子３４、３６、３７と、出力端子３５と、入力端子３４と出力端子３５とに接続される拡大補間処理部３１と、拡大補間処理部３１に接続される拡大補間メモリ３２と、入力端子３６、３７および拡大補間処理部３１と接続される拡大補間係数算出部３３とを備えている。
【００２２】
拡大補間係数算出部３３では、入力端子３６から入力される拡大係数と、入力端子３７から入力される画像サイズ、拡大補間処理部３１から入力される水平方向／垂直方向拡大補間処理後画素位置（水平方向／垂直方向拡大補間処理後の画像上の画素位置）をもとに拡大補間処理前画素位置（水平方向／垂直方向拡大補間処理前の画像上での画素位置）を算出し、拡大補間処理に必要な各画素と、それら各画素に対する水平方向／垂直方向拡大補間係数を決定し、水平方向／垂直方向拡大補間情報として拡大補間処理部３１に出力する。
【００２３】
拡大補間メモリ３２では、拡大補間処理部３１を介して元画素データが入力され、一時的に格納し、拡大補間処理部３１からの読み出し要求に対して、格納した元画素データを拡大補間処理部３１に出力する。
【００２４】
拡大補間処理部３１では、拡大補間メモリ３２に対して書き込みアドレス等制御信号を発生させ、入力端子３４から入力された元画素データを拡大補間メモリ３２に出力する。また、拡大補間係数算出部３３から出力される水平方向／垂直方向拡大補間情報から、拡大補間メモリ３２に対して読み出しアドレス等制御信号を発生させ、拡大補間メモリ３２に一旦格納された元画素データを読み出し、拡大補間係数算出部３３から出力される水平方向／垂直方向拡大補間係数を使って拡大補間画素データを算出して、出力端子３５から出力する。
【００２５】
＜Ａ−１−３．縮小処理部の構成＞
図４は、前述の縮小処理部４の要部構成を示すブロック図である。
【００２６】
縮小処理部４は、入力端子４７、４９、５０と、出力端子４８と、入力端子４７と接続された水平方向縮小補間処理部４１と、入力端子４９、５０および水平方向縮小補間処理部４１と接続される水平方向縮小補間係数算出部４２と、水平方向縮小補間処理部４１と接続される水平方向縮小補間メモリ４３と、水平方向縮小補間メモリ４３と出力端子４８と接続される垂直方向縮小補間処理部４４と、入力端子４９、５０および垂直方向縮小補間処理部４４と接続される垂直方向縮小補間係数算出部４５と、垂直方向縮小補間処理部４４と接続される垂直方向縮小補間メモリ４６とを備えている。
【００２７】
水平方向縮小補間係数算出部４２では、入力端子４９から入力される縮小係数と、入力端子５０から入力される画素サイズと、水平方向縮小補間処理部４１から入力される水平方向縮小補間処理後画素位置（水平方向縮小補間処理後の画像上の画素位置）とをもとに水平方向縮小補間処理前画素位置（水平方向縮小補間処理前の画像上の画素位置）を算出し、水平方向縮小補間処理に必要な各画素と、それら各画素に対する水平方向縮小補間係数を決定し、水平方向縮小補間処理部４１に水平方向縮小補間情報を出力する。
【００２８】
水平方向縮小補間処理部４１では、入力端子４７を介して入力される拡大補間画素データに対して、水平方向縮小補間係数算出部４２から出力される水平方向縮小補間係数を使って、水平方向縮小補間画素データを算出して、水平方向縮小補間メモリ４３に出力する。
【００２９】
水平方向縮小補間メモリ４３では、水平方向縮小補間処理部４１から出力される水平方向縮小補間画素データを一時的に格納し、垂直方向縮小補間処理部４４に出力する。
【００３０】
垂直方向縮小補間係数算出部４５では、入力端子４９から入力される縮小係数と、入力端子５０から入力される画像サイズと、垂直方向縮小補間処理部４４から入力される垂直方向縮小補間処理後画素位置（垂直方向縮小補間処理後の画像上の画素位置）とをもとに垂直方向縮小補間処理前画素位置（垂直方向縮小補間処理前の画像上の画素位置）を算出し、垂直方向縮小補間処理に必要な各画素と、それら各画素に対する垂直方向縮小補間係数を決定し、垂直方向縮小補間処理部４４に垂直方向縮小補間情報を出力する。
【００３１】
垂直方向縮小補間処理部４４では、これから垂直方向縮小補間処理を行う補間画素の、垂直方向縮小補間後画像上の画素位置を、垂直方向縮小補間処理後画素位置として、垂直方向縮小補間係数算出部４５に出力し、垂直方向縮小補間係数算出部４５から出力される垂直方向縮小補間情報から、垂直方向縮小補間メモリ４６に対して読み出しアドレス等制御信号を発生させ、垂直方向縮小補間メモリ４６から前ラインまでの垂直方向縮小補間画素データを読み出す。その後、水平方向縮小補間メモリ４３から入力される水平方向縮小補間画素データに、垂直方向縮小補間係数算出部４５から出力される垂直方向縮小補間係数をかけ、垂直方向縮小補間メモリ４６から読み出した前ラインまでの垂直方向縮小補間画素データに加算して、垂直方向縮小補間メモリ４６に、書き込みアドレス等制御信号とともに、現ラインまでの垂直方向縮小補間画素データとして出力する。また、垂直方向縮小補間処理が終わるラインでは、最終的な縮小補間画素データとして、出力端子４８から出力する。
【００３２】
＜Ａ−１−４．垂直方向縮小補間処理部の構成＞
図５は、前述の垂直方向縮小補間処理部４４の要部構成を示すブロック図である。
【００３３】
垂直方向縮小補間処理部４４は、入力端子５３、５６、５９と、出力端子５４、５５、５７、５８と、入力端子５３、５６、５９、出力端子５４、５５、５７、５８と接続される垂直方向縮小補間制御部５１と、垂直方向縮小補間制御部５１と接続される第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂとを備えている。
【００３４】
垂直方向縮小補間制御部５１では、入力端子５３から入力される水平方向縮小補間画素データから、これから垂直方向縮小補間処理を行う補間画素の、垂直方向縮小補間後画像上の画素位置を、垂直方向縮小補間処理後画素位置として出力端子５８から前述の垂直方向縮小補間係数算出部４５に出力する。そのうえで、入力端子５９を介して垂直方向縮小補間係数算出部４５から入力される垂直方向縮小補間情報から読み出しアドレス等制御信号を算出し、出力端子５４から前述の垂直方向縮小補間メモリ４６に対して出力する。入力端子５６から前ラインまでの第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂの垂直方向縮小補間処理結果を読み出し、入力端子５３から入力される水平方向縮小補間画素データとともに、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ（Ｎは正の整数）に出力する。さらに、書き込みアドレス等の制御信号を出力端子５４から出力し、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂから入力される現ラインまでの垂直方向縮小補間処理結果を出力端子５５から出力するとともに、垂直方向縮小補間処理の最終ライン処理時には、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂからの第１の垂直方向縮小補間処理結果（第１の垂直方向縮小補間画素データとも記す）〜第Ｎの垂直方向縮小補間処理結果（第Ｎの垂直方向縮小補間画素データとも記す）を、適宜切り替えて最終的な縮小補間画素データとして、出力端子５７から出力する。
【００３５】
第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂでは、垂直方向縮小補間制御部５１から入力される現ラインの水平方向縮小補間画素データと、前ラインまでの垂直方向縮小補間処理結果から、現ラインまでの垂直方向縮小補間処理を行い、その処理結果を、垂直方向縮小補間制御部５１に出力する。
【００３６】
＜Ａ−１−５．垂直方向縮小補間メモリの構成＞
図６は、前述の垂直方向縮小補間メモリ４６の要部構成を示すブロック図である。
【００３７】
垂直方向縮小補間メモリ４６は、入力端子６３、６４と、出力端子６５と、入力端子６３、６４、出力端子６５に接続された垂直方向縮小補間メモリ制御部６１と、垂直方向縮小補間メモリ制御部６１に接続された第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂとを備えている。
【００３８】
垂直方向縮小補間メモリ制御部６１では、入力端子６３から入力される読み出しアドレス等制御信号をもとに、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂに対して読み出しアドレス等制御信号を出力し、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂから読み出した前ラインまで垂直方向縮小補間画素データを出力端子６５から出力する。また、入力端子６３から入力される書き込みアドレス等制御信号をもとに、入力端子６４から入力される現ラインまでの第１の垂直方向縮小補間画素データ〜第Ｎの垂直方向縮小補間画素データを、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂに出力し、書き込む。
【００３９】
第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂでは、垂直方向縮小補間メモリ制御部６１に前ラインまでの垂直方向縮小補間画素データを出力し、逆に、垂直方向縮小補間メモリ制御部６１から入力される現ラインまでの垂直方向縮小補間画素データを一時的に格納し、次ライン処理時に、前ラインまでの垂直方向縮小補間画素データとして垂直方向縮小補間メモリ制御部６１に出力する。
【００４０】
＜Ａ−２．動作＞
以上のような構成を有する縮小画像生成装置１の動作について、図１から図６を用いて、以下で説明する。
【００４１】
図２のように、水平方向の画素走査を垂直方向に順に繰り返すことによって読み出される元画像があるとする。なお、読み出し方向はこれに限るものではなく、水平方向と垂直方向とが逆になっていてもよい。
【００４２】
＜Ａ−２−１．全体制御部の動作＞
図１を参照して、入力端子７ａを介して制御部（不図示）から縮小処理要求を受けると、全体制御部２は補間処理を開始し、出力端子７ｂを介して、制御部に元画素データの供給を要求する。これをきっかけに、入力端子５から縮小画像生成装置１に元画素データが入力される。入力端子５から入力された元画素データは、拡大処理部３に入力される。
【００４３】
全体制御部２では、入力端子７ａから入力される縮小処理要求のなかで、画像サイズ、縮小率を受け取る。画像サイズは、拡大処理部３、縮小処理部４に出力される。また、縮小率は、拡大係数、縮小係数に分けられ、拡大係数は拡大処理部３に、縮小係数は縮小処理部４に出力される。縮小率を拡大係数と縮小係数に分ける方法については、後述する。
【００４４】
＜Ａ−２−２．拡大処理部の動作＞
図３に示すように、入力端子５から入力された元画素データは、入力端子３４を介して、拡大処理部３の拡大補間処理部３１に入力される。拡大補間処理部３１では、書き込みアドレス等制御信号を生成し、元画素データとともに拡大補間メモリ３２に出力する。
【００４５】
拡大補間メモリ３２に入力された元画素データは、書き込みアドレスで指定された所定のアドレスに格納される。
【００４６】
また拡大補間処理部３１は、これから拡大補間処理を行う補間画素の、水平方向／垂直方向拡大補間後画像上の画素位置を、水平方向／垂直方向拡大補間処理後画素位置として、拡大補間係数算出部３３に出力する。
【００４７】
入力端子３６を介して全体制御部２から入力される拡大係数と、入力端子３７を介して全体制御部２から入力される画像サイズと、拡大補間処理部３１から入力される水平方向／垂直方向拡大補間処理後画素位置（これから拡大補間処理を行う補間画素の、水平方向／垂直方向拡大補間処理後画像上の画素位置）とから、拡大補間処理前画素位置（これから拡大補間処理を行う補間画素の、水平方向／垂直方向拡大補間処理前画像上での画素位置）を算出し、拡大補間処理に必要な各画素と、それら各画素に対する水平方向／垂直方向拡大補間係数を決定し、拡大補間処理部３１に水平方向／垂直方向拡大補間情報として出力する。
【００４８】
拡大補間処理部３１では、拡大補間係数算出部３３から出力される水平方向／垂直方向拡大補間情報から、拡大補間メモリ３２に対して読み出しアドレス等制御信号を発生させ、拡大補間メモリ３２に一旦格納された元画素データを読み出し、拡大補間係数算出部３３から出力される水平方向／垂直方向拡大補間係数を使って拡大補間画素データを算出して、出力端子３５から出力する。拡大補間方法については、後述する。
【００４９】
＜Ａ−２−３．縮小処理部の動作＞
図４を参照すると、前述の拡大処理部３から出力された拡大補間画素データは、入力端子４７を介して、縮小処理部４の水平方向縮小補間処理部４１に入力される。水平方向縮小補間処理部４１は、拡大補間画素データを受け取ると、これから水平方向縮小補間処理を行う補間画素の水平方向縮小補間後画像上の画素位置を、水平方向縮小補間処理後画素位置として、水平方向縮小補間係数算出部４２に出力する。
【００５０】
水平方向縮小補間係数算出部４２では、入力端子４９を介して全体制御部２から入力される縮小係数と、入力端子５０を介して全体制御部２から入力される画像サイズと、水平方向縮小補間処理部４１から入力される水平方向縮小補間処理後画素位置（これから水平方向縮小補間処理を行う補間画素の、水平方向縮小補間処理後画像上の画素位置）から、水平方向縮小補間処理前画素位置（これから水平方向縮小補間処理を行う補間画素の、水平方向縮小補間処理前画像上での画素位置）を算出し、水平方向縮小補間処理に必要な各画素と、それら各画素に対する水平方向縮小補間係数を決定し、水平方向縮小補間処理部４１に水平方向縮小補間情報として出力する。
【００５１】
水平方向縮小補間処理部４１では、入力端子４７を介して拡大処理部４から入力される拡大補間画素データに対して、水平方向縮小補間係数算出部４２から出力される水平方向縮小補間情報のうち、水平方向縮小補間係数を使って水平方向縮小補間画素データを算出して、水平方向縮小補間メモリ４３に出力する。水平方向縮小補間方法については、後述する。
【００５２】
水平方向縮小補間メモリ４３では、水平方向縮小補間処理部４１から出力される水平方向縮小補間画素データを一時的に格納し、その後の垂直方向の縮小補間処理を行うために、垂直方向縮小補間処理部４４に出力する。
【００５３】
図５に示すように、水平方向縮小補間メモリ４３から出力された水平方向縮小補間画素データは、入力端子５３を介して垂直方向縮小補間処理部４４の垂直方向縮小補間制御部５１に入力される。垂直方向縮小補間制御部５１では、これから垂直方向縮小補間処理を行う補間画素の、垂直方向縮小補間後画像上の画素位置を、垂直方向縮小補間処理後画素位置として、出力端子５８から垂直方向縮小補間係数算出部４５（図４参照）に出力する。
【００５４】
図４において垂直方向縮小補間係数算出部４５は、入力端子４９を介して全体制御部２から入力される縮小係数と、入力端子５０を介して全体制御部２から入力される画像サイズと、垂直方向縮小補間処理部４４の垂直方向縮小補間制御部５１から出力端子５８（図５参照）を介して入力される垂直方向縮小補間処理後画素位置（これから垂直方向縮小補間処理を行う補間画素の、垂直方向縮小補間処理後画像上の画素位置）とから、垂直方向縮小補間処理前画素位置（これから垂直方向縮小補間処理を行う補間画素の、垂直方向縮小補間処理前画像上での画素位置）を算出し、縮小補間処理に必要な各画素と、それら各画素に対する垂直方向縮小補間係数を決定し、垂直方向縮小補間処理部４４に垂直方向縮小補間情報として出力する。
【００５５】
図５に示すように、垂直方向縮小補間係数算出部４５から垂直方向縮小補間処理部４４に入力された垂直方向縮小補間情報は、入力端子５９を介して垂直方向縮小補間制御部５１に入力される。垂直方向縮小補間制御部５１では、垂直方向縮小補間係数算出部４５から入力端子５９を介して出力される垂直方向縮小補間情報をもとに、垂直方向縮小補間メモリ４６に対する読み出しアドレス等制御信号を発生させ、出力端子５４を介して垂直方向縮小補間メモリ４６に出力する。
【００５６】
図６において、垂直方向縮小補間処理部４４から出力された読み出しアドレス等制御信号は、入力端子６３を介して垂直方向縮小補間メモリ４６の垂直方向縮小補間メモリ制御部６１に入力される。
【００５７】
垂直方向縮小補間メモリ制御部６１では、垂直方向縮小補間処理部４４から入力端子６３を介して入力された読み出しアドレス等制御信号を、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂに出力する。
【００５８】
第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂでは、垂直方向縮小補間メモリ制御部６１からの読み出し要求に対して、それぞれ前ラインまでの垂直方向縮小補間画素データを読み出し、垂直方向縮小補間メモリ制御部６１に出力する。
【００５９】
垂直方向縮小補間メモリ制御部６１は、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂから読み出した前ラインまでの垂直方向縮小補間画素データを、出力端子６５を介して垂直方向縮小補間処理部４４に出力する。
【００６０】
図５に示すように、垂直方向縮小補間メモリ４６から読み出した前ラインまでの垂直方向縮小補間画素データは、入力端子５６を介して垂直方向縮小補間制御部５１に入力される。
【００６１】
垂直方向縮小補間制御部５１は、入力端子５３を介して水平方向縮小補間メモリ４３から入力された水平方向縮小補間画素データと、入力端子５６を介して垂直方向縮小補間メモリ４６から入力された前ラインまでの垂直方向縮小補間画素データと、入力端子５９を介して垂直方向縮小補間係数算出部４５から入力された垂直方向縮小補間係数とを、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂに出力する。
【００６２】
第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂでは、入力端子５３を介して水平方向縮小補間メモリ４３から入力された水平方向縮小補間画素データと、入力端子５６を介して垂直方向縮小補間メモリ４６から入力された前ラインまでの垂直方向縮小補間画素データと、入力端子５９を介して垂直方向縮小補間係数算出部４５から入力された垂直方向縮小補間係数とを使って、現ラインまでの垂直方向縮小補間画素データを算出し、垂直方向縮小補間制御部５１に出力する。
【００６３】
垂直方向縮小補間制御部５１では、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間５２ｂから入力された現ラインまでの垂直方向縮小補間画素データを、出力端子５５を介して垂直方向縮小補間メモリ４６に出力する。
【００６４】
図６に示すように、垂直方向縮小補間メモリ４６では、入力端子６４を介して垂直方向縮小補間処理部４４から垂直方向縮小補間メモリ制御部６１に入力された現ラインまでの垂直方向縮小補間画素データを、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂに出力する。
【００６５】
第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂでは、垂直方向縮小補間メモリ制御部６１から入力された現ラインまでの垂直方向縮小補間画素データを一時的に格納し、次ライン処理時、垂直方向縮小補間メモリ制御部６１からの読み出しに対して、前ラインまでの垂直方向縮小補間画素データとして出力する。
【００６６】
また、垂直方向縮小補間制御部５１では、第１の垂直方向縮小補間部５２ａからの第１の垂直方向縮小補間処理結果（第１の垂直方向縮小補間画素データとも記す）〜第Ｎの垂直方向縮小補間部５２ｂからの第Ｎの垂直方向縮小補間処理結果（第Ｎの垂直方向縮小補間画素データとも記す）を、補間ライン単位で切り替えて、最終的な縮小補間画素データとして出力端子５７から出力する。垂直方向縮小補間方法については、後述する。
【００６７】
＜Ａ−２−４．拡大係数と縮小係数を分ける方法＞
では、全体制御部２において、入力端子７ａから入力される縮小率を、拡大係数と縮小係数に分ける方法について説明する。縮小率をＲとし、拡大係数をＭ／Ｎ、縮小係数を１／Ｌとする。
【００６８】
ただし、Ｍ、Ｎは、２×Ｎ＞Ｍ≧Ｎ＞０の整数であり、Ｌは２以上の整数である。Ｍは補間点の補間位置精度に関係する固定パラメータであり、大きくするほど補間位置精度が向上する反面、補間係数参照テーブルは大きいものになり、小さくするほど補間係数参照テーブルは小さくできる反面、補間位置精度が犠牲になる。
【００６９】
縮小率Ｒで画像を縮小する場合において、縮小率ＲをＲ＝（Ｍ／Ｎ）×（１／Ｌ）として、拡大係数Ｍ／Ｎ、縮小係数１／Ｌを得る。このとき、Ｍ／Ｎは２未満となるように、１／Ｌを決定する。つまり、広範囲の縮小率が要求される縮小処理に対して、１倍以上２倍未満で細かい拡大係数設定が可能な拡大処理と、１／Ｌ倍ながら高次のフィルタ処理が可能な縮小処理に分ける。なお、Ｍによって、縮小率Ｒと拡大係数Ｍ／Ｎ、縮小係数１／Ｌの等式を満たすＮ、Ｌが存在しない場合には、画素毎に四捨五入して簡易的にＮを決定するなどして、拡大補間用の補間係数参照テーブルのテーブルサイズの増加を抑えることが可能である。なお、拡大係数Ｍ／Ｎは、後述する画像の水平方向、垂直方向についてそれぞれ個別に設定可能である。
【００７０】
＜Ａ−２−５．拡大補間方法＞
次に、図７、図８を参照して、拡大補間方法について説明する。
【００７１】
図７は、拡大補間に水平方向２画素×垂直方向２画素の元画素を必要とする場合の一例であり、具体的には線形補間による拡大補間方法を説明する図である。点Ｑを補間画素とすると、線形補間に必要とされる元画素は、補間画素Ｑを取り囲む水平／垂直方向の両方に隣接する点Ｐ（ｉ，ｊ），Ｐ（ｉ＋１，ｊ），Ｐ（ｉ，ｊ＋１），Ｐ（ｉ＋１，ｊ＋１）である（ｉ，ｊは整数）。
【００７２】
ここで、補間画素Ｑは、元画素間をＮ分割（Ｎは０より大きい整数）した座標（ｘ，ｙ）（ｘ、ｙは、０≦ｘ＜Ｎ、０≦ｙ＜Ｎ）に位置するものとする（以下、座標（ｘ，ｙ）を補間位置（ｘ，ｙ）と記す）。つまり、補間画素Ｑは、第１の元画素群Ｐ（ｉ，ｊ），Ｐ（ｉ＋１，ｊ），Ｐ（ｉ，ｊ＋１），Ｐ（ｉ＋１，ｊ＋１）で構成される四角形を、水平方向にｘ：（Ｎ−ｘ）、垂直方向にｙ：（Ｎ−ｙ）に内分した点であり、補間係数は、水平方向にｘ：（Ｎ−ｘ）、垂直方向にｙ：（Ｎ−ｙ）となる。なお、説明の都合上、点Ｐ（ｉ，ｊ），Ｐ（ｉ＋１，ｊ），Ｐ（ｉ，ｊ＋１），Ｐ（ｉ＋１，ｊ＋１）をそれぞれ点Ａ０，Ｂ０，Ｃ０，Ｄ０とも記す。
【００７３】
補間位置（ｘ，ｙ）に位置する補間画素Ｑの第１の補間画素値成分ｑ０は、補間画素Ｑを取り囲む水平／垂直方向の両方に隣接するＡ０，Ｂ０，Ｃ０，Ｄ０それぞれの画素値ａ０，ｂ０，ｃ０，ｄ０を用いて、式（１）から求められる。
【００７４】
【数１】
2011009814.tif 000003
【００７５】
図８は、拡大補間に水平方向４画素×垂直方向４画素の元画素を必要とする場合の一例であり、バイキュービックやＬａｎｃｚｏｓ−２補間による拡大補間方法を説明する図である。点Ｑを補間画素とすると、例えば、Ｌａｎｃｚｏｓ−２補間に必要とされる元画素は、補間画素Ｑを取り囲む水平／垂直方向の両方に隣接する点Ｐ（ｉ，ｊ），Ｐ（ｉ＋１，ｊ），Ｐ（ｉ，ｊ＋１），Ｐ（ｉ＋１，ｊ＋１）と、さらにそれを取り囲む点Ｐ（ｉ−１，ｊ−１），Ｐ（ｉ，ｊ−１），Ｐ（ｉ＋１，ｊ−１），Ｐ（ｉ＋２，ｊ−１），Ｐ（ｉ−１，ｊ），Ｐ（ｉ＋２，ｊ），Ｐ（ｉ−１，ｊ＋１），Ｐ（ｉ＋２，ｊ＋１），Ｐ（ｉ−１，ｊ＋２），Ｐ（ｉ，ｊ＋２），Ｐ（ｉ＋１，ｊ＋２），Ｐ（ｉ＋２，ｊ＋２）である（ｉ，ｊは整数）。
【００７６】
ここで、補間画素Ｑは、元画素間をＮ分割（Ｎは０より大きい整数）した座標（ｘ，ｙ）（ｘ、ｙは、０≦ｘ＜Ｎ、０≦ｙ＜Ｎ）に位置するものとする（以下、座標（ｘ，ｙ）を補間位置（ｘ，ｙ）と記す）。つまり、補間画素Ｑは、第１の元画素群Ｐ（ｉ，ｊ），Ｐ（ｉ＋１，ｊ），Ｐ（ｉ，ｊ＋１），Ｐ（ｉ＋１，ｊ＋１）で構成される四角形を、水平方向にｘ：（Ｎ−ｘ）、垂直方向にｙ：（Ｎ−ｙ）に内分した点である。
【００７７】
補間係数は、補間画素と周辺の元画素との距離をｔとして、式（２）のような重み付け係数ｋとするバイキュービックや、式（３）のような重み付け係数ｋとするＬａｎｃｚｏｓ−２補間などを用いてもよい。
【００７８】
【数２】
2011009814.tif 000004
【００７９】
【数３】
2011009814.tif 000005
【００８０】
例えば、元画素Ｐ（ｉ，ｊ−１）の場合、補間画素Ｑまでの距離は、水平方向にｘ／Ｎ、垂直方向に（Ｎ＋ｙ）／Ｎであり、これら距離を式（２）、あるいは、（３）に代入したものが、元画素Ｐ（ｉ，ｊ−１）に対する重み付け係数ｋ、すなわち、水平方向／垂直方向拡大補間係数となる。
【００８１】
なお、上記補間方法の場合、補間位置（ｉ，ｊ）が元画素間をＮ等分した点とすると、ｔが２以上でｋは０となるため、（２×Ｎ−１）個の距離ｔに対する補間係数をもつ補間係数参照テーブルがあればよい。
【００８２】
図９、図１０は、式（２）、式（３）について、元画素間を１６等分（Ｎ＝１６）し、横軸を元画素間／１６を基本単位とする距離とし、縦軸に重み付け係数ｋを振幅２５６に正規化したグラフである。
【００８３】
＜Ａ−２−６．縮小補間方法＞
次に、水平方向縮小補間方法、垂直方向縮小補間方法について説明する。ここでは、式（２）、式（３）で示されるバイキュービック、Ｌａｎｃｚｏｓ−２補間を適応することを考える。拡大補間時には、拡大補間後の補間画素（拡大補間画素）と拡大補間に用いる周辺の元画素（拡大補間前画素）の距離が元画素（拡大補間前画素）間隔で２画素以上については、重み付け係数ｋは零となるため、２画素以内のものについて重み付け係数ｋ（すなわち水平方向／垂直方向拡大補間係数）を算出すれば良く、水平方向４画素×垂直方向４画素の合計１６個の元画素（拡大補間前画素）があれば、拡大補間画素データを算出することができる。
【００８４】
一方、縮小補間時には、縮小補間後の補間画素（縮小補間画素）と縮小補間に用いる周辺の元画素（縮小補間前画素）の距離が縮小補間後の補間画素（縮小補間画素）間隔で２画素以内にある縮小補間前画素について重み付け係数ｋを算出する必要があり、縮小補間画素と縮小補間処理に使用される元画素（縮小補間前画素）との位置関係が常に同じでなければ、縮小補間に必要な元画素（縮小補間前画素）の個数、補間係数が変動する。
【００８５】
図１１、図１２に、処理の一例として、縮小率２／３のときの場合を示す。図１１は元画素から直接、縮小補間画素を作成する場合の図である。縮小補間にバイキュービックや、Ｌａｎｃｚｏｓ−２補間を採用した場合、縮小補間画素Ｃ０の画素値を算出するのに、元画素Ａ２、Ａ３、Ａ４、Ａ５、Ａ６が、縮小補間画素Ｃ１の画素値を算出するのに、元画素Ａ３、Ａ４、Ａ５、Ａ６、Ａ７、Ａ８が必要となる。このとき縮小補間画素Ｃ０と縮小補間画素Ｃ１では、縮小補間画素と各元画素との位置関係が同じではないため、式（２）、式（３）からも明らかなように、重み付け係数ｋの組は縮小補間画素の位置によって異なる。そのため、縮小率に自由度を持たせれば持たせるほど、縮小補間画素と元画素までの細かい距離の差に対応できるような、重み付け係数ｋ（水平方向縮小補間係数、垂直方向補間係数）を格納する大きなサイズの補間係数参照テーブルが必要となる。
【００８６】
一方、図１２は、元画素を一旦、１倍以上２倍未満に拡大補間を行い、拡大補間画素を作成した後に１／Ｌの縮小補間により縮小補間画素を作成する場合の図である。拡大補間にバイキュービックや、Ｌａｎｃｚｏｓ−２補間を採用した場合、拡大補間画素Ｂ０を算出するのに、元画素Ａ０、Ａ１、Ａ２、Ａ３が、拡大補間画素Ｂ６を算出するのに、元画素Ａ５、Ａ６、Ａ７、Ａ８が、拡大補間画素Ｂ２を算出するのに、元画素Ａ２、Ａ３、Ａ４、Ａ５が、拡大補間画素Ｂ８を算出するのに、元画素Ａ６、Ａ７、Ａ８、Ａ９が必要となる。同様に、縮小補間にバイキュービックや、Ｌａｎｃｚｏｓ−２補間を採用した場合、２画素以上離れた場合の重み付け係数ｋは零になるため、縮小補間画素Ｃ０を算出するのに、拡大補間画素Ｂ０、Ｂ１、Ｂ２、Ｂ３、Ｂ４、Ｂ５、Ｂ６（元画素Ａ０、Ａ１、Ａ２、Ａ３、Ａ４、Ａ５、Ａ６、Ａ７、Ａ８）が、縮小補間画素Ｃ１を算出するのに、拡大補間画素Ｂ２、Ｂ３、Ｂ４、Ｂ５、Ｂ６、Ｂ７、Ｂ８（元画素Ａ２、Ａ３、Ａ４、Ａ５、Ａ６、Ａ７、Ａ８、Ａ９）が必要となる。
【００８７】
このとき縮小補間画素Ｃ０と縮小補間画素Ｃ１では、縮小補間画素と縮小補間前の画素である拡大補間画素との位置関係が同じであるため、縮小係数１／Ｌに対して重み付け係数ｋの組は縮小補間画素の位置に関わらず１種類となる。すなわち拡大処理部３から出力される一組の拡大補間画素に基づいて一の縮小補間画素を生成し、各縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じとなる。そのため、重み付け係数ｋ（水平方向縮小補間係数、垂直方向縮小補間係数）を格納する補間係数参照テーブルは小さいものでよい。
【００８８】
＜Ａ−２−７．水平方向、垂直方向の縮小補間処理＞
次に、水平方向縮小補間処理部４１による水平方向縮小補間処理と、垂直方向縮小補間処理部４４の垂直方向縮小補間処理の違いについて説明する。ここでも、縮小補間として、バイキュービックや、Ｌａｎｃｚｏｓ−２補間を採用した場合について説明する。なお、必ずしもこれに限るものではなく、ある一定以上距離の離れた画素について、重み付け係数ｋが０となるような縮小補間であれば、同様である。
【００８９】
水平方向縮小補間処理部４１による水平方向縮小補間処理では、入力端子４７から入力される拡大補間画素データに対して、水平方向縮小補間係数処理算出部４２から出力される水平方向縮小補間係数をかけ、水平方向縮小補間画素からの距離がある一定の範囲内の画素について累積加算し、上記一定範囲内の水平方向縮小補間係数の総和に応じて適当にビットシフトを行い、水平方向縮小補間画素データを算出する。
【００９０】
一方、垂直方向縮小補間処理部４４による垂直方向縮小補間処理では、水平方向縮小補間メモリ４３から出力される水平方向縮小補間画素データに対して、垂直方向縮小補間係数算出部４５から出力される垂直方向縮小補間係数をかけ、一時的に垂直方向縮小補間メモリ４６に格納し、次のラインで、あらたに水平方向縮小補間メモリ４３から出力される水平方向縮小補間画素データに対して、垂直方向縮小補間係数算出部４５から出力される垂直方向縮小補間係数をかけ、垂直方向縮小補間メモリ４６に一時的に格納してあった前ラインまでの加算結果を読み出して加算し、垂直方向縮小補間メモリ４６に書き戻す。これを垂直方向縮小補間画素からの距離がある一定の範囲内の画素（ライン）の間、繰り返しながら累積加算していく。垂直方向縮小補間画素から一定の範囲内の加算が完了した後、上記一定範囲内の垂直方向縮小補間係数の総和に応じた適当なビットシフトを行い、最終的な縮小補間画素データを算出する。
【００９１】
図１３を用いて、垂直方向縮小補間処理部４４、垂直方向縮小補間メモリ４６の内部動作について説明する。図５、図６にも示すように、垂直方向縮小補間処理４４には、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂが、垂直方向縮小補間メモリ４６には、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂがあり、Ｎ個の垂直方向縮小補間が同時に処理されていくことになる。
【００９２】
図１３は、縮小係数が１／２の場合の動作を概念的に示したものである。式（２）、式（３）で示されるバイキュービック、Ｌａｎｃｚｏｓ−２補間では、縮小補間画素間で距離２以内の画素が縮小補間処理に必要となるため、図１３の場合のように縮小係数が１／２の場合では、縮小補間処理に必要な画素数は７個である。それぞれの補間係数をｋ０、ｋ１、ｋ２、ｋ３、ｋ４、ｋ５、ｋ６とする。また、ある画素（ライン）の縮小補間処理を行っている間に、１／４位相がずれた状態で２つ目の縮小補間処理が、２／４位相がずれた状態で３つ目の縮小補間処理が、３／４位相がずれた状態で４つ目の縮小補間処理が同時処理する必要がある。例えば、縮小補間処理Ｌ′０４には、Ｌ０５、Ｌ０６、Ｌ０７、Ｌ０８、Ｌ０９、Ｌ１０、Ｌ１１が、縮小補間処理Ｌ′０５には、Ｌ０７、Ｌ０８、Ｌ０９、Ｌ１０、Ｌ１１、Ｌ１２、Ｌ１３が、縮小補間処理Ｌ′０６には、Ｌ０９、Ｌ１０、Ｌ１１、Ｌ１２、Ｌ１３、Ｌ１４、Ｌ１５が、縮小補間処理Ｌ′０７には、Ｌ１１、Ｌ１２、Ｌ１３、Ｌ１４、Ｌ１５、Ｌ１６、Ｌ１７が必要である。
【００９３】
例えば、水平方向縮小補間メモリ４３からＬ１１の水平方向縮小補間画素データが入力されるとき、垂直方向縮小補間処理部４４（第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ）では、水平方向縮小補間メモリ４３から入力される水平方向縮小補間画素データに対して、縮小補間処理Ｌ′０４として補間係数ｋ６が、縮小補間処理Ｌ′０５として補間係数ｋ４が、縮小補間処理Ｌ′０６として補間係数ｋ２が、縮小補間処理Ｌ′０７として補間係数ｋ０がかけられ、垂直方向縮小補間メモリ４６（第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂ）から出力されるそれぞれの前ラインまでの垂直方向縮小補間処理結果に加算される。
【００９４】
縮小補間処理Ｌ′０４では、水平方向縮小補間メモリ４３から入力されるＬ１１の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力する。同様に、縮小補間処理Ｌ′０５では、水平方向縮小補間メモリ４３から入力されるＬ１３の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力し、縮小補間処理Ｌ′０６では、水平方向縮小補間メモリ４３から入力されるＬ１５の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力し、縮小補間処理Ｌ′０７では、水平方向縮小補間メモリ４３から入力されるＬ１７の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力する。
【００９５】
縮小補間処理Ｌ′０８では、縮小補間処理Ｌ′０４と同じ、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂを使用することができる。
【００９６】
同様に、図１４を用いて、垂直方向縮小補間処理部４４、垂直方向縮小補間メモリ４６の内部動作について説明する。図５、図６にも示すように、垂直方向縮小補間処理４４には、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂが、垂直方向縮小補間メモリ４６には、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂがあり、Ｎ個の垂直方向縮小補間が同時に処理されていくことになる。
【００９７】
図１４は、縮小係数が１／３の場合の動作を概念的に示したものである。式（２）、式（３）で示されるバイキュービック、Ｌａｎｃｚｏｓ−２補間では、縮小補間画素間で距離２以内の画素が縮小補間処理に必要となるため、図１４の場合のように縮小係数が１／３の場合では、縮小補間処理に必要な画素数は１１個である。それぞれの補間係数をｋ０、ｋ１、ｋ２、ｋ３、ｋ４、ｋ５、ｋ６、ｋ７、ｋ８、ｋ９、ｋ１０とする。また、ある画素（ライン）の縮小補間処理を行っている間に、１／４位相がずれた状態で２つ目の縮小補間処理が、２／４位相がずれた状態で３つ目の縮小補間処理が、３／４位相がずれた状態で４つ目の縮小補間処理が同時処理する必要がある。例えば、縮小補間処理Ｌ′０４には、Ｌ０７、Ｌ０８、Ｌ０９、Ｌ１０、Ｌ１１、Ｌ１２、Ｌ１３、Ｌ１４、Ｌ１５、Ｌ１６、Ｌ１７が、縮小補間処理Ｌ′０５には、Ｌ１０、Ｌ１１、Ｌ１２、Ｌ１３、Ｌ１４、Ｌ１５、Ｌ１６、Ｌ１７、Ｌ１８、Ｌ１９、Ｌ２０が、縮小補間処理Ｌ′０６には、Ｌ１３、Ｌ１４、Ｌ１５、Ｌ１６、Ｌ１７、Ｌ１８、Ｌ１９、Ｌ２０、Ｌ２１、Ｌ２２、Ｌ２３が、縮小補間処理Ｌ′０７には、Ｌ１６、Ｌ１７、Ｌ１８、Ｌ１９、Ｌ２０、Ｌ２１、Ｌ２２、Ｌ２３、Ｌ２４、Ｌ２５、Ｌ２６が必要である。
【００９８】
例えば、水平方向縮小補間メモリ４３からＬ１６の水平方向縮小補間画素データが入力されるとき、垂直方向縮小補間処理部４４（第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ）では、水平方向縮小補間メモリ４３から入力される水平方向縮小補間画素データに対して、縮小補間処理Ｌ′０４として補間係数ｋ９が、縮小補間処理Ｌ′０５として補間係数ｋ６が、縮小補間処理Ｌ′０６として補間係数ｋ３が、縮小補間処理Ｌ′０７として補間係数ｋ０がかけられ、垂直方向縮小補間メモリ４６（第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂ）から出力されるそれぞれの前ラインまでの垂直方向縮小補間処理結果に加算される。
【００９９】
縮小補間処理Ｌ′０４では、水平方向縮小補間メモリ４３から入力されるＬ１７の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力する。同様に、縮小補間処理Ｌ′０５では、水平方向縮小補間メモリ４３から入力されるＬ２０の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力し、縮小補間処理Ｌ′０６では、水平方向縮小補間メモリ４３から入力されるＬ２３の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力し、縮小補間処理Ｌ′０７では、水平方向縮小補間メモリ４３から入力されるＬ２６の水平方向縮小補間画素データに対して、垂直方向縮小補間処理を行った後、出力端子４８から最終的な縮小補間画素データを出力する。
【０１００】
縮小補間処理Ｌ′０８では、縮小補間処理Ｌ′０４と同じ、第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ、第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂを使用することができる。
【０１０１】
以上のように、図２に示すような水平方向の画素走査と垂直方向のライン走査とを行いながら、水平方向縮小補間メモリ４３から入力される水平方向縮小補間画素データに対して、垂直方向縮小補間処理部４４内の第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂと、垂直方向縮小補間メモリ４６内の第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂとで位相をずらしながら、同時動作させることにより、リアルタイムに垂直方向縮小補間が可能である。結果、拡大補間処理、水平方向縮小補間処理、垂直方向縮小補間処理により、リアルタイムな縮小画像の生成が可能である。
【０１０２】
また、垂直方向縮小補間処理部４４（第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ）では、４個（２×２個）の垂直方向縮小補間部が、垂直方向縮小補間メモリ４６（第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂ）では、４個（２×２個）の垂直方向縮小補間メモリがあればよい。また、縮小係数が１／Ｌ（Ｌは、２以上の整数）のとき、（２×２×Ｌ−１）個の画素（ライン）を用いて縮小補間処理を行えばよい。
【０１０３】
同様に、補間係数が、補間画素と周辺の元画素との距離をｔとして、式（４）のような重み付け係数ｋとするＬａｎｃｚｏｓ−３補間などを用いてもよい。
【０１０４】
【数４】
2011009814.tif 000006
【０１０５】
このとき、垂直方向縮小補間処理部４４（第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ）では、６個（２×３個）の垂直方向縮小補間部が、垂直方向縮小補間メモリ４６（第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂ）では、６個（２×３個）の垂直方向縮小補間メモリがあればよい。また、縮小係数が１／Ｌ（Ｌは、２以上の整数）のとき、（２×３×Ｌ−１）個の画素（ライン）を用いて縮小補間処理を行えばよい。
【０１０６】
補間係数が、補間処理後の画素と周辺の元画素との距離（補間処理後の画素間隔を１とする）をｔとして、｜ｔ｜≧Ａ（Ａは２以上の正の整数）で０となるものを選択することにより、垂直方向縮小補間処理部４４（第１の垂直方向縮小補間部５２ａ〜第Ｎの垂直方向縮小補間部５２ｂ）は（２×Ａ）個の垂直方向縮小補間部を、垂直方向縮小補間メモリ４６（第１の垂直方向縮小補間メモリ６２ａ〜第Ｎの垂直方向縮小補間メモリ６２ｂ）は（２×Ａ）個の垂直方向縮小補間メモリを持てば良く、また、縮小係数が１／Ｌ（Ｌは、２以上の整数）のとき、（２×Ａ×Ｌ−１）個の画素（ライン）を用いて縮小補間処理を行えばよい。また、縮小係数１／Ｌ毎に、（２×Ａ×Ｌ−１）個の係数をもつ補間係数参照テーブルがあればよい。なお、Ａ、Ｌは水平、垂直方向についてそれぞれ個別に設定可能である。なお、前述した縮小補間の例ではバイキュービックやＬａｎｃｚｏｓ−２補間をしていたため、元画素との距離ｔが２以上の場合には重み付け係数ｋは零となっていた（数２、数３は、｜ｔ｜≧２で０）。また、Ｌａｎｃｚｏｓ−３補間では、元画素との距離ｔが３以上の場合には重み付け係数ｋは零となる（数４は、｜ｔ｜≧３で０）。
【０１０７】
＜Ａ−３．効果＞
この発明にかかる実施の形態１によれば、縮小率Ｒで画像を縮小する縮小画像生成装置であって、縮小率Ｒは、Ｍ／Ｎ（ＭおよびＮは、Ｍ≧Ｎを満たす整数）と１／Ｌ（Ｌは２以上の整数）との積で表され、入力された画像を一旦Ｍ／Ｎを拡大係数として拡大する拡大処理部３と、拡大処理部３で拡大された画像を１／Ｌを縮小係数として縮小する縮小処理部４とを備えることで、画像の拡大処理機能を併用することで縮小率の微調整を拡大処理で吸収し、縮小係数設定を整数分の１に限定することで縮小係数の選択肢を制限し、補間フィルタの補間係数を縮小係数にあわせて用意した複数個の小さな参照テーブルとして構成することができ、高次な補間を実現しつつ折り返しノイズの発生を抑制した良好な縮小画像をリアルタイムに生成することが可能となる。
【０１０８】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、拡大係数Ｍ／Ｎおよび縮小係数１／Ｌは、入力された画像の水平方向および垂直方向についてそれぞれ個別に設定可能であることで、縮小率に合わせた自由度の高い拡大係数、縮小係数の設定が可能となる。
【０１０９】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、拡大処理部３は、縮小処理部４における縮小の際、画像の縮小後の画素間で、縮小に必要な縮小前の画素数と、縮小の縮小補間処理に用いる補間係数とが等しくなる拡大係数で拡大することで、縮小補間画素と縮小補間前の画素である拡大補間画素との位置関係が同じであるため、縮小係数１／Ｌに対して重み付け係数ｋの組は縮小補間画素の位置に関わらず１種類となり、重み付け係数ｋを格納する補間係数参照テーブルを小さいものにすることができる。
【０１１０】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、係数ＭおよびＮは、２×Ｎ＞Ｍ≧Ｎ＞０を満たす整数であることで、所望の縮小率を実現するための微調整を拡大係数で吸収することができる。
【０１１１】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、縮小処理部４は、縮小係数１／Ｌ毎に縮小の縮小補間処理に用いる２×Ａ×Ｌ−１（Ａは２以上の整数）個の補間係数参照テーブルを有することで、縮小補間処理に対応した補間係数参照テーブルを用いることができ、またその補間係数参照テーブルを小さいものに抑えることができる。
【０１１２】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、補間係数参照テーブルは、画像の水平方向、垂直方向についてそれぞれ個別にＡを設定可能であることで、縮小率に合わせた自由度の高い補間係数の設定が可能となる。
【０１１３】
また、この発明にかかる実施の形態１によれば、縮小画像生成装置において、縮小処理部４は、縮小後の画素と、その周辺に位置する縮小前の画素の、縮小後の画素間隔を１とする距離ｔがＡに対し｜ｔ｜≧Ａを満たす場合、縮小補間処理に用いる補間係数を０とすることで、縮小に用いる縮小前の画素数を所望の数に限定できる。
【０１１４】
また、この発明にかかる実施の形態１によれば、画像を縮小する縮小画像生成装置であって、入力された画像を一旦拡大する拡大処理部３と、拡大処理部３で拡大された画像を縮小する縮小処理部４とを備え、拡大処理部３から出力される拡大補間画素と縮小処理部４から出力される縮小補間画素について、縮小処理部４は、一組の拡大補間画素に基づいて一の縮小補間画素を生成し、各縮小補間画素と、対応する各組の拡大補間画素との各位置関係は同じであることで、画像の拡大処理機能を併用することで縮小率の微調整を拡大処理で吸収し、縮小係数の選択肢を制限し、補間フィルタの補間係数を縮小係数にあわせて用意した複数個の小さな参照テーブルとして構成することができ、高次な補間を実現しつつ折り返しノイズの発生を抑制した良好な縮小画像をリアルタイムに生成することが可能となる。
【符号の説明】
【０１１５】
１  縮小画像生成装置、２  全体制御部、３  拡大処理部、４  縮小処理部、５，７ａ，３４，３６，３７，４７，４９，５０，５３，５６，５９，６３，６４  入力端子、６，７ｂ，３５，４８，５４，５５，５７，５８，６５  出力端子、３１  拡大補間処理部、３２  拡大補間メモリ、３３  拡大補間係数算出部、４１  水平方向縮小補間処理部、４２  水平方向縮小補間係数算出部、４３  水平方向縮小補間メモリ、４４  垂直方向縮小補間処理部、４５  垂直方向縮小補間係数算出部、４６  垂直方向縮小補間メモリ、５１  垂直方向縮小補間制御部、５２ａ  第１の垂直方向縮小補間部、５２ｂ  第Ｎの垂直方向縮小補間処理部、６１  垂直方向縮小補間メモリ制御部、６２ａ  第１の垂直方向縮小補間メモリ、６２ｂ  第Ｎの垂直方向縮小補間メモリ。
【図１】
2011009814.tif 000007
【図２】
2011009814.tif 000008
【図３】
2011009814.tif 000009
【図４】
2011009814.tif 000010
【図５】
2011009814.tif 000011
【図６】
2011009814.tif 000012
【図７】
2011009814.tif 000013
【図８】
2011009814.tif 000014
【図９】
2011009814.tif 000015
【図１０】
2011009814.tif 000016
【図１１】
2011009814.tif 000017
【図１２】
2011009814.tif 000018
【図１３】
2011009814.tif 000019
【図１４】
2011009814.tif 000020