(57)【特許請求の範囲】
【請求項１】
第１記憶手段および第２記憶手段と、
入力画像を分割して得られるブロック画像を順次に取得し、当該ブロック画像を順次に注目ブロック画像として前記第１記憶手段に記憶させ、各注目ブロック画像について、当該注目ブロック画像を前記第１記憶手段に記憶させる際には、当該注目ブロック画像に含まれる領域のうち、前記入力画像において未入力のブロック画像に隣接する領域の画像データを、境界領域の画像データとして前記第２記憶手段に記憶させる記憶制御手段と、
前記第１記憶手段に記憶されている一の注目ブロック画像の画像データと、前記第２記憶手段に記憶されている、当該一の注目ブロック画像に隣接するブロック画像における、当該一の注目ブロック画像との境界領域の画像データとを用いて補間演算を行うことによって、当該一の注目ブロック画像の大きさを変更するリサイズ処理を実現するリサイズ手段と、
を備える画像処理装置。
【請求項２】
前記リサイズ手段を複数備え、
複数の前記リサイズ手段は、互いに異なる補間画素の間隔で前記補間演算を並列に行う請求項１に記載の画像処理装置。
【請求項３】
前記リサイズ処理後の画像を特定領域ごとに順次に出力する出力手段と、
前記特定領域の画像において矩形領域に含まれる各画素の画素値の平均を１画素分の画素値とする縮小処理によって、縮小画像を生成する第１平均縮小手段と、
をさらに備える請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記矩形領域に含まれる画素の個数は、２のべき乗個である請求項３に記載の画像処理装置。
【請求項５】
前記第１平均縮小手段の後段に接続され、前記縮小画像において矩形領域に含まれる各画素の画素値の平均を１画素分の画素値とする縮小処理によって、前記縮小画像を縮小させる第２平均縮小手段をさらに備える請求項３または請求項４に記載の画像処理装置。
【請求項６】
入力画像を分割して得られるブロック画像を順次に取得する工程と、
取得される前記ブロック画像を順次に注目ブロック画像として第１記憶手段に記憶させ、各注目ブロック画像について、当該注目ブロック画像を前記第１記憶手段に記憶させる際には、当該注目ブロック画像に含まれる領域のうち、前記入力画像において未入力のブロック画像に隣接する領域の画像データを、境界領域の画像データとして第２記憶手段に記憶させる工程と、
前記第１記憶手段に記憶されている一の注目ブロック画像の画像データと、前記第２記憶手段に記憶されている、当該一の注目ブロック画像に隣接するブロック画像における、当該一の注目ブロック画像との境界領域の画像データとを用いて補間演算を行うことによって、当該一の注目ブロック画像の大きさを変更するリサイズ処理を実現する工程と、
を備える画像処理装置の動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理技術に関する。
【背景技術】
【０００２】
一般に、撮像装置等によって取得された画像に対して、その大きさを拡大または縮小させる画像処理を施すことにより、画像の大きさを自由に変更（リサイズ）する技術が存在する（例えば、特許文献１）。
【０００３】
このような画像の大きさを変更する処理（「リサイズ処理」とも称する）を、ブロック単位の画像を出力する画像処理回路の後段において行う場合は、ブロック単位の画像（ブロック画像）を一旦別のメモリに格納して、画像全体を構成した上で、メモリに格納された全体画像に対して、リサイズ処理が施されていた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２８３０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像全体を一旦別のメモリに格納してリサイズ処理を行うと、メモリへの画像データの格納および当該メモリからの画像データの読み出しによって、データの転送量が増大するため、処理速度の低下および消費電力の増加等の不具合が発生することになる。
【０００６】
そこで、本発明は、データの転送量の増大によって生じる不具合を軽減させることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る画像処理装置は、第１記憶手段および第２記憶手段と、入力画像を分割して得られるブロック画像を順次に取得し、当該ブロック画像を順次に注目ブロック画像として前記第１記憶手段に記憶させ、各注目ブロック画像について、当該注目ブロック画像を前記第１記憶手段に記憶させる際には、当該注目ブロック画像に含まれる領域のうち、前記入力画像において未入力のブロック画像に隣接する領域の画像データを、境界領域の画像データとして前記第２記憶手段に記憶させる記憶制御手段と、前記第１記憶手段に記憶されている一の注目ブロック画像の画像データと、前記第２記憶手段に記憶されている、当該一の注目ブロック画像に隣接するブロック画像における、当該一の注目ブロック画像との境界領域の画像データとを用いて補間演算を行うことによって、当該一の注目ブロック画像の大きさを変更するリサイズ処理を実現するリサイズ手段とを備える。
【０００８】
また、本発明に係る画像処理装置の一態様では、前記リサイズ手段を複数備え、複数の前記リサイズ手段は、互いに異なる補間画素の間隔で前記補間演算を並列に行う。
【０００９】
また、本発明に係る画像処理装置の一態様では、前記リサイズ処理後の画像を特定領域ごとに順次に出力する出力手段と、前記特定領域の画像において矩形領域に含まれる各画素の画素値の平均を１画素分の画素値とする縮小処理によって、縮小画像を生成する第１平均縮小手段とをさらに備える。
【００１０】
また、本発明に係る画像処理装置の一態様では、前記矩形領域に含まれる画素の個数は、２のべき乗個である。
【００１１】
また、本発明に係る画像処理装置の一態様では、前記第１平均縮小手段の後段に接続され、前記縮小画像において矩形領域に含まれる各画素の画素値の平均を１画素分の画素値とする縮小処理によって、前記縮小画像を縮小させる第２平均縮小手段をさらに備える。
【００１２】
また、本発明に係る画像処理装置の動作方法は、入力画像を分割して得られるブロック画像を順次に取得する工程と、取得される前記ブロック画像を順次に注目ブロック画像として第１記憶手段に記憶させ、各注目ブロック画像について、当該注目ブロック画像を前記第１記憶手段に記憶させる際には、当該注目ブロック画像に含まれる領域のうち、前記入力画像において未入力のブロック画像に隣接する領域の画像データを、境界領域の画像データとして第２記憶手段に記憶させる工程と、前記第１記憶手段に記憶されている一の注目ブロック画像の画像データと、前記第２記憶手段に記憶されている、当該一の注目ブロック画像に隣接するブロック画像における、当該一の注目ブロック画像との境界領域の画像データとを用いて補間演算を行うことによって、当該一の注目ブロック画像の大きさを変更するリサイズ処理を実現する工程とを備える。
【発明の効果】
【００１３】
本発明によれば、画像データの転送によって生じる不具合を軽減させることが可能になる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１実施形態に係る画像処理装置の構成の一部を示す概略図である。
【図２】リサイズ部に入力される入力画像と、リサイズ部によってリサイズ処理を受けたリサイズ画像とを示す図である。
【図３】リサイズ部へのブロック画像の入力順序を示す図である。
【図４】リサイズ部の詳細構成を示す図である。
【図５】リサイズ部に入力される入力ブロック画像を示す図である。
【図６】リサイズ部に入力される入力画像内のブロック画像を示す図である。
【図７】リサイズ部の動作に関するタイムチャートである。
【図８】リサイズ部に入力される入力画像内のブロック画像を示す図である。
【図９】リサイズ部に入力される入力画像内のブロック画像を示す図である。
【図１０】ラインレジスタへの書込動作を説明するための図である。
【図１１】リサイズ部の動作に関するタイムチャートである。
【図１２】リサイズ処理の対象となる領域を示す図である。
【図１３】リサイズ部の動作に関するタイムチャートである。
【図１４】出力バッファへ記憶されるブロック画像を模式的に示す図である。
【図１５】補間演算の概要を示す図である。
【図１６】補間演算のフローチャートである。
【図１７】入力画像上の水平方向における、各画素と、各リサイズ画素との位置関係を示す図である。
【図１８】入力画像上の垂直方向における、各画素と、各リサイズ画素との位置関係を示す図である。
【図１９】リサイズ部へのブロック画像の入力順序を示す図である。
【図２０】リサイズ部の詳細構成を示す図である。
【図２１】リサイズ部に入力される入力画像内のブロック画像を示す図である。
【図２２】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２３】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２４】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２５】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２６】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２７】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２８】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図２９】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図３０】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図３１】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図３２】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図３３】第２実施形態に係るリサイズ部の動作を説明するための図である。
【図３４】第３実施形態に係るリサイズ部の詳細構成を示す図である。
【図３５】平均リサイザに入力される画像と平均リサイザから出力される画像とを示す図である。
【図３６】平均リサイザの内部構成を示す図である。
【図３７】リサイズ部の詳細構成を示す図である。
【図３８】変形例に係るリサイズ部の構成を示す図である。
【図３９】平均リサイザの内部構成の変形例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の各実施形態について図面を参照して説明する。
【００１６】
＜１．第１実施形態＞
［１−１．概要］
図１は、本発明の第１実施形態に係る画像処理装置１の構成の一部を示す概略図である。図２は、リサイズ部１０Ａに入力される前の画像（入力画像）と、リサイズ部１０Ａによってリサイズ処理を受けた画像（「出力画像」または「リサイズ画像」とも称する）ＤＧとを示す図である。図３は、リサイズ部１０Ａへのブロック画像の入力順序を示す図である。なお、図３におけるＸ軸およびＹ軸は、入力画像ＩＧの左上の画素を原点としたときの座標軸を表し、本実施形態では、入力画像ＩＧに関して共通の座標系を用いるものとする。
【００１７】
図１に示されるように、画像処理装置１は、入力された画像の大きさを変更して出力するリサイズ部１０Ａを備えている。
【００１８】
リサイズ部１０Ａには、入力画像を複数の領域に分割して得られるブロック画像が、ブロック単位で順次に入力される。具体的には、図２に示されるように、入力画像ＩＧは、例えば、８×８の画素を有する複数のブロックＢＫｊに分割され、分割されたブロック単位で順次にリサイズ部１０Ａに入力される。
【００１９】
ブロック画像の入力は、図３に示されるように、例えば、入力画像ＩＧの左上に存在するブロック画像を始点ブロックＳＢとして＋Ｘ方向に沿って順次に入力し、単位行の入力が終了した場合、＋Ｙ方向へと改行して次の行のブロック画像の入力を行う、いわゆるラスター順で行われる。
【００２０】
リサイズ部１０Ａ（図１）は、入力されるブロック画像ごとにリサイズ処理を施して、リサイズ処理後の画像を、ブロック単位で出力する。なお、リサイズ部１０Ａに入力されるブロック画像（入力ブロック画像）と、リサイズ部１０Ａから出力されるブロック画像（出力ブロック画像）とは、一対一に対応してもよく、或いは、複数の入力ブロック画像から、１の出力ブロック画像が生成される態様であってもよい。
【００２１】
なお、画像処理装置１は、例えば、撮像装置、パーソナルコンピュータ（ＰＣ）、携帯情報端末機等において実現される。
【００２２】
［１−２．リサイズ部１０Ａの構成］
次に、リサイズ部１０Ａの構成について説明する。図４は、リサイズ部１０Ａの詳細構成を示す図である。図５は、リサイズ部１０Ａに入力される入力ブロック画像ＢＧを示す図である。
【００２３】
図１および図４に示されるように、リサイズ部１０Ａは、入力されたブロック画像のデータ処理を行う入力処理部１１（１１Ａ）と、画像データにリサイズ処理を施す演算部（リサイズ手段）１２と、リサイズ後の画像データの出力処理を行う出力処理部１３とを備えている。
【００２４】
入力処理部１１は、記憶制御部１１０、第１入力バッファ１１１、第２入力バッファ１１２、第１カラムレジスタ１１３、第２カラムレジスタ１１４、第３カラムレジスタ１１５、ラインメモリ１１６、およびラインレジスタ１１７を備えている。
【００２５】
第１入力バッファ１１１および第２入力バッファ１１２は、ＳＲＡＭによって構成され、入力ブロック画像を保存可能な容量を有している。本実施形態の入力バッファ１１１，１１２は、例えば、１６×１６の画素を有する画像を保存可能な容量を有しているものとする。
【００２６】
第１カラムレジスタ１１３、第２カラムレジスタ１１４および第３カラムレジスタ１１５は、入力ブロック画像を構成する縦一列分の画像データ（詳細には、縦一列分の各画素の画素データ（画素値））を保存可能な容量を有している。
【００２７】
ラインメモリ１１６は、入力画像を構成する横一行分の画像データ（詳細には、横一行分の各画素の画素データ）を保存可能な容量を有している。
【００２８】
ラインレジスタ１１７は、入力ブロック画像を構成する横一行分の各画素の画素データに加えて、さらに１画素の画素データを保存可能な容量を有している。例えば、入力ブロック画像の横の画素数が８である場合、ラインレジスタ１１７は、９画素分の画素データを保存可能な容量を有していることになる。
【００２９】
記憶制御部１１０は、入力バッファ１１１，１１２、カラムレジスタ１１３，１１４，１１５、およびラインメモリ１１６に接続され、入力されたブロック画像の記憶先を選択的に制御する。
【００３０】
具体的には、記憶制御部１１０は、入力ブロック画像を順次に取得し、当該入力ブロック画像を第１入力バッファ１１１または第２入力バッファ１１２に出力し、記憶させる機能を有している。
【００３１】
また、記憶制御部１１０は、入力ブロック画像ＢＧの右端の縦一列分の画像データ（図５における斜線ハッチング領域ＮＲの画像データ）を第１カラムレジスタ１１３、第２カラムレジスタ１１４または第３カラムレジスタ１１５に出力し、記憶させる。また、記憶制御部１１０は、入力ブロック画像ＢＧの最下部（下端）の横一行分の画像データ（図５における縦線ハッチング領域ＥＲの画像データ）をラインメモリ１１６に出力し、記憶させる。
【００３２】
このように、入力処理部１１では、記憶制御部１１０の制御により、入力ブロック画像ＢＧの画像データを各記憶部に格納させる記憶処理が行われる。なお、以下では、入力ブロック画像における縦一列分の画像データを「単位列データ」または「列データ」とも表現し、入力ブロック画像における横一行分の画像データを「単位行データ」または「行データ」とも表現する。なお、画像データの各記憶部への記憶に際して、記憶部内の未記憶領域が少ない場合、画像データは上書きして記憶されるものとする。
【００３３】
演算部１２は、座標制御部１２１、データ取得部１２２、および補間演算部１２３を備えている。演算部１２は、リサイズ部１０Ａに入力されたブロック画像に基づいて、リサイズ後の画像（リサイズ画像）を構成する画素（「リサイズ画素」または「補間画素」とも称する）の画素データを算出する。
【００３４】
座標制御部１２１は、入力画像の大きさと、リサイズ画像の大きさとに基づいて、入力画像における各リサイズ画素の座標を算出する。そして、座標制御部１２１は、各リサイズ画素の画素データの取得に用いる入力画像上の画素（「参照画素」とも称する）の座標を特定する。座標制御部１２１は、リサイズ画素の座標情報を補間演算部１２３およびデータ転送制御部１３１（後述）に出力するとともに、参照画素の座標情報をリサイズ画素ごとにデータ取得部１２２に出力する。
【００３５】
データ取得部１２２は、座標制御部１２１から入力される参照画素の座標情報に基づいて、補間演算部１２３の演算動作に応じた適切なタイミングで各記憶部１１１〜１１５，１１７から参照画素の画素データを取得して、補間演算部１２３に出力する機能を有している。
【００３６】
補間演算部１２３は、データ取得部１２２から入力される参照画素の画素データを用いた補間演算を行い、リサイズ画素の画素データを生成する機能を有している。なお、補間演算の詳細については、後述する。
【００３７】
このように、演算部１２は、リサイズ画素の画素データを算出するリサイズ処理を行い、算出された画素データを出力処理部１３に出力する。
【００３８】
出力処理部１３は、データ転送制御部１３１、第１出力バッファ１３２、および第２出力バッファ１３３を備えている。
【００３９】
第１出力バッファ１３２および第２出力バッファ１３３は、ＳＲＡＭによって構成され、例えば入力バッファ１１１，１１２と同じ記憶容量を有している。
【００４０】
データ転送制御部１３１は、演算部１２から出力されたリサイズ画素の画素データの転送先を決定し、リサイズ画素の画素データを第１出力バッファ１３２または第２出力バッファ１３３に転送する機能を有している。また、データ転送制御部１３１は、第１出力バッファ１３２および第２出力バッファ１３３に対して出力指示信号を送信し、第１出力バッファ１３２または第２出力バッファ１３３に記憶された出力ブロック画像の出力制御を行う。
【００４１】
［１−３．リサイズ部１０Ａの動作］
次に、リサイズ部１０Ａの動作について説明する。図６、図８、および図９は、リサイズ部１０Ａに入力される入力画像ＩＧ内のブロック画像を示す図である。図７は、リサイズ部１０Ａの動作に関するタイムチャートである。図１０は、ラインレジスタ１１７への書込動作を説明するための図である。
【００４２】
リサイズ部１０Ａでは、入力されたブロック画像の画像データを記憶する記憶処理と、入力されたブロック画像に対するリサイズ処理と、リサイズ処理後の画像を出力する出力処理とが実行される。以下では、リサイズ部１０Ａに、図６に示される入力画像ＩＧ中のブロック画像ＢＧ１が第１期間ＰＴ１（図７）に入力される場合を想定して説明する。
【００４３】
まず、図７に示される第１期間ＰＴ１において、リサイズ部１０Ａにブロック画像（「注目ブロック画像」とも称する）ＢＧ１が入力されると、記憶制御部１１０の制御に基づいてデータの記憶処理が行われる。
【００４４】
具体的には、記憶制御部１１０は、注目ブロック画像ＢＧ１の入力に応じて、当該注目ブロック画像ＢＧ１の画像データを第１入力バッファ１１１に記憶する書込動作１ＷＡを実行させる。
【００４５】
また、記憶制御部１１０は、注目ブロック画像ＢＧ１の入力に応じて、注目ブロック画像ＢＧ１の右端の単位列データ（図６における斜線ハッチング領域ＮＲ１の画像データ）を、第１カラムレジスタ１１３に記憶する書込動作１ＷＢを実行させる。なお、図７において、第１カラムレジスタ１１３への書込動作１ＷＢが不連続で行われるのは、ブロック画像ＢＧ１の入力が左上の画素から画素単位でラスター順に行われるためであり、保存対象となる画素データの入力が所定間隔ごとに行われるからである。
【００４６】
また、記憶制御部１１０は、注目ブロック画像ＢＧ１の入力に応じて、注目ブロック画像ＢＧ１の最下部の単位行データ（図６における縦線ハッチング領域ＥＲ１の画像データ）を、ラインメモリ１１６に記憶する書込動作１ＷＣを実行させる。
【００４７】
このような一連の記憶処理は、ブロック画像が入力される度に実行される。
【００４８】
具体的には、第１期間ＰＴ１の次の第２期間ＰＴ２において、ブロック画像ＢＧ２（図８参照）が入力されると、記憶制御部１１０は、ブロック画像ＢＧ２の画像データを第２入力バッファ１１２に記憶する書込動作２ＷＡを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ２の入力に応じて、ブロック画像ＢＧ２の右端の単位列データを、第２カラムレジスタ１１４に記憶する書込動作２ＷＢを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ２の入力に応じて、ブロック画像ＢＧ２の最下部の単位横データを、ラインメモリ１１６に記憶する書込動作２ＷＣを実行させる。
【００４９】
さらに、第２期間ＰＴ２の次の第３期間ＰＴ３において、ブロック画像ＢＧ３（図８参照）が入力されると、記憶制御部１１０は、ブロック画像ＢＧ３の画像データを第１入力バッファ１１２に記憶する書込動作３ＷＡを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ３の入力に応じて、ブロック画像ＢＧ３の右端の単位列データを、第３カラムレジスタ１１５に記憶する書込動作３ＷＢを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ３の入力に応じて、ブロック画像ＢＧ３の最下部の単位行データを、ラインメモリ１１６に記憶する書込動作３ＷＣを実行させる。
【００５０】
第３期間ＰＴ３の次の第４期間ＰＴ４において、ブロック画像ＢＧ４（図８参照）が入力されると、記憶制御部１１０は、ブロック画像ＢＧ４の画像データを第２入力バッファ１１２に記憶する書込動作４ＷＡを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ４の入力に応じて、ブロック画像ＢＧ４の右端の単位列データを、第１カラムレジスタ１１３に記憶する書込動作４ＷＢを実行させる。また、記憶制御部１１０は、ブロック画像ＢＧ４の入力に応じて、ブロック画像ＢＧ４の最下部の単位行データを、ラインメモリ１１６に記憶する書込動作４ＷＣを実行させる。
【００５１】
このように、記憶処理では、ブロック画像の入力に応じて、当該ブロック画像が第１入力バッファ１１１および第２入力バッファ１１２のいずれか一方に記憶されることになる。また、ブロック画像の入力に応じて、ブロック画像の右端の単位列データが、第１カラムレジスタ１１３、第２カラムレジスタ１１４、および第３カラムレジスタ１１５のいずれか１つに記憶されるとともに、ブロック画像の最下部の単位行データが、ラインメモリ１１６に記憶されることになる。
【００５２】
なお、入力ブロック画像の右端の縦一列分の各画素によって構成される領域、および当該入力ブロック画像の最下部の横一行分の各画素によって構成される領域は、リサイズ部１０Ａに未だ入力されていない未入力のブロック画像に隣接する領域であるとも表現できる。詳細には、図９に示されるように、ブロック画像ＢＧ１が入力されたときに、未入力のブロック画像によって構成される領域ＥＮは、砂地ハッチングによって表される領域となる。このため、入力ブロック画像ＢＧ１において、未入力のブロック画像に隣接する領域は、入力ブロック画像ＢＧ１の右端の縦一列分の各画素によって構成される領域ＮＲ１と、入力ブロック画像ＢＧ１の最下部の横一行分の各画素によって構成される領域ＥＲ１となる。また、入力ブロック画像を記憶する第１入力バッファ１１１および第２入力バッファ１１２を第１記憶手段と総称したとき、未入力のブロック画像に隣接する領域の画像データを記憶する各記憶部は、第２記憶手段とも総称できる。
【００５３】
また、ラインメモリ１１６への書込動作１ＷＣ〜４ＷＣの実行前には、書込動作１ＷＣ〜４ＷＣにおいて上書き対象となる画像データが読み出され、ラインレジスタ１１７に格納される。上書き対象となる画像データ、すなわちラインレジスタ１１７に格納される画像データは、現在入力されている注目ブロック画像の上側に隣接するブロック画像の最下部の単位行データであり、「隣接ラインデータ」とも称される。
【００５４】
隣接ラインデータのラインレジスタ１１７への書込動作１ＷＤ〜４ＷＤ（図７参照）は、ラインレジスタ１１７に既に記憶されている１画素分の画素データを残しつつ実行される。例えば、図１０に示されるように、ラインレジスタ１１７には、＋Ｘ方向に連続したＮ１番目からＮ９番目の９画素分のラインデータが記憶されているとする。このとき、＋Ｘ方向に連続したＮ１０番目からＮ１７番目の８画素分の隣接ラインデータがラインメモリ１１６からラインレジスタ１１７に入力されると、ラインレジスタ１１７は、最後尾のレジスタに記憶されているＮ９番目の画素データを先頭のレジスタへと記憶する。そして、ラインレジスタ１１７は、当該Ｎ９番目の画素データに連続させるように、新たに入力されたＮ１０番目からＮ１７番目の隣接ラインデータを記憶する。このような書込動作１ＷＤ〜４ＷＤが実行されることによって、ラインレジスタ１１７には、注目ブロック画像の上部において隣接する領域（隣接領域）の隣接ラインデータと、当該隣接領域の左隣の画素の画素データとが、＋Ｘ方向に連続した状態で記憶されることになる。なお、ラインレジスタ１１７に記憶される隣接ラインデータと画素データとは、連続したデータであることから「連続ラインデータ」とも称される。
【００５５】
次に、リサイズ処理について説明する。図１１は、リサイズ部１０Ａの動作に関するタイムチャートである。図１２は、リサイズ処理の対象となる領域を示す図である。
【００５６】
第１期間ＰＴ１において、注目ブロック画像ＢＧ１の記憶処理が終了すると、第２期間ＰＴ２では、注目ブロック画像ＢＧ１に対するリサイズ処理が実行される。リサイズ処理の際には、データ取得部１２２によって、リサイズ処理に用いる参照画素の画素データが各記憶部から読み出される。
【００５７】
例えば、注目ブロック画像ＢＧ１に関するリサイズ処理の際には、図１１に示されるように、第２期間ＰＴ２において、第１入力バッファ１１１、第３カラムレジスタ１１５、およびラインレジスタ１１７それぞれから参照画素の画素データを読み出す読出動作１ＲＥ，１ＲＦ，１ＲＧが実行される。
【００５８】
第１入力バッファ１１１に関する読出動作１ＲＥでは、注目ブロック画像ＢＧ１を構成する画素の中から、参照画素の画素データが読み出されることになる。
【００５９】
そして、第３カラムレジスタ１１５に関する読出動作１ＲＦでは、ブロック画像ＢＧ０の右端の縦一列に含まれる画素の中から、参照画素の画素データが読み出されることになる。なお、図１２に示されるように、第３カラムレジスタ１１５に記憶されている、ブロック画像ＢＧ０の右端の単位列データは、注目ブロック画像ＢＧ１に隣接する境界領域ＲＫの画像データである。
【００６０】
また、ラインレジスタ１１７に関する読出動作１ＲＧでは、連続ラインデータを形成する画素の中から、参照画素の画素データが読み出されることになる。図１２に示されるように、ラインレジスタ１１７に記憶されている連続ラインデータは、注目ブロック画像ＢＧ１の上部において隣接するブロック画像ＢＧ０１の最下部の横一行分の領域ＲＬの画像データ（隣接ラインデータ）と、ブロック画像ＢＧ０１の左隣のブロック画像ＢＧ００における右下の画素ＰＤの画素データとで構成される。
【００６１】
ここで、上記各読出動作１ＲＥ，１ＲＦ，１ＲＧによって、参照画素として読出可能な画素を総合すると、読出可能な画素によって構成される領域は、図１２に示されるような、注目ブロック画像ＢＧ１を含んだ９×９画素の領域ＲＳとなる。すなわち、注目ブロック画像ＢＧ１に対するリサイズ処理では、注目ブロック画像ＢＧ１を拡張した領域（「拡張領域」または「参照領域」とも称する）ＲＳに含まれる画素の画素データを用いた補間演算が行われることになる。
【００６２】
各入力ブロック画像に対するリサイズ処理においても、注目ブロック画像ＢＧ１に対するリサイズ処理と同様、入力ブロック画像を拡張した参照領域に含まれる画素の画素データを用いた補間演算が行われ、リサイズ画素の画素データが取得される。なお、リサイズ処理の際の処理対象となる参照領域は、入力処理部１１によって行われる上記記憶処理によって設定されたものであるとも表現することができる。
【００６３】
次に、出力処理について説明する。図１３は、リサイズ部１０Ａの動作に関するタイムチャートである。図１４は、出力バッファ１３２，１３３へ記憶されるブロック画像を模式的に示す図である。
【００６４】
リサイズ画素の画素データは、順次、データ転送制御部１３１に出力される。そして、データ転送制御部１３１は、リサイズ画素の画素データを第１出力バッファ１３２または第２出力バッファ１３３に転送する。
【００６５】
例えば、図１３に示されるように、第２期間ＰＴ２において、注目ブロック画像ＢＧ１に関するリサイズ処理が終了すると、当該第２期間ＰＴ２において、第１出力バッファ１３２へのリサイズ画素の画素データの書込動作１ＷＨが実行される。図１４に示されるように、この書込動作１ＷＨにより、注目ブロック画像ＢＧ１に対するリサイズ処理で生成されたブロック画像ＵＧ１が、第１出力バッファ１３２に記憶されることになる。
【００６６】
データ転送制御部１３１による出力バッファ１３２，１３３へのデータ転送では、転送先の出力バッファにおいて、水平画素分のデータが記憶された時点で、転送先が切り替えられる。例えば、図１４に示されるように、ブロック画像ＢＧ３に対するリサイズ処理で生成されたブロック画像ＵＧ３の一部を第１出力バッファ１３２に記憶させると、第１出力バッファ１３２において水平画素分のデータが揃う場合、ブロック画像ＵＧ３の残りの部分の画像データは、第２出力バッファ１３３に記憶される。このように転送先が切り替えられる場合は、図１３に示されるように、第１出力バッファ１３２および第２出力バッファ１３３への書込動作３ＷＨが交互に実行されることになる。
【００６７】
また、データ転送制御部１３１は、水平画素分のデータが揃った出力バッファ１３２，１３３に対して、出力指示信号を送信する。これにより、出力指示信号を受けた、出力バッファ１３２，１３３からは、出力ブロック画像が読み出され、リサイズ部１０Ａの外部に出力されることになる。例えば、図１４に示されるように、第１出力バッファ１３２にブロック画像ＵＧ３の一部が記憶されると、第１出力バッファ１３２では水平画素分のデータが揃うことになるので、データ転送制御部１３１は、第１出力バッファ１３２に対して、出力指示信号を送信する。出力指示信号を受けた第１出力バッファ１３２では、記憶されたデータの読出動作ＦＲ（図１３）が実行され、当該データが出力ブロック画像ＴＧとして外部に出力される。
【００６８】
このように、出力処理部１３において実行される出力処理では、リサイズ画像における特定領域としての出力ブロック画像が、順次に出力されることになる。
【００６９】
［１−４．補間演算］
次に、演算部１２において行われる補間演算について説明する。本実施形態では、補間手法として、バイリニア補間手法を採用して補間演算を行う場合を例示する。図１５は、補間演算の概要を示す図であり、図１６は、補間演算のフローチャートである。図１７は、入力画像上の水平方向における、各画素ＧＰと、各リサイズ画素ＢＰとの位置関係を示す図である。図１８は、入力画像上の垂直方向における、各画素ＧＰと、各リサイズ画素ＢＰとの位置関係を示す図である。
【００７０】
図１５に示されるように、本実施形態の補間演算では、リサイズ画素を囲む入力画像上の４つの画素が参照画素ＲＰ１〜ＲＰ４として特定される。４つの参照画素ＲＰ１〜ＲＰ４が特定されると、水平方向に並んだ参照画素の組ごとに（詳細には、参照画素ＲＰ１，ＲＰ２の組と参照画素ＲＰ３，ＲＰ４の組）、水平補間が行われ、２つの水平補間画素ＢＨ１，ＢＨ２が算出される。そして、２つの水平補間画素ＢＨ１，ＢＨ２を用いた垂直補間がさらに行われ、リサイズ画素（補間画素）ＢＰの画素データが算出される。
【００７１】
より詳細には、図１６に示される各動作工程を経て、補間演算が実行される。
【００７２】
まず、ステップＳＰ１１では、座標制御部１２１によって、入力画像の大きさと、リサイズ画像の大きさとに基づいて、入力画像における各リサイズ画素ＢＰの座標が算出される。
【００７３】
具体的には、ステップＳＰ１１では、水平方向の補間間隔（水平補間間隔）「Ｐｈ」と垂直方向の補間間隔（垂直補間間隔）「Ｐｖ」とが、下記の式（１）、（２）を用いてそれぞれ算出される。
【００７４】
【数１】
0005639436.tif 000002
【００７５】
【数２】
0005639436.tif 000003
【００７６】
なお、式（１）における「ＧＮｈ」は、入力画像の水平画素数を表し、「ＲＮｈ」は、リサイズ画像の水平画素数を表している。また、式（２）における「ＧＮｖ」は、入力画像の垂直画素数を表し、「ＲＮｖ」は、リサイズ画像の垂直画素数を表している。
【００７７】
そして、入力画像における各リサイズ画素ＢＰの座標は、入力画像の左上の画素を原点として、補間間隔を累積加算することによって取得される。
【００７８】
詳細には、入力画像上において、水平方向（Ｘ方向）における入力画像の各画素ＧＰと、各リサイズ画素ＢＰとの位置関係は、図１７の様になるので、入力画像の左上の画素を原点とすると、＋Ｘ方向にｉ番目（ｉは自然数）のリサイズ画素ＢＰのＸ座標は、水平補間間隔「Ｐｈ」×ｉとなる。同様に、入力画像上において、垂直方向（Ｙ方向）における入力画像の各画素ＧＰと、各リサイズ画素ＢＰとの位置関係は、図１８の様になるので、入力画像の左上の画素を原点とすると、＋Ｙ方向にｊ番目（ｊは自然数）のリサイズ画素ＢＰのＹ座標は、垂直補間間隔「Ｐｖ」×ｊとなる。
【００７９】
すなわち、Ｘ方向にｉ番目、Ｙ方向にｊ番目のリサイズ画素ＢＰの座標は、（Ｐｈ×ｉ，Ｐｖ×ｊ）となる。
【００８０】
次のステップＳＰ１２では、リサイズ画素ＢＰの座標に基づいて、当該リサイズ画素の画素データを算出するために用いる参照画素ＲＰ１〜ＲＰ４の座標が特定される。（ｉ，ｊ）番目のリサイズ画素ＢＰを中心として見た場合、当該リサイズ画素ＢＰの左上の参照画素ＲＰ１の座標は、（［Ｐｈ×ｉ］，［Ｐｖ×ｊ］）となる。ここで、［］は、ガウス記号であり、例えば、［ｚ］は、実数ｚをこえない最大の整数を表している。
【００８１】
同様に、（ｉ，ｊ）番目のリサイズ画素ＢＰの右上の参照画素ＲＰ２の座標は、（［Ｐｈ×ｉ］＋１，［Ｐｖ×ｊ］）、左下の参照画素ＲＰ３の座標は、（［Ｐｈ×ｉ］，［Ｐｖ×ｊ］＋１）、右下の参照画素ＲＰ４の座標は、（［Ｐｈ×ｉ］＋１，［Ｐｖ×ｊ］＋１）となる。
【００８２】
ステップＳＰ１３では、補間演算に用いられる補間係数が算出される。具体的には、図１７に示されるように、Ｘ方向ｉ番目の画素ＢＰの画素データを算出する際に用いる水平補間係数「αｈ（ｉ）」、「βｈ（ｉ）」はそれぞれ、式（３）、（４）を用いて算出される。また、図１８に示されるように、Ｙ方向ｊ番目の画素ＢＰの画素データを算出する際に用いる垂直補間係数「αｖ（ｊ）」、「βｖ（ｊ）」はそれぞれ、式（５）、（６）を用いて算出される。なお、式（３）〜（６）中の［］はガウス記号を表している。
【００８３】
【数３】
0005639436.tif 000004
【００８４】
【数４】
0005639436.tif 000005
【００８５】
【数５】
0005639436.tif 000006
【００８６】
【数６】
0005639436.tif 000007
【００８７】
ステップＳＰ１４では、データ取得部１２２によって、参照画素ＲＰ１〜ＲＰ４の座標に基づいて各記憶部１１１〜１１６から参照画素ＲＰ１〜ＲＰ４の画素データが取得される。
【００８８】
ステップＳＰ１５では、補間演算部１２３によって、参照画素ＲＰ１〜ＲＰ４の画素データおよび水平補間係数「αｈ（ｉ）」、「βｈ（ｉ）」に基づいて、バイリニア補間手法を用いた水平補間が行われ、２つの水平補間画素ＢＨ１，ＢＨ２が算出される。
【００８９】
ステップＳＰ１６では、２つの水平補間画素ＢＨ１，ＢＨ２および垂直補間係数「αｖ（ｊ）」、「βｖ（ｊ）」に基づいて、バイリニア補間手法を用いた垂直補間が行われ、リサイズ画素ＢＰの画素データが算出される。
【００９０】
このように、本実施形態の補間演算では、図１６に示される各動作工程を経て、リサイズ画素ＢＰの画素データが算出される。
【００９１】
以上のように、リサイズ部１０は、第１記憶手段および第２記憶手段と、入力画像を分割して得られるブロック画像を順次に取得し、当該ブロック画像を注目ブロック画像として第１記憶手段に記憶させるとともに、注目ブロック画像に含まれる領域のうち、入力画像において未入力のブロック画像に隣接する領域の画像データを、境界領域の画像データとして第２記憶手段に記憶させる記憶制御部１１０と、第１記憶手段に記憶されている注目ブロック画像の画像データと、第２記憶手段に記憶されている境界領域の画像データとを用いて補間演算を行うことによって、注目ブロック画像の大きさを変更するリサイズ処理を実現する演算部１２とを備える。
【００９２】
このようなリサイズ部１０を有する画像処理装置１によれば、ブロック画像に対して順次にリサイズ処理を施すことができるので、画像全体を一旦別の外部メモリに格納してリサイズ処理を行う必要がない。このため、画像全体を一旦別の外部メモリに格納してリサイズ処理を行う場合に比べて、画像データの転送量の増大による処理速度の低下および消費電力の増加等の不具合を解消することが可能になる。
【００９３】
また、入力ブロック画像に対するリサイズ処理では、入力ブロック画像を拡張した領域に含まれる画素を、リサイズ処理に用いる参照画素として読み出すことができるので、各ブロック画像間の境界に存在する補間画素の画素データも精度良く算出することが可能になる。
【００９４】
＜２．第２実施形態＞
次に、本発明の第２実施形態について説明する。上記第１実施形態のリサイズ部１０Ａには、ブロック画像がいわゆるラスター順に入力されていたが、第２実施形態に係るリサイズ部１０には、ラスター順とは異なる順序でブロック画像が入力される。なお、リサイズ部１０Ｂの構成において、第１実施形態に係るリサイズ部１０Ａの構成と共通する部分については同じ符号を付して説明を省略する。図１９は、リサイズ部１０Ｂへのブロック画像の入力順序を示す図である。
【００９５】
［２−１．概要および構成］
第２実施形態のリサイズ部１０Ｂには、図１９において矢印で示される順序で、ブロック画像が入力される。この順序は、ＪＰＥＧ ＸＲ方式で画像符号化を行う画像符号化部へのブロック画像の入力順序と同様のものであり、「ＪＰＥＧ ＸＲ入力順序」とも称する。
【００９６】
なお、第１実施形態におけるブロック画像の入力順序は、ＪＰＥＧ方式で画像符号化を行う画像符号化部へのブロック画像の入力順序と同様のものである。リサイズ部１０Ａ，１０Ｂの前段に設けられる画像処理部は、画像符号化部への入力を想定してブロック画像を所定の順序で出力する。すなわち、リサイズ部１０Ａ，１０Ｂと画像符号化部とは、前段に設けられる画像処理部に、並列に接続された構成をとることができる。
【００９７】
次に、リサイズ部１０Ｂの構成について説明する。図２０は、リサイズ部１０Ｂの詳細構成を示す図である。
【００９８】
図２０に示されるように、リサイズ部１０Ｂは、入力処理部１１Ｂ、演算部１２、および出力処理部１３を備えている。演算部１２および出力処理部１３は、第１実施形態に係る構成と同様であるため、ここでの説明は省略する。
【００９９】
本実施形態のリサイズ部１０Ｂには、ＪＰＥＧ ＸＲ入力順序でブロック画像が順次に入力されるため、入力処理部１１Ｂの構成および当該入力処理部１１Ｂによる記憶処理が、第１実施形態のものとは異なる。以下では、入力処理部１１Ｂの構成、および記憶処理についてこの順序で説明する。
【０１００】
入力処理部１１Ｂ（図２０）は、記憶制御部１１０、第１入力バッファ１１１、第２入力バッファ１１２、第１カラムレジスタ１１３、第２カラムレジスタ１１４、ラインメモリ１１６、第１ラインレジスタ１５１、第２ラインレジスタ１５２、画素レジスタ１５３、およびセレクタ群１５４を備えている。
【０１０１】
第１ラインレジスタ１５１および第２ラインレジスタ１５２は、入力ブロック画像を構成する横一行分の各画素の画素データに加えて、さらに１画素の画素データを保存可能な容量を有している。例えば、入力ブロック画像の横の画素数が８である場合、ラインレジスタ１５１，１５２は、９画素分の画素データを保存可能な容量を有していることになる。
【０１０２】
画素レジスタ１５３は、１画素分の画素データを保存可能な容量を有している。
【０１０３】
セレクタ群１５４は、複数のセレクタによって構成されている。各セレクタは、記憶制御部１１０からの制御信号に基づいて、出力するデータを切り替える。
【０１０４】
記憶制御部１１０は、第１入力バッファ１１１および第２入力バッファ１１２に接続され、入力されたブロック画像の記憶先を選択的に制御する。具体的には、記憶制御部１１０は、入力ブロック画像を第１入力バッファ１１１または第２入力バッファ１１２に出力し、記憶させる機能を有している。
【０１０５】
また、記憶制御部１１０は、セレクタ群１５４に含まれる各セレクタに対して、制御信号を送信し、各セレクタの出力を制御する。
【０１０６】
このような入力処理部１１Ｂでは、記憶制御部１１０の制御により、入力ブロック画像の画像データを各記憶部に格納させる記憶処理が行われる。
【０１０７】
［２−２．リサイズ部１０Ｂの動作］
次に、リサイズ部１０Ｂの動作について説明する。図２１は、リサイズ部１０Ｂに入力される入力画像ＩＧ内のブロック画像ＢＧ１１〜ＢＧ１７を示す図である。図２２〜図３３は、第２実施形態に係るリサイズ部１０Ｂの動作を説明するための図である。
【０１０８】
リサイズ部１０Ｂで行われる記憶処理は、第１実施形態と同様、入力ブロック画像を拡張した参照領域を、リサイズ処理の処理対象とするために行われるが、記憶処理の処理内容が異なる。以下では、図２１に示される入力画像ＩＧ中の８つのブロック画像ＢＧ１１〜ＢＧ１８が、順次に入力される場合を想定して、記憶処理およびリサイズ処理に関するリサイズ部１０Ｂの動作について詳述する。
【０１０９】
まず、ブロック画像ＢＧ１１が入力されると、ブロック画像ＢＧ１１は、第１入力バッファ１１１に記憶される（図２２参照）。
【０１１０】
次のブロック画像ＢＧ１２が入力されると、当該ブロック画像ＢＧ１２は、第２入力バッファ１１２に記憶されるとともに、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１１に対してリサイズ処理が施される（図２３参照）。ブロック画像ＢＧ１１に対するリサイズ処理は、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１１と、第１カラムレジスタ１１３に記憶されている単位列データと、ラインメモリ１１６に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１１に対するリサイズ処理の処理対象となる参照領域は、図２３に示される砂地ハンチング領域となる。
【０１１１】
ブロック画像ＢＧ１１に対するリサイズ処理が終了すると、第１入力バッファ１１１に記憶されたブロック画像ＢＧ１１の右端の単位列データが、第１カラムレジスタ１１３に記憶され、ブロック画像ＢＧ１１の最下部の単位行データが第１ラインレジスタ１５１に右詰めで記憶される。また、第１入力バッファ１１１に記憶されたブロック画像ＢＧ１１の右下隅の画素の画素データが、第２ラインレジスタ１５２に左詰めで記憶される（図２４参照）。
【０１１２】
次のブロック画像ＢＧ１３が入力されると、当該ブロック画像ＢＧ１３は、第１入力バッファ１１１に記憶されるとともに、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１２に対してリサイズ処理が施される（図２５参照）。ブロック画像ＢＧ１２に対するリサイズ処理は、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１２と、第１カラムレジスタ１１３に記憶されている単位列データと、ラインメモリ１１６に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１２に対するリサイズ処理の処理対象となる参照領域は、図２５に示される砂地ハンチング領域となる。
【０１１３】
ブロック画像ＢＧ１２に対するリサイズ処理が終了すると、第２入力バッファ１１２に記憶されたブロック画像ＢＧ１２の右端の単位列データが、第１カラムレジスタ１１３に記憶され、ブロック画像ＢＧ１２の最下部の単位行データが第２ラインレジスタ１５２に右詰めで記憶される。また、第２入力バッファ１１２に記憶されたブロック画像ＢＧ１２の右下隅の画素の画素データが、画素レジスタ１５３に記憶される（図２６参照）。
【０１１４】
次のブロック画像ＢＧ１４が入力されると、当該ブロック画像ＢＧ１４は、第２入力バッファ１１２に記憶されるとともに、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１３に対してリサイズ処理が施される（図２７参照）。ブロック画像ＢＧ１３に対するリサイズ処理は、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１３と、第２カラムレジスタ１１４に記憶されている単位列データと、第１ラインレジスタ１５１に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１３に対するリサイズ処理の処理対象となる参照領域は、図２７に示される砂地ハンチング領域となる。
【０１１５】
ブロック画像ＢＧ１３に対するリサイズ処理が終了すると、第１入力バッファ１１１に記憶されたブロック画像ＢＧ１３の右端の単位列データが、第２カラムレジスタ１１４に記憶され、ブロック画像ＢＧ１３の最下部の単位行データがラインメモリ１１６に記憶される（図２８参照）。
【０１１６】
また、ブロック画像ＢＧ１３に対するリサイズ処理が終了したタイミングで、画素レジスタ１５３に記憶されているブロック画像ＢＧ１２の右下隅の画素の画素データが、第１ラインレジスタ１５１に左詰めで記憶される（図２８参照）。
【０１１７】
次のブロック画像ＢＧ１５が入力されると、当該ブロック画像ＢＧ１５は、第１入力バッファ１１１に記憶されるとともに、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１４に対してリサイズ処理が施される（図２９参照）。ブロック画像ＢＧ１４に対するリサイズ処理は、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１４と、第２カラムレジスタ１１４に記憶されている単位列データと、第２ラインレジスタ１５２に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１４に対するリサイズ処理の処理対象となる参照領域は、図２９に示される砂地ハンチング領域となる。
【０１１８】
ブロック画像ＢＧ１４に対するリサイズ処理が終了すると、第２入力バッファ１１２に記憶されたブロック画像ＢＧ１４の右端の単位列データが、第２カラムレジスタ１１４に記憶される。また、第２入力バッファ１１２に記憶されたブロック画像ＢＧ１４の最下部の単位行データのうち、右端の画素データを除いたデータが、ラインメモリ１１６に記憶される。また、第２入力バッファ１１２に記憶されたブロック画像ＢＧ１４の右下隅の画素の画素データが、画素レジスタ１５３に記憶される（図３０参照）。
【０１１９】
次のブロック画像ＢＧ１６が入力されると、当該ブロック画像ＢＧ１６は、第２入力バッファ１１２に記憶されるとともに、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１５に対してリサイズ処理が施される（図３１参照）。ブロック画像ＢＧ１５に対するリサイズ処理は、第１入力バッファ１１１に記憶されているブロック画像ＢＧ１５と、第１カラムレジスタ１１３に記憶されている単位列データと、ラインメモリ１１６に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１５に対するリサイズ処理の処理対象となる参照領域は、図３１に示される砂地ハンチング領域となる。
【０１２０】
ブロック画像ＢＧ１５に対するリサイズ処理が終了すると、第１入力バッファ１１１に記憶されたブロック画像ＢＧ１５の右端の単位列データが、第１カラムレジスタ１１３に記憶され、ブロック画像ＢＧ１５の最下部の単位行データが第１ラインレジスタ１５１に右詰めで記憶される。また、第１入力バッファ１１１に記憶されたブロック画像ＢＧ１５の右下隅の画素の画素データが、第２ラインレジスタ１５２に左詰めで記憶される（図３２参照）。
【０１２１】
また、ブロック画像ＢＧ１５に対するリサイズ処理が終了したタイミングで、画素レジスタ１５３に記憶されているブロック画像ＢＧ１４の右下隅の画素の画素データが、ラインメモリ１１６に記憶される（図３２参照）。
【０１２２】
次のブロック画像ＢＧ１７が入力されると、当該ブロック画像ＢＧ１７は、第１入力バッファ１１１に記憶されるとともに、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１６に対してリサイズ処理が施される（図３３参照）。ブロック画像ＢＧ１６に対するリサイズ処理は、第２入力バッファ１１２に記憶されているブロック画像ＢＧ１６と、第１カラムレジスタ１１３に記憶されている単位列データと、ラインメモリ１１６に記憶されている連続ラインデータとを参照して行われる。すなわち、ブロック画像ＢＧ１６に対するリサイズ処理の処理対象となる参照領域は、図３３に示される砂地ハンチング領域となる。
【０１２３】
図３３に示される、ブロック画像ＢＧ１７が入力された際の動作は、ブロック画像ＢＧ１３が入力された際の上記動作（図２５）と同様であり、図３３に示される動作以降は、図２６から図３３の各動作が繰り返し実行されることになる。
【０１２４】
以上のようなリサイズ部１０Ｂによれば、ＪＰＥＧ ＸＲ入力順序でブロック画像が入力された場合でも、リサイズ処理の際に、入力ブロック画像を拡張した参照領域に含まれる画素を、リサイズ処理に用いる参照画素として読み出すことができる。このため、各ブロック画像間の境界に存在する補間画素の画素データも精度良く算出することが可能になる。
【０１２５】
＜３．第３実施形態＞
次に、本発明の第３実施形態について説明する。第３実施形態に係るリサイズ部１０Ｃは、出力処理部１３の後段に、平均リサイザをさらに備えている。なお、リサイズ部１０Ｃの構成において、第１実施形態に係るリサイズ部１０Ａの構成と共通する部分については同じ符号を付して説明を省略する。図３４は、リサイズ部１０Ｃの詳細構成を示す図である。図３５は、平均リサイザ１４に入力される画像ＮＰと平均リサイザ１４から出力される画像ＤＰとを示す図である。図３６は、平均リサイザ１４の内部構成を示す図である。図３７は、リサイズ部１０Ｄの詳細構成を示す図である。
【０１２６】
図３４に示されるように、第３実施形態のリサイズ部１０Ｃは、出力処理部１３の後段に、平均リサイザ（平均縮小手段）１４をさらに備えている。
【０１２７】
平均リサイザ１４は、複数の画素で構成される矩形の画素領域に含まれる各画素の画素データの平均を、１画素分の画素データとする平均リサイズ処理（平均縮小処理）により、縮小画像を生成する機能を有している。
【０１２８】
具体的には、平均リサイザ１４が、２×２の画素で構成される画素領域に含まれる各画素の画素データの平均を、１画素分の画素データとする平均リサイズ処理を実行可能な場合、当該平均リサイザ１４は、入力された画像を１／２に縮小して出力する。例えば、図３５に示されるような、６×１６画素のブロック画像ＮＰが入力された場合、平均リサイザ１４は、ブロック画像ＮＰに対して、２×２画素の画素領域ＧＲごとに平均リサイズ処理を施し、３×８画素のブロック画像ＤＰを出力する。すなわち、入力されたブロック画像ＮＰにおける２×２画素の画素領域ＧＲ１からは、ブロック画像ＤＰの画素ＰＸ１の画素データが算出され、ブロック画像ＮＰにおける画素領域ＧＲ２からは、ブロック画像ＤＰの画素ＰＸ２の画素データが算出されることになる。
【０１２９】
このような平均リサイザ１４は、例えば、図３６のような構成を有している。
【０１３０】
図３６に示されるように、平均リサイザ１４は、４つのレジスタ１４１Ａ〜１４１Ｄと、第１セレクタ１４２と、ラインメモリ１４３と、画素遅延メモリ１４４と、第２セレクタ１４５と、加算器１４６と、シフト処理部１４７と、第３セレクタ１４８とを備えている。
【０１３１】
当該平均リサイザ１４には、出力処理部１３から出力されたブロック画像ＮＰが、画素ごとにラスター順で入力される。平均リサイザ１４に入力された画素データは、２つのレジスタ１４１Ａ，１４１Ｂに順に格納された後、第１セレクタ１４２に入力される。
【０１３２】
第１セレクタ１４２は、第１セレクタ１４２に入力される画素データの転送先を決定し、当該画素データをラインメモリ１４３または画素遅延メモリ１４４に転送する。具体的には、第１セレクタ１４２は、通常、第１セレクタ１４２に入力された画素データを画素遅延メモリ１４４に出力する。また、第１セレクタ１４２に入力された画素データが、ブロック画像ＮＰにおいて奇数ラインの画素データであって、かつブロック画像ＮＰにおける最下部ラインの画素データであった場合、第１セレクタ１４２は、例外的に画素データをラインメモリ１４３に出力する。
【０１３３】
ここで、ラインメモリ１１６は、平均リサイザ１４に入力されることになる全体画像の水平画素数を「Ｍ」とすると、Ｍ−２個分の画素の画素データを記憶可能な容量を有している。また、画素遅延メモリ１４４は、ブロック画像ＮＰの水平画素数を「Ｎ」とすると、Ｎ−２個分の画素の画素データを記憶可能な容量を有している。
【０１３４】
したがって、第１セレクタ１４２の上記動作により、画素遅延メモリ１４４には、Ｎ−２個の画素データが記憶されることになり、ラインメモリ１４３には、Ｍ−２個の画素データが記憶されることになる。
【０１３５】
第２セレクタ１４５は、ラインメモリ１４３および画素遅延メモリ１４４のうち、いずれか一方から画素データを取得して、レジスタ１４１Ｃに出力する。第２セレクタ１４５は、上記全体画像において、レジスタ１４１Ａに入力される画素の直上の画素の画素データをラインメモリ１４３または画素遅延メモリ１４４から取得して、レジスタ１４１Ｃに出力する。
【０１３６】
平均リサイザ１４では、レジスタ１４１Ａ〜１４１Ｄ、ラインメモリ１４３、および画素遅延メモリ１４４への画素データの格納が、平均リサイザ１４への画素データの入力に同期して行われる。このため、レジスタ１４１Ｃの画素データがレジスタ１４１Ｄに格納されたとき、４つのレジスタ１４１Ａ〜１４１Ｄには、２×２の画素領域に含まれる全画素の画素データが揃うことになる。
【０１３７】
加算器１４６は、各レジスタ１４１Ａ〜１４１Ｄから出力された画素データを加算して、シフト処理部１４７に出力する。
【０１３８】
シフト処理部１４７は、加算された画素データ（加算画素データ）に対して、２ビットのシフト処理を行うことにより、４つの画素データを平均した平均画素データを算出する。
【０１３９】
第３セレクタ１４８は、シフト処理部１４７から入力される平均画素データを、２×２の画素領域ごとに出力する。すなわち、第３セレクタ１４８は、全体画像における偶数ラインの画素が入力されているときに、２画素の入力に対して１回、平均画素データを出力する。
【０１４０】
以上のような平均リサイザ１４によれば、ブロック単位で入力される画像に対して、順次に平均リサイズ処理を施すことができるので、縮小画像を効率良く生成することが可能になる。
【０１４１】
また、上記の平均リサイザ１４のように、画素領域の画素数、換言すれば、一度の平均演算において演算処理の対象とする画素数を、２のべき乗個となるように構成すれば、平均の演算処理を加算とシフト処理（シフト演算）とで実現することができるので、平均の演算処理量を低減することが可能になる。なお、画素領域は、演算処理の対象となる画素によって構成される領域であることから、当該画素領域は、演算対象画素領域とも表現できる。
【０１４２】
また、図３７のように、リサイズ部１０Ｄ内において平均リサイザ１４を多段に接続することによれば、縮小処理の際の演算量を低減しつつ、複数の平均リサイズ画像を同時に生成することが可能になる。
【０１４３】
なお、本実施形態では、平均リサイザ１４を第１実施形態のリサイズ部１０Ａにおける出力処理部１３の後段に接続する態様を例示したが、第２実施形態のリサイズ部１０Ｂにおける出力処理部１３の後段に接続する態様であってもよい。
【０１４４】
＜４．変形例＞
以上、この発明の実施の形態について説明したが、この発明は、上記に説明した内容に限定されるものではない。
【０１４５】
例えば、リサイズ部内に補間演算部１２３および出力処理部１３を複数系統設けてもよい。図３８は、変形例に係るリサイズ部１０Ｅの構成を示す図である。
【０１４６】
具体的には、図３８に示されるように、リサイズ部１０Ｅは、補間演算部１２３および出力処理部１３を２系統有している。
【０１４７】
このようなリサイズ部１０Ｅにおいて、各系統間で補間画素の間隔を変更して補間演算を行い、リサイズ画像の生成を並列で行うことによれば、１枚の入力画像から一度に複数種類のリサイズ画像を生成することが可能になる。
【０１４８】
また、上記各実施形態では、リサイズ部１０に入力されるブロック画像の大きさが８×８画素である場合を例示したが、これに限定されず、入力ブロック画像の大きさは、４×４画素、１６×１６画素、および３２×３２画素等の任意サイズであってもよい。
【０１４９】
また、第１実施形態のリサイズ部１０Ａと第２実施形態のリサイズ部１０Ｂとは、共通の部材を共有化することにより、１つのリサイズ部として実現してもよい。このような当該１つのリサイズ部によれば、ブロック画像の入力順序が、ラスター順であっても、或いはＪＰＥＧ ＸＲ入力順序であっても動作可能となり、画像処理装置１内の画像符号化部の符号化手法に応じたリサイズ処理を実行することができる。
【０１５０】
また、上記第３実施形態の平均リサイザ１４の構成は、図３６に示される態様に限定されない。図３９は、平均リサイザ１４（１４Ａ）の内部構成の変形例を示す図である。
【０１５１】
具体的には、図３９に示されるように、平均リサイザ１４Ａは、３つのレジスタ１４１Ａ〜１４１Ｃと、第１加算器１６１と、第１セレクタ１４２と、ラインメモリ１６２と、画素遅延メモリ１６３と、第２セレクタ１４５と、第２加算器１６４と、シフト処理部１４７と、第３セレクタ１４８とを備えている。
【０１５２】
平均リサイザ１４Ａでは、水平方向に連続した画素の画素データを第１加算器１６１において加算した後で、水平方向に加算された画素データ（水平画素データ）がラインメモリ１６２または画素遅延メモリ１６３に記憶される。そして、第１加算器１６１から出力される水平画素データと、ラインメモリ１６２または画素遅延メモリ１６３によって所定画素分遅延された水平画素データとを、第２加算器１６２において垂直方向に加算することによって、２×２の演算対象画素領域に含まれる４つの画素に関する加算画素データが取得される。
【０１５３】
このような構成の平均リサイザ１４Ａでは、ラインメモリ１６２の容量をＭ／２−１個分の画素の画素データを記憶可能な容量とし、画素遅延メモリ１６３の容量をＮ／２−１個分の画素の画素データを記憶可能な容量とすることができ、第３実施形態の平均リサイザ１４に比べて、メモリの容量を低減させることができる。
【０１５４】
また、上記各第１実施形態および第２実施形態では、リサイズ部１０によるリサイズ処理として、画像を縮小する処理を例示していたが、これに限定されず、リサイズ処理として画像を拡大する処理を行ってもよい。拡大処理を行う場合は、補間画素の間隔（補間間隔）を狭めて補間演算を行えばよい。
【０１５５】
また、上記各実施形態では、補間手法として、バイリニア補間手法を採用して補間演算を行っていたが、これに限定されず、例えば、バイキュービック補間手法、ニアレストネイバー補間手法を採用することができる。なお、採用する補間手法に応じて、演算に必要となる参照画素が異なるため、第２記憶手段としての各記憶部に記憶させる画素は適宜変更されることになる。
【符号の説明】
【０１５６】
１  画像処理装置
１０，１０Ａ〜１０Ｅ  リサイズ部
１１，１１Ａ，１１Ｂ  入力処理部
１１０  記憶制御部
１２  演算部
１３  出力処理部
１４  平均リサイザ
ＢＧ，ＢＧ１  入力ブロック画像（注目ブロック画像）
【図１】
0005639436.tif 000008
【図２】
0005639436.tif 000009
【図３】
0005639436.tif 000010
【図４】
0005639436.tif 000011
【図５】
0005639436.tif 000012
【図６】
0005639436.tif 000013
【図７】
0005639436.tif 000014
【図８】
0005639436.tif 000015
【図９】
0005639436.tif 000016
【図１０】
0005639436.tif 000017
【図１１】
0005639436.tif 000018
【図１２】
0005639436.tif 000019
【図１３】
0005639436.tif 000020
【図１４】
0005639436.tif 000021
【図１５】
0005639436.tif 000022
【図１６】
0005639436.tif 000023
【図１７】
0005639436.tif 000024
【図１８】
0005639436.tif 000025
【図１９】
0005639436.tif 000026
【図２０】
0005639436.tif 000027
【図２１】
0005639436.tif 000028
【図２２】
0005639436.tif 000029
【図２３】
0005639436.tif 000030
【図２４】
0005639436.tif 000031
【図２５】
0005639436.tif 000032
【図２６】
0005639436.tif 000033
【図２７】
0005639436.tif 000034
【図２８】
0005639436.tif 000035
【図２９】
0005639436.tif 000036
【図３０】
0005639436.tif 000037
【図３１】
0005639436.tif 000038
【図３２】
0005639436.tif 000039
【図３３】
0005639436.tif 000040
【図３４】
0005639436.tif 000041
【図３５】
0005639436.tif 000042
【図３６】
0005639436.tif 000043
【図３７】
0005639436.tif 000044
【図３８】
0005639436.tif 000045
【図３９】
0005639436.tif 000046